我正在阅读一本教科书,其中描述了 TCP 如何管理重传超时间隔:
TimeoutInterval = EstimatedRTT + 4 *DevRTT
建议使用 1 秒的初始 TimeoutInterval 值。此外,当发生超时时,TimeoutInterval 的值会加倍以避免对即将被确认的后续段发生过早的超时。但是,一旦接收到一个段并更新了 EstimatedRTT,就会再次使用上面的公式计算 TimeoutInterval。
我不明白为什么 TimeoutInterval 需要加倍,因为每个数据包都有自己的计时器?