一、引言
在TCP中,通常有类似于心跳一样的定时器来保证传输的正常。对于每一个连接,TCP管理了4个不同的定时器。
- 定时重传;
- 持久定时器(persist);
- 保活定时器(keepalive);
- 2MSL定时器,用来测量处于TIME_WAIT状态的连接。
这里介绍三种。
二、定时重传定时器
TCP提供可靠的运输层。它使用的方法之一就是确认从另一端收到的数据。但数据和确认都有可能会丢失。TCP通过在发送时设置一个定时器来解决这种问题。如果当定时器溢出时还没有收到确认,它就重传该数据。 对每个连接而言,报文段中数据的起始序号也被记录下来。当收到一个包含这个序号的确认后,该定时器就被关闭。如果ACK到达时数据没有被重传,则被平滑的RTT和被平滑的均值偏差将基于这个新测量进行更新。