TCP中的计时器你都了解吗?

2020-03-22  本文已影响0人  时间煮菜

最近复习计算机网络,发现TCP协议中的几个计时器不是很了解,写一篇文章供自己查阅理解

TCP中有四种计时器(Timer),分别为:

  1. 重传计时器:Retransmission Timer
  2. 坚持计时器:Persistent Timer
  3. 保活计时器:Keeplive Timer
  4. 时间等待计时器:Timer_Wait Timer

重传计时器(Retransmission Timer)

TCP的可靠传输是通过带确认的重传机制实现的。在滑动窗口中,接受窗口会在连续收到的包的最后一个序列发送一个ACK,但是在发生网络拥塞的时候,数据包和ACK有可能丢失。TCP为了防止这种情况发生,规定在重传的“时间片”到了以后。如果还没有收到客户端的ACK,就重发此包,以免陷入无限长的等待,也就是“死锁”状态中

坚持计时器(Persistent Timer)

在滑动窗口技术中,如果接收端的接受窗口满了,就会告诉发送端接受窗口满了,停止发送,这个时候,发送端和接收端的窗口都是置为0,这个状态称为“零窗口”状态。直到接受窗口收到了非零窗口大小的通知,但是这个通知有可能会丢失,如果丢失了,发送端会认为自己发送了调整接受窗口的通知,就等待接收端发来确认,两者由会永远等待对方。

保活计时器(Keeplive Timer)

如果客户打开了到服务器的连接,传送了一些数据,然后就保持静默了。也许这个客户出故障了。在这种情况下,这个连接将永远的处理打开状态。这个时候就要用到保活计时器

时间等待计时器(Timer_Wait Timer)

时间等待计时器是在四次挥手的时候使用的。
在第四次挥手的时候,客户端还要等待2MSL(MSL=maxinum segment lifetime最长报文生存时间,2MSL就是两倍的MSL)才能真正的关闭连接。

TCP的四次挥手
上一篇 下一篇

猜你喜欢

热点阅读