TCP重传机制——超时重传

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

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

1、数据包丢失

2、确认应答丢

深入研究:

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

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

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

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

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

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

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

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

相关推荐
bloglin999995 小时前
scp、rsync远程文件同步
linux·运维·服务器
克莱因3585 小时前
思科 Cisco 标准ACL
网络·路由
迦南的迦 亚索的索5 小时前
LINUX环境
linux·运维·服务器
yuanjj885 小时前
linux下调试域格CLM920 NC5等9x07平台模块 QMI拨号
linux·运维·服务器
IMPYLH5 小时前
Linux 的 printenv 命令
linux·运维·服务器·bash
SilentSamsara5 小时前
SSH 远程管理:密钥登录 + 隧道转发,一次性配置好
linux·运维·服务器·ubuntu·centos·ssh
资深数据库专家6 小时前
总账EBS 应用服务器1 的监控分析
java·网络·数据库
2501_945837436 小时前
OpenClaw:开启 “行动 AI“ 新纪元,从聊天机器人到自主智能体的范式革命
服务器
阿正的梦工坊6 小时前
拦截网络请求:一种更优雅的数据获取方式
网络·okhttp
阿巴~阿巴~7 小时前
Git版本控制完全指南:从入门到实战(简单版)
linux·服务器·git