- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
TCP丢包检测技术分析
摘要 在有线网络环境中,分组丢失往往是由于网络拥塞造成的,因此传输控制协议(TCP)能够良好运行;然而当TCP运行在无线环境中,由于误码率高,信号衰落以及频繁的移动等特性造成丢包时,TCP拥塞窗口依旧盲目减半,导致其性能大幅度下降。本文首先阐述了无线环境中出现的拥塞丢包、随机丢包、突发丢包以及发生包的重新排序的原因,在此基础上,总结了处理这些问题的方法并对他们进行了评价,最后,分析了进一步的研究方向。
1、引言
传输控制协议(Transport Control Protocol,TCP)是目前Internet中广泛采用的一种传输协议,它为各个主机之间提供可靠、按序传输、端到端的数据包传输服务。TCP拥塞控制是其成功的重要因素。TCP拥塞控制的前提是网络拥塞为数据丢失的唯一原因,即只要终端检测出有数据丢失,均认为是网络拥塞所致,于是调用拥塞控制机制。
随着无线通信技术的发展,由于无线环境具有误码率高、信号衰落以及频繁的移动等特性,网络拥塞已不能再被看成是数据丢失的唯一原因,直接沿用现有的TCP技术势必会恶化TCP性能。这样,能否区分丢包自然成为改善无线环境下TCP性能的关键。为此,人们在这方面做了大量的研究和探索,提出了多种技术。但是针对特定丢包情况给出某一方法的文章还很少见。
2、无线网络环境中三种丢包情况分析
TCP拥塞控制机制的前提是网络拥塞为数据丢失的唯一原因,由于无线信道特性,在无线网络环境中大量的数据会因切换、信道衰落、干扰等而被丢弃,在这种情况下若TCP启动拥塞控制,会造成不必要的数据发送速率的降低,导致带宽利用率不高、系统时延加大、吞吐量下降。
2.1 随机丢包(Random Loss)
传统的TCP拥塞控制机制是为有线网络而设计的。由比特差错以及链路差错引起的数据丢失几乎可以忽略不计。但是在无线网络中,数据丢失是由信号衰落引起的。对基于IS-95 CDMA数据服务来说,有1%~2%是随机丢包。
2.2 突发丢包(Burst Loss)
突发丢包是在一段很短的时间内,导致许多数据连续的丢失。它是由信号衰落引起的。
以无线局域网为例,对一个移动主机来说,它的所有通信量(流入和流出)都是通过与它相连的基站路由出去的。当移动主机从一个基站的覆盖范围移出时,它需要在它所运动到的另一基站处登记它的信息。所有之后的通信都是通过新的基站来完成的。然而,当发生切换时,通过原基站递交给移动主机的一系列数据包将会丢失。因此,切换可以导致突发丢包事件的发生。
2.3 包的重新排序(Packet Reordering)
当接受端收到包的顺序与发送端发送顺序不同时,就要对包进行重新排序。同样是以无线局域网为例,包的重新排序与切换有关。当移动主机从一个基站切换到另一个基站时,发往移动主机或者是从移动主机发出的包通过新的基站路由信息。因为数据包在不同的路径上传输会经历不同的RTT,导致了数据包不能按序递交。