Karn算法
来源:互联网 发布:远程桌面默认端口号 编辑:程序博客网 时间:2024/04/30 19:20
Karn算法的提出是为了更好的计算RTO,设想一下情况:发送端发出一个报文段,并且设定的超时时间到了,还没有收到确认,于是重传报文段。经过了一段时间后,收到了报文段。现在的问题是:如何判定此确认报文段是对先发送的报文段的确认,还是对后来重传的报文段的确认?由于重传的报文段与原先的报文段完全一样,因此源主机在收到确认后就无法做出正确的判断,而正确的判断对确定平滑的往返时间(SRTT)的关系很大。
根据以上所述,Karn提出了一个算法:SRTT时,只要报文段重传了,就不采用其往返时间样本。
但是这有引起新的问题。设想这样的情况:报文段的时延突然增大了很多。因此在原来的重传时间内不会收到确认报文段。于是就重传报文段。但是根据Karn算法,不考虑重传的报文段的RTT样本。因此,超市重传时间就无法更新。
因此考虑对Karn算法进行修正。方法是:报文段每重传一次,就把超时重传时间RTO增大一些。典型的做法是取新的重传时间为2倍的就得重传时间。当不再发生报文段的重传时,才根据正常的计算方法计算RTO。
- Karn算法
- connect函数与karn算法
- tcp超时重传(RTO)之karn算法及其简要实验
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 算法
- 赌徒破产理论
- 面向对象建模与数据库建模两种分析设计方法的比较
- 小明 的 名字
- redhat 5.4 启动服务
- 如何改变Discuz!系列版本主题分类前缀名称颜色、字体大小 、加粗等问题解决方法
- Karn算法
- 解决方法:ERROR: ORA-01034:ORACLE not available ORA-27101:shared memory realm does not exit
- 深入讲解调整Oracle SGA大小的解决方法
- Mac访问PC的共享文件夹
- Objective-C编程语言iOS开发入门宝典 - 51CTO.com
- 修改NavigationController中backbutton
- 《编程之美》两链表相交及扩展详解
- HTML5 实现小车动画效果(Canvas/CSS3/JQuery)
- 《设计模式》教材前言