TCP三次握手四次断开

        TCP(Transmission Control Protocol)是一种传输层协议,用于在网络中可靠地传输数据。在 TCP 协议中,为了建立一个可靠的连接,客户端和服务器之间需要进行三次握手;而为了断开一个连接,客户端和服务器之间需要进行四次断开。

SYN(Synchronize):表示同步请求/应答。携带SYN标识的称为同步报文段

ACK(Acknowledgment):表示确认号是否有效。

FIN(Finish):表示传输结束。携带FIN标识的为结束报文段。

1. 三次握手:

        第一次握手:客户端向服务器发送一个 SYN(Synchronize)包,请求建立连接。这个包中包含了客户端的初始序列号。

        第二次握手:服务器收到客户端的 SYN 包后,会向客户端发送一个 SYN-ACK(Synchronize-Acknowledgment)包。这个包中包含了服务器的初始序列号和对客户端序列号的确认。

         第三次握手:客户端收到服务器的 SYN-ACK 包后,会向服务器发送一个 ACK(Acknowledgment)包。这个包中包含了客户端对服务器初始序列号的确认。

        通过这三次握手,客户端和服务器就可以确认对方的存在,并且协商出初始序列号,从而建立起一个可靠的 TCP 连接。

2. 四次断开:

        第一次断开:客户端发送一个 FIN(Finish)包,表示要关闭连接。这个包中包含了客户端的序列号。

        第二次断开:服务器收到客户端的 FIN 包后,会向客户端发送一个 ACK(Acknowledgment)包,表示已经收到了客户端的关闭请求。

        第三次断开:服务器发送一个 FIN 包,表示要关闭连接。这个包中包含了服务器的序列号。

        第四次断开:客户端收到服务器的 FIN 包后,会向服务器发送一个 ACK 包,表示已经收到了服务器的关闭请求。

        通过这四次断开,客户端和服务器就可以确认对方已经关闭了连接,从而释放相关的资源。

        不过需要注意的是,在实际的网络通信中,可能会出现一些异常情况,例如丢包、超时等。为了保证连接的可靠性,TCP 协议还引入了确认、重传、排序、流控(滑动窗口)等机制。

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值