一、状态转换图

二、过程说明
1、Client:我要断开连接啦!
2、Server:好的!稍等,我这还有一些数据需要发送给你,等完事我再断开连接哈。
……(server 向 client 发送数据)
3、Server:我发送完毕了,断开连接了啊!
4、Client:嗯嗯,好的!
三、原因
TCP/IP 属于全双工。当 Client 向 Server 断开连接,进行 2 次挥手之后,TCP/IP 允许 Server 将缓冲区中剩余数据发送至 Client 。等 Server 发送完毕之后在进行 剩余的 2 次挥手。
上述也解释了为什么三次握手时,Server 的 SYN 和 ACK 是同时发送的,而四次挥手时 Server 的 FIN 和 ACK 是分开的(第 2 和 3 次挥手)。因为 Server 要将剩余的数据发完。
(SAW:Game Over!)
本文详细解析了TCP协议中的四次挥手过程,包括客户端与服务器间的连接断开流程,解释了为何在此过程中存在四次交互,特别是Server如何在发送完剩余数据后才完成断开操作。
38万+

被折叠的 条评论
为什么被折叠?



