tcp early retransmit 和 rack 中神奇的 1/4 minrtt

雨中跑步十公里,沿河看柳,发了一则朋友圈:

为什么采用 1/4 minrtt 作为重传和探测的延时,上图解释的已经很清楚了,主要还是怕乱序,关于乱序的度量,上图解释得非常清楚,乱序预期可在 0.5rtt/w(相邻两个报文乱序) 到 0.5rtt(满载管道首尾报文乱序) 之间被检测到。

不管是 early retrans 前,还是 rack 判定一个报文丢失前,都要等待至少 1/4 个 minrtt,以确认事实或在此期待时间内反悔。如果 1/4 minrtt 还不足以断定,即采取措施,对于 rack 而言将延展乱序窗口,直到 srtt。

但千万别把这当教条,在早期网络或者如今的 iot 网络上,乱序可以乱几百个 rtt,只在概率上,上述推理是足的。量 = 速率*时间,这是线性保证,但现实中要按统计规律算,为啥还是算术平均 1/4 minrtt,那是算术期望,这就是排队论的事了,不多说,周末愉快。

浙江温州皮鞋湿,下雨进水不会胖。

相关推荐
路由侠内网穿透1 小时前
本地部署 GPS 跟踪系统 Traccar 并实现外部访问
运维·服务器·网络·windows·tcp/ip
喵手4 小时前
玩转Java网络编程:基于Socket的服务器和客户端开发!
java·服务器·网络
徐子元竟然被占了!!6 小时前
实验-基本ACL
网络
ftpeak7 小时前
从零开始使用 axum-server 构建 HTTP/HTTPS 服务
网络·http·https·rust·web·web app
LabVIEW开发7 小时前
LabVIEW气体污染无线监测
网络·labview·labview知识·labview功能·labview程序
error:(7 小时前
【从零到公网】本地电脑部署服务并实现公网访问(IPv4/IPv6/DDNS 全攻略)
网络·智能路由器
酷飞飞8 小时前
Python网络与多任务编程:TCP/UDP实战指南
网络·python·tcp/ip
风中的微尘9 小时前
39.网络流入门
开发语言·网络·c++·算法
hsjkdhs9 小时前
网络编程之UDP广播与粘包问题
网络·网络协议·udp
yzx99101311 小时前
接口协议全解析:从HTTP到gRPC,如何选择适合你的通信方案?
网络·人工智能·网络协议·flask·pygame