美文网首页
TCP的三次握手与四次挥手

TCP的三次握手与四次挥手

作者: xiaoguo16 | 来源:发表于2019-07-18 14:57 被阅读0次

众所周知,TCP是面向连接的、可靠的传输层的通信协议,它在建立连接以及断开连接时分别会发生三次握手和四次挥手的行为,以保证它的这种可靠性特征。

建立连接:三次握手

三次握手的过程如下:

  1. 客户端发送一个SYN (SEQ=x)报文给服务器;
  2. 服务器收到后,回应一个SYN (SEQ=y) + ACK (ACK=x+1)的报文;
  3. 客户端收到服务器的报文后,再回应一个ACK(ACK=y+1)的报文,即完成三次握手过程。
    TCP三次握手

三次握手完成后,客户端和服务器就能正常进行数据传输了。

断开连接:四次挥手

四次挥手的过程如下:

  1. 某一端想要关闭连接时,需要发送一个FIN分节给另一端,表示该端的数据发送已经完毕,可以关闭连接了。
  2. 另一端接收到关闭信号后,发送ACK报文确认已接收到关闭信息。
  3. 一段时间后,另一端也完成了数据发送后,将发送FIN给对端。
  4. 接收到FIN的原发送端会发送确认报文ACK,至此两端将关闭连接。
    TCP四次挥手
    四次挥手过程中,任何一端都可以执行主动关闭,但一般是客户端一方主动执行。
  • Q:为什么断开连接需要四次而不是三次?
    A: 因为断开连接时,被动方需要先发送确认报文,确认它已经收到了主动方发送的断开信息。这时,它可能还需要等待一段时间,等数据发送完毕,再发送FIN报文告知主动方它也已经发送完成,可以断开连接。因此ACKFIN不是同时发送的,需要多一次。

参考文献:
https://baike.baidu.com/item/TCP/33012?fr=aladdin#6_2
https://www.cnblogs.com/lms0755/p/9053119.html

相关文章

  • 2、tcpdump抓包分析三次握手和四次挥手

    TCP为什么需要三次握手、四次挥手 三次握手 三次握手 四次挥手 SYN flood攻击

  • TCP的3次握手&4次挥手

    详解 TCP 连接的“ 三次握手 ”与“ 四次挥手 ” 为什么“握手”是三次,“挥手”却要四次? 建立连接时,被动...

  • TCP连接的建立和终止

    目录(1)三次握手(2)四次挥手(3)TCP状态转换图(4)TCP连接三次握手+四次挥手+状态转换 一:三次握手 ...

  • TCP的三次握手和四次挥手

    参考资料:[1].【TCP】详解TCP 三次握手和四次挥手[2]. iOS:为什么TCP连接要三次握手,四次挥手[...

  • 不积跬步--TCP三次握手和四次挥手过程

    本文来至转载TCP三次握手和四次挥手过程 TCP三次握手和四次挥手过程 1、三次握手 (1)三次握手的详述 首先C...

  • TCP三次握手与四次挥手

    TCP的三次握手与四次挥手(详解+动图)TCP之三次握手四次挥手 UDP,在传送数据前不需要先建立连接,远地的主机...

  • 计算机网络

    TCP三次握手与四次挥手 UDP报文段结构 TCP报文段结构

  • tcp

    报文结构、三次握手、四次挥手 Tcp--三次握手,四次挥手[https://www.jianshu.com/p/a...

  • tcp三次握手四次挥手

    tcp三次握手四次挥手 TCP状态图 TCP状态时序图 tcp三次握手 流程图: TCP握手状态说明: TCP_S...

  • 梳理部分解答之网络基础

    网络基础 TCP三次握手四次挥手 TCP三次握手 所谓三次握手(Three-way Handshake),是指建立...

网友评论

      本文标题:TCP的三次握手与四次挥手

      本文链接:https://www.haomeiwen.com/subject/nmbklctx.html