浅谈TCP/IP四种计时器、慢启动、拥塞避免、快速重传、快速恢复

本文详细介绍了TCP/IP协议中的四种计时器:持续计时器、重传计时器、保活计时器和时间等待计时器,以及拥塞控制策略,包括慢启动、拥塞避免、快速重传和快速恢复。这些机制确保了TCP连接的稳定性和数据传输的可靠性,防止网络拥塞并处理长时间无响应的连接问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

持续计时器

假设一种场景:A给B发送数据,如果B告诉A自己的缓冲区已满,于是A停止发送数据,等待一段时间后,B的缓冲区出现了富余,于是给A发送报文告诉rwnd大小为400,但是这个报文不幸丢失了,于是就出现A等待B的通知,B等待A发送数据的死锁状态,为了处理这种问题,TCP引入了持续计时器,当A收到B的零窗口通知时,就启用该计时器,时间到则发送一个字节的探测报文,对方会在此时回应自身的接收窗口大小,如果仍然为0,则重置持续计时器,继续等待.

重传计时器

当TCP发送报文段时,就创建该特定报文段的重传计时器,可能发-生两种情况:

  • 若在计时器截止时间到之前收到了对此特定报文段的确认,则撤销此计时器.
  • 若收到了对此特定报文段的确认之前计时器截止期到,则重传此报文段,并将计时器复位.
保活计时器

保活计时器使用在某些实现中,用来防止在两个TCP之间的连接出现长期的空闲,假定客户端打开了服务器的连接,传送了一些数据,然后就保持静默,也许这个客户端出故障了,在这种情况下,这个连接将永远保持打开状态,要解决这种问题,在大多数的实现中都是使服务器设置保活计时器,每当服务器收到客户端的信息,就将计时器复位,超时通常设置为2小时,若服务器过了2小时还没有收到客户端的信息,就发送探测报文段,若发送10个探测报文段(每一个相隔75秒)还没有响应,就假定客户端除了故障,因而就终止该连接.

时间等待计时器

也就是上篇文章中所说的TCP四次挥手中,主动关闭方最后为什么要等待2MSL之后才能关闭连接?

慢启动

最初的TCP在连接建立成功后会向网络中发送大量的数据包,这样很容易导致网络中路由器缓存空间耗尽,从而发生拥塞。因此新建立的连接不能够一开始就大量发送数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值