Forword RTO(F-RTO)算法

简介

主要目的是为了检测由RTO偏小引起的伪RTO。主要算法是:

当重传定时器超时后,记这时候的snd.nxt为highmark。然后看收到的两个确认是否符合这个要求:ack > snd.una && ack < highmark,如果都符合,那么就宣布这是个伪RTO。

FRTO先重传第一个未被确认的包,并且在收到第一个确认后做如下判断:a. 如果这个ack确认了新的数据但是序列号小于highmark,那么再发2个新的数据包,等收到第二个确认再来判断。b.这个ack是个重复确认或者大于等于highmark,说明原来的包是真丢了,那么说明不是一个伪FRTO,还是进入到传统的RTO恢复当中去。对于收到的第二个确认,也是做和第一个确认相同的判断,只不过对符合要求的情况不需要在发包了,直接宣布是伪RTO。

实现

F-RTO is implemented (mainly) in fourfunctions:

 *   -tcp_use_frto() is used to determine if TCP is can use F-RTO

 *   -tcp_enter_frto() prepares TCP state on RTO if F-RTO is used, it is

 *    called when tcp_use_frto() showed green light

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值