TCP重传机制——超时重传

重传机制的其中一个方式,就是在发送数据时,设定一个定时器,当超过指定的时间后,没有收到对方的 ACK 确认应答报文,就会重发该数据,也就是我们常说的超时重传

TCP 会在以下两种情况发生超时重传:

1、数据包丢失

2、确认应答丢

深入研究:

超时时间应该设置为多少呢?

要知道超时时间应该设置为多少,我们需要了解一下RTT(Round-Trip Time 往返时延)。

RTT 指的是数据发送时刻到接收到确认的时刻的差值,也就是包的往返时间。

超时重传时间是以 RTO (Retransmission Timeout 超时重传时间)表示。

  • 当超时时间 RTO 较大时,重发就慢,丢了老半天才重发,没有效率,性能差;
  • 当超时时间 RTO 较小时,会导致可能并没有丢就重发,于是重发的就快,会增加网络拥塞,导致更多的超时,更多的超时导致更多的重发。

精确的测量超时时间 RTO 的值是非常重要的,这可让我们的重传机制更高效。

根据上述的两种情况,我们可以得知,超时重传时间 RTO 的值应该略大于报文往返 RTT 的值

实际上「报文往返 RTT 的值」是经常变化的,因为我们的网络也是时常变化的。也就因为「报文往返 RTT 的值」 是经常波动变化的,所以「超时重传时间 RTO 的值」应该是一个动态变化的值

相关推荐
嵌入式×边缘AI:打怪升级日志5 小时前
[特殊字符] USBX 学习笔记(基于 Azure® RTOS)
网络
米羊1215 小时前
Linux 内核漏洞提权
网络·安全·web安全
运维行者_6 小时前
2026 技术升级,OpManager 新增 AI 网络拓扑与带宽预测功能
运维·网络·数据库·人工智能·安全·web安全·自动化
Ar呐7 小时前
软考网规篇之局域网——网关冗余技术VRRP
网络·计算机网络
代码的奴隶(艾伦·耶格尔)7 小时前
Nginx
java·服务器·nginx
头发还没掉光光7 小时前
HTTP协议从基础到实战全解析
linux·服务器·网络·c++·网络协议·http
Getgit7 小时前
Linux 下查看 DNS 配置信息的常用命令详解
linux·运维·服务器·面试·maven
漂洋过海的鱼儿7 小时前
设计模式——EIT构型(三)
java·网络·设计模式
数通工程师8 小时前
企业级硬件防火墙基础配置实战:从初始化到规则上线全流程
运维·网络·网络协议·tcp/ip·华为
血色橄榄枝8 小时前
03 基于Flutter集成网络请求On OpenHarmony
网络·flutter