TCP建立连接与释放时管理的定时器

TCP在建立和释放连接时使用了多种定时器,包括重传计时器、坚持计时器、保活计时器和时间等待计时器。重传计时器用于在未收到ACK时进行数据包重传;坚持计时器防止因ACK丢失导致无法发送数据;保活计时器确保长时间无通信时能检测并关闭连接;时间等待计时器避免旧连接的残留数据影响新连接。此外,FIN_WAIT_2定时器允许在未收到对端FIN时主动关闭连接的一方最终释放连接。
摘要由CSDN通过智能技术生成

TCP建立连接与释放时管理的定时器如下:

重传计时器:Retransmission Timer
坚持计时器:Persistent Timer
保活计时器:Keeplive Timer
时间等待计时器(2MSL Timer):Time_Wait Timer
FIN_WAIT_2定时器(FIN_WAIT_2 timer)

重传计时器:Retransmission Timer
对于TCP发送出去的数据包, 需要等待对端发来ACK才能从内存里面删除, 那么如果对端没有发送ACK就会重传, 在发送数据的同时,在设置一个超时时间(一般设置成2个RTT的时间),如果在这个超时时间内, 没有收到ACK,那么就重传刚才发送的数据。

重传时间=2*RTT;

RTT(Round-Trip Time): 往返时延。表示从发送端发送数据开始,到发送端收到来自接收端的确认(接收端收到数据后便立即发送确认),总共经历的时延。

坚持计时器:Persistent Timer
比如最后一个ACK丢了, 那么发送端就永远认为接收端的窗口是0, 那么就发不了数据了。这个时候就需要坚持定时器,每隔一段时间(第一个探测包是在收到窗口为0的消息后的5秒)发送一个字节的探测包给服务端, 如果服务端窗口不是0了, 会在ack里面更新窗口大小的。

坚持计时器的截止期设置为重传时间的值,但若没有收到从接收端来的响应,则发送另一个探测报文段,并将坚持计时器的值加倍和并复位,发送端继续发送探测报文段,将坚持计时器的值加倍和复位,知道这个值增大到阈值为止&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值