tcp 的四次挥手

本文详细解释了TCP协议中的四次挥手过程,涉及FIN和ACK数据包的交互,以及客户端和服务端在各个状态下的操作,以确保连接的正确关闭并避免旧数据包干扰。

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

TCP 通过四次挥手优雅的关闭连接

四次挥手也很好记,4/2 = 2 一遍两个,客户端发送2个请求,服务端发送2个请求。

在这个步骤我们也只需要记住两个单词,一个是 FIN 代表finish 标注的数据包,一个是ACK应答数据包

  1. 第一次挥手(FIN):

    • 客户端或应用发起关闭连接的请求,向服务器发送一个带有 FIN(Finish)标志的数据包。
    • 状态变化:发起关闭的一方进入 FIN-WAIT-1 状态,表示已经完成数据的发送。
    • 【简洁说法:客户端请求关闭连接,发送第一个带有结束标志的数据包】
  2. 第二次挥手(ACK):

    • 服务器接收到带有 FIN 标志的数据包后,向客户端发送一个确认(ACK)数据包,表示已经收到了关闭请求。
    • 服务器也可以在这个阶段继续发送数据。
    • 状态变化:服务器进入 CLOSE-WAIT 状态。
    • 【简洁说法:服务端收到客户端关闭连接的请求,回复一个确认数据包】
  3. 第三次挥手(FIN):

    • 服务器准备好关闭连接时,向客户端发送一个带有 FIN 标志的数据包,表示服务器已经完成数据的发送。
    • 状态变化:服务器进入 LAST-ACK 状态,等待客户端的最后一个 ACK。
    • 【简洁说法:服务端请
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我有一棵树

感谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值