欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

tcp连接关闭

程序员文章站 2022-07-13 10:31:48
...
tcp连接主动关闭的一方会有三个状态,fin_wait1, fin_wait2, time_wait
发送fin后进入fin_wait1
收到ack后进入fin_wait2
收到被动一方的fin并发送完ack后进入time_wait
主要有两个原因
1。防止上一次连接中的包,迷路后重新出现,影响新连接
(经过2MSL,上一次连接中所有的重复包都会消失)
2。可靠的关闭TCP连接
在主动关闭方发送的最后一个 ack(fin) ,有可能丢失,这时被动方会重新发
fin, 如果这时主动方处于 CLOSED 状态 ,就会响应 rst 而不是 ack。所以
主动方要处于 TIME_WAIT 状态,而不能是 CLOSED 。

TIME_WAIT 并不会占用很大资源的,除非受到攻击。



被动关闭的一方不会有
相关标签: 网络 TCP TCP/IP