TCP快速重传原理分析

TCP快速重传原理分析

ID:44416897

大小:80.00 KB

页数:8页

时间:2019-10-21

TCP快速重传原理分析_第1页
TCP快速重传原理分析_第2页
TCP快速重传原理分析_第3页
TCP快速重传原理分析_第4页
TCP快速重传原理分析_第5页
资源描述:

《TCP快速重传原理分析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、TCP快速重传与快速恢复原理分析标签:tcp算法网络lessstructurenetwork2012-02-0318:0719177人阅读评论(3)收藏举报三分类:TCP/IP(83)作者同类文章X版权声明:本文为博主原创文章,转载请注明岀处。超时重传是TCP协议保证数据可靠性的一个重要机制,其原理是在发送一个数据以后就开启一个计时器,在一定时间内如果没有得到发送数据报的ACK报文,那么就重新发送数据,肓到发送成功为止。这是数据包丢失的情况下给出的一种修补机制。一般来说,重传发纶在超吋之后,但是如果发送端接收到3个以上的重复ACK,就应该意

2、识到,数据丢了,需要重新传递。这个机制不需要等到重传定时器溢出,所以叫做快速重传,而快速重传以示,因为走的不是慢启动而是拥塞避免算法,所以这又叫做快速恢复算法。快速重传和快速恢复旨在:快速恢复丢失的数据包。没有快速重传和快速恢复,TCP将会使用定时器来要求传输暂停。在暂停这段时间内,没有新的数据包被发送。快速重传和快速恢复算法是在4.3BSD中捉岀的,并在RFC2001和RFC2581中描述。快速重传与快速恢复经历了几个阶段。1.TahoeTahoe算法是TCP的早期版木。它的核心思想是:让cwnd以指数增长方式迅速逼近可用信道容量,然后慢

3、慢接近均衡。Tahoe包括3个基本的拥塞控制算法:慢启动、拥塞避免、快速重传。我们可以看到,Tahoe不存在快速恢复算法。这也是它的不足Z处。在收到3个重复ACK或者在超时的情况下,Tahoe置cwnd为1,然后进入慢启动阶段。这一方而会引起网络的激烈震荡,另一方面人人降低了网络的利用率。也就是说,一旦发现掉包,那么cwnd就被打回原形。没有快速恢复算法,在恢复丢失数据包期间,不能发送新的数据包,这段吋间的吞吐量为0。而实际上如果利用这段时间来发送适量的新数据包,可以人人的提高丢包时的传输效率。这就是快速恢复名称的由來。1.RenoReno

4、与Tahoe相比,增加了快速恢复阶段,也就是说,完成快速重传后,进入了拥塞避免阶段而不是慢启动阶段。RenopreventsthecommunicationpathfromgoingemptyafterFastRetransmit.RenosenderusesadditionalincomingdupACKstoclocksubsequentoutgoingpackets.算法描述:stcpl:if(dupacks>=3){ssthresh=max(2,cwnd/2);cwnd=ssthrcsh+3*SMSS;}stcp2:重传丢失的分组s

5、tcp3:此后每收到一个重复的ACK确认时,cwnd++stcp4:当收到对新发送数据的ACK确认时,cwnd=ssthrcsh,这个ACK能够对那些在丢失的分组Z后,第一个重复ACKZ前发送的所有包进行确认。在快速恢复阶段,每收到重复的ACK,则cwnd加1;收到非重复ACK时,置cwnd=ssthresh,转入拥塞避免阶段;如果发生超时重传,则置ssthresh为当前cwnd的一半,cwnd=1,重新进入慢启动阶段。Reno快速恢复阶段退出条件:收到非重复ACKc2.NewRenoReno不能有效的处理多个分组从同—•数据窗口丢失,于是

6、有了NewRenOoNewReno修改了Reno的快速恢复算法,处理一个窗口屮的多个报文段同时丢失时出现的“部分确认”(PartialACKs,它在快速恢复阶段到达并且确认新数据,但它貝确认进入快速重传之前发送的一部分数据)。在这种情况下,Reno会退出快速恢复状态,等待定吋器溢出或者重复的确认ACK到达,但是NewReno并不退出快速恢复状态,而是:stcpl:重传紧接着那个部分ACKZ后的报文段,拥塞窗口等于其减去partialACK的部分。stcp2:对于得到确认的新数据,cwnd++stcp3:对于第一个或每一个PartialACK

7、,重传定时器复位。且每次都重置cwnd=原cwnd/2oNewReno算法屮有变录recover,其值为检测到丢包时的最人发送序列号。只有当recover之前的数据报都确认完后,才能推出快速恢复,进入拥塞避免阶段。当超时时,将发送的最大序列号保存在recover变量中,结束快速恢复过程。NewReno不支持SACK。4・SACKDuringFastRecovery,SACKmaintainsavariablecalledpipethatrepresentstheestimatednumberofpacketsoutstandinginthe

8、path.Thesenderonlysendsneworretransmitteddatawhentheestimatednumberofpacketsinthepathisle

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。