51学通信技术论坛

 找回密码
 立即注册
搜索
查看: 2470|回复: 0
打印 上一主题 下一主题

读书笔记 (RFC 5681) [复制链接]

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

跳转到指定楼层
楼主
发表于 2014-3-8 22:01:41 |只看该作者 |倒序浏览
一键分享 一键分享
本帖最后由 kinghighland 于 2014-3-11 13:52 编辑

伪重传

一旦发生了超时(基于RFC2988定义), CWND(拥塞窗口)的值必须设置为不超过LW(丢包窗口)的值而不管IW(初始窗口)是多少,LW等于一个完整数据段的长度。 因此,在重新传送丢失的数据段后,TCP发送端使用SlowStart(慢启动)算法来递增窗口大小,从一个完整数据段长度增加到ssthresh(慢启动阈值)所指定的大小后,再由CA(拥塞避免)算法接手窗口的调整工作。
如同FF96和RFC3782所述,在发生超时后,基于慢启动的丢包恢复,可能造成伪重传然后触发重复应答(Dup.ACK)。不同的TCP实现对遇到重复应答的处理方法不一而同。本文档(RFC5681)并未说明应该如何处理,而是强调这一问题还需要额外的关注、试验和规范制定等工作。

快速重传与快速恢复 (Fast Retransmit/Fast Recovery)

• 当一个乱序数据段到达时,TCP接收端应当立即发送一个重复应答(Dup.ACK)。这个ACK的目的是通知发送端收到了乱序数据段以及接收端所期望的序列号(SEQ)。从发送方的视角来看,造成重复应答的网络问题包括:

–首先,丢包会造成重复应答。此时发生丢失的数据段之后的所有数据段都将会触发重复应答,直到丢包问题得到修正。
–其次,重复应答也可能由于网络对数据段进行了重新排序而导致(由于网络通常存在多条路径,这也是常见的事)。
–最后,重复应答还可能是由于网络对应答(ACK)或数据段的复制所造成的。

• 此外,TCP接收端在收到一个数据段可以填满或部分填入序列号的空隙(即乱序或丢包时还未进行应答的序列号区间)时,应当立即发送一个应答。这个操作能够及时通知接收端利用算法从丢包状态恢复正常,这些算法包括重传超时、快速重传、先进丢包恢复算法,将在4.3节中进行描述。



EasyAnalyzer(R)信令分析系统(23g+LTE)的平台产品进行了小型化,推出免费版EA-Lite, 可运行于笔记本电脑, 面向所有的工程师朋友发布. 有兴趣的朋友赶快加入EA-Lite 的QQ群(316429471)

站长邮箱|Archiver|51学通信 ( 粤ICP备11025688 )

GMT+8, 2024-11-26 04:32 , Processed in 0.024648 second(s), 14 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部