请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

TCP连接的释放

客户端 和 服务器端 经过3次握手建立TCP连接后,如果客户端 拔掉网线,这种情况下 服务器端是怎么得知要释放与客户端之间的TCP连接的?

正在回答

1回答

这就涉及到课程介绍到的“保活计时器”了。

保活计时器是TCP协议里面的第四个计时器,这个计时器也是课程内容中没有介绍的,因此需要注意这个定时器。

保活计时器,顾名思义,保活是这个计时器的主要目的,他是为了保活TCP连接而设计的,保活定时器可以防止TCP连接的两端出现长时期的空闲,当一方出现状态变化或故障时,另一方没有察觉的情况。

设想连接双方在建立连接后,只传输了一些数据,然后就都保持静默了,双方也都没有关闭连接(这种情况经常存在),如果这个时候其中一方已经故障,那么这个连接将会永远被打开,如果被连接的一方是服务端的话,那将浪费很多服务端的资源。

因此为了解决这个问题,服务端一般都会设置一个保活定时器,每次收到对方的数据则重置这个定时器,如果定时器超时,服务端则发送探测报文段,探测客户端是否还在线,如果没有收到响应的话,那么则认为客户端已经断开连接了,因此服务端也会终止这个连接。


0 回复 有任何疑惑可以回复我~
  • 提问者 移动客户端 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2022-05-05 21:18:05
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信