无线网络TCP拥塞控制综述

慢启动阶段:当建立新的TCP连接时,拥塞窗13被初始化为一个数据包大小。发送端发送一个数据包,当接收到相应的ACK后,拥塞窗口的值从1增加到2,此时发送端一次可以发送两个数据包,当接收到两个数据包的ACK后,拥塞窗口增加到4。

拥塞避免阶段:TCPVeno采用基于区分丢包性质的拥塞控制策略:设定一个阈值B=3,设积压的数据报大小为N,则N=Actural木(R1Tr—BaseR—TT),其中Actural为发送端实际发送速率,R1Tr为网络当前往返时延,BaseRTr为网络测到的最小往返时延。若N<B,丢包为随机丢包,则每收到一个新ACK确认,发送端使拥塞窗13(cwnd)增加1,使拥塞窗口继续保持指数速度增加;当N>B时,则判定丢包为拥塞所致,则每收到2个新的ACK确认,使cwnd增加1。这样使cwnd保持较大的水平,保证了网络吞吐量的稳定。

快速重传和快速恢复:当收到3个或以上重复ACK确认,判断网络的状态。若N<B,丢包为随机丢包,将慢启动门限值(ssthresh)置为4卡cwnd/5,将cwnd=ssthresh+3,重传丢失的包;当N>B,判定连接处于拥塞状态,ssthresh置为cwnd/2,将cwnd=ssthresh+3,重传丢失的包。

2、分段机制

TCP分段连接方法的主要思想是为了区分误码和拥塞,把端到端的连接分为有线链路和无线链路两个部分。其中,著名的有M—TCP∞J。它的工作原理是:在无线基站上,M—TCP通过检测发往移动节点的数据包和ACK包的变化来判断无线链路的状态,并通过发送窗口大小为0的ACK包使得固定节点的TCP协议进入保持状态,从而使TCP连接不会由于无线链路的误码而中断。分段连接技术把原来的连接分成有线链路的TCP和无线链路的TCP两部分,并通过对无线链路的改进来提升整个链路的传输能力。但由于未能提高数据传输的成功传输率,同时传输层无法判断数据链路层丢包的原因,所以此技术所提出的解决方案很难在拥塞控制和TCP的传输性能之间找到很好的契合点。

3、链路层机制

基于链路层的方法就是通过局部的恢复无线发送错误的丢包,从而对上层屏蔽了链路层丢包。链路层大多采用两种技术,一是出错恢复,如FEC∞J,另一个就是通过ARQ来恢复丢失的数据包。FEC又叫前向纠错,就是发送端发送能纠正错误的编码,其优点是不需要反馈信道,实时性好。自动重传(ARQ)就是发送端在链路层上对传输出错或丢失的数据帧进行自动的重传,如果发送端在一定时间内没有收到接收端的确认信号,就重传该数据包,只有在收到确认之后才传送下一个数据包。基于链路层方法的主要好处是适合网络分层的思想,并且链路层的操作独立于更高层,同时不需要维持每个连接的状态,但是链路层方法的使用对TCP传输层有巨大的影响,比如由于在链路层对丢包进行恢复,所花费的时间要比TCP发送时间长,故经常引起TCP发送端重传,也就造成了带宽利用的降低和延时增加。

4、中间节点合作机制

图2Snoop机制

一72—

相关主题
相关文档
最新文档