TCP重传机制——超时重传

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

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

1、数据包丢失

2、确认应答丢

深入研究:

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

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

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

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

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

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

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

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

相关推荐
生命因何探索5 分钟前
通俗易懂超详细讲解TCP/UDP
网络协议·tcp/ip·udp
匀泪5 分钟前
云原生(Keepalived概述)
网络
弹简特10 分钟前
【JavaSE-网络部分04】网络原理-传输层:UDP + TCP 可靠性三大核心机制(确认应答 / 超时重传 / 连接管理)
网络·tcp/ip·udp
运维闲章印时光14 分钟前
企业跨地域互联:GRE隧道部署与互通配置
linux·服务器·网络
HAPPY酷15 分钟前
C++ 高性能消息服务器实战:融合线程、异步与回调的三大核心设计
java·服务器·c++
xixixi7777715 分钟前
太赫兹通信和可见光通信的区别对比
网络·应用·信号·无线·通信·太赫兹通信·可见光通信
HAPPY酷18 分钟前
现代 C++ 并发服务器的核心模式
服务器·开发语言·c++
未来之窗软件服务18 分钟前
服务器运维(三十六)SSL会话缓存配置指南—东方仙盟
运维·服务器·缓存·ssl·服务器运维·仙盟创梦ide·东方仙盟
加农炮手Jinx21 分钟前
Flutter for OpenHarmony 实战:Injectable — 自动化依赖注入大师
网络·flutter·华为·harmonyos·鸿蒙
z10_1422 分钟前
住宅代理IP是什么?如何利用住宅代理做海外营销
网络·网络协议·tcp/ip