当前位置: 首页 > news >正文

TCP 三次握手和四次挥手

TCP 三次握手详解

TCP(Transmission Control Protocol)的三次握手用于建立可靠的双向通信连接。过程如下:

  1. 第一次握手 (SYN):
    客户端向服务器发送一个带有 SYN 标志的包,表示客户端希望建立连接。此时,客户端进入 SYN-SENT 状态。SYN 包中还包含一个初始序列号(Sequence Number,通常称为 ISN),用于标识后续传输的数据包。

  2. 第二次握手 (SYN-ACK):
    服务器收到 SYN 包后,响应一个带有 SYNACK 标志的包,表示同意连接请求。这个包中包含服务器的初始序列号,并对客户端发送的序列号加 1,表示确认了客户端的 SYN 包。此时,服务器进入 SYN-RECEIVED 状态。

  3. 第三次握手 (ACK):
    客户端收到服务器的 SYN-ACK 包后,发送一个带有 ACK 标志的包,确认服务器的序列号加 1。此时,客户端进入 ESTABLISHED 状态,服务器在收到客户端的 ACK 包后,也进入 ESTABLISHED 状态,连接正式建立。

这三次握手确保了双方都可以互相发送和接收数据,同时确认各自的接收能力。

TCP 四次挥手详解

TCP 的四次挥手用于可靠地断开连接:

  1. 第一次挥手 (FIN):
    主动关闭连接的一方(通常是客户端)发送一个带有 FIN 标志的包,表示数据发送完毕,想要关闭连接。此时,客户端进入 FIN-WAIT-1 状态。

  2. 第二次挥手 (ACK):
    服务器收到 FIN 包后,确认收到,发送一个带有 ACK 标志的包,并返回确认号。此时,服务器进入 CLOSE-WAIT 状态,客户端收到此 ACK 后进入 FIN-WAIT-2 状态。此时,连接仍未完全关闭,服务器可能还有数据需要发送。

  3. 第三次挥手 (FIN):
    服务器完成数据发送后,发送一个带有 FIN 标志的包,表示它的数据也发送完毕,准备关闭连接。此时,服务器进入 LAST-ACK 状态。

  4. 第四次挥手 (ACK):
    客户端收到服务器的 FIN 包后,发送一个带有 ACK 标志的包,表示确认关闭连接。此时,客户端进入 TIME-WAIT 状态,等待一定时间(通常是 2 倍的报文最大生存时间,2MSL)以确保服务器收到了 ACK,然后再进入 CLOSED 状态。服务器在收到这个 ACK 包后,也进入 CLOSED 状态,连接彻底关闭。

为什么是三次握手而不是两次?

  • 三次握手的核心目的是确保双向的同步:
    • 第一次握手:客户端发送 SYN,告知服务器自己可以发送数据。
    • 第二次握手:服务器响应 SYN-ACK,告知客户端它收到了请求,并且它也可以发送数据。
    • 第三次握手:客户端确认收到服务器的响应,确保连接的双向通信是可靠的。

如果只有两次握手,服务器无法确认客户端是否收到了它的确认信息,可能导致不稳定的连接。

为什么关闭连接需要四次?

  • 关闭连接需要四次是因为 TCP 是全双工通信协议,双方需要分别关闭各自的发送通道。
  • 在发送 FIN 之后,接收方仍可以继续发送数据,直到它自己发送 FIN 包关闭发送通道,因此需要四次挥手来确保双向通信完全关闭。

http://www.mrgr.cn/news/23408.html

相关文章:

  • HalconDotNet的图像模式识别详解
  • Pycharm Remote Development 报错解决
  • 在IDEA中如何创建web项目?——不使用Archetype
  • Edge-Triggered模式:反应堆
  • 人人都想转行的AI产品经理到底是啥?看完这一篇你就知道了
  • 如何理解API与数据源?
  • 摩洛哥的预扣税及企业所得税
  • Find My皮套|苹果Find My技术与皮套结合,智能防丢,全球定位
  • 酷柚易汛ERP全新APP端上线啦!
  • 油耳朵耳屎怎么清理?可视耳勺使用方法
  • SmartNews如何赋能日本市场解锁购买力强劲广告营销新篇章
  • 价值流架构指南:构建业务创新与竞争优势的全面方法论
  • 教师节重磅福利!《动手学强化学习》作者亲自带你学强化学习
  • VUCA时代与传统企业数字化转型
  • 一分钟了解小程序的等保测评
  • 信息系统运行维护制度(Word原件)
  • 单例模式解析
  • 【SAP-ABAP】JAVA通过SAP JCO(SAP.JAR)链接SAP需要注意哪些事项(SAP ROUTER连接报错)
  • NVIDIA Triton Inference Server 部署 yolov5
  • 刘德华2024演唱会危险事故集锦