TCP三次握手与四次断开

TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。在TCP/IP协议族中,TCP负责在两个网络节点之间建立、管理和终止连接。为了确保数据的正确性和连接的可靠性,TCP使用“三次握手”来建立连接,以及“四次挥手”来终止连接。
 三次握手(建立连接)
1. 第一次握手(SYN):
    客户端发送一个SYN(同步序列编号)标志的TCP段到服务器,以便开始一个新的连接。
    这个段中包含客户端的初始序列号(ISN),用来标识客户端发送的数据包。
2. 第二次握手(SYN-ACK):
   服务器接收到客户端的SYN请求后,需要确认客户端的SYN,同时自己也发送一个SYN请求。
   服务器将确认应答(ACK)和同步请求(SYN)包含在同一个TCP段中,并将该段发送给客户端。
   - 这个段中同样包含服务器的初始序列号。
3. 第三次握手(ACK):
   客户端收到服务器的SYN-ACK响应后,发送一个确认包(ACK)作为应答。
   这个ACK包的确认序号是服务器的初始序列号加1。
    一旦服务器收到这个ACK包,就完成了三次握手,TCP连接建立成功,双方可以开始数据传输。
四次挥手(终止连接)
1. 第一次挥手(FIN):
   - 当连接的一端完成数据传输后,它会发送一个FIN(结束)标志的TCP段,表示它已经没有数据要发送了。
   - 这个FIN段包含发送端的序列号。
2. **第二次挥手(ACK)**:
   另一端接收到FIN请求后,发送一个ACK段作为应答,确认序号为收到序号加1。
   接收到FIN意味着这一方向上的数据传输已经完成。
3. 第三次挥手(FIN):
   - 接收到第一次FIN的端准备好关闭连接时,也发送一个FIN段给对方。
   - 此时,这个方向上的数据传输也完成了。
4. 第四次挥手(ACK):
   第一次发送FIN的端收到对方的FIN后,发送一个ACK段作为应答,确认序号为收到序号加1。
   这个ACK段发送完毕后,等待足够长的时间(2倍的最大段生命周期MSL),确保对方收到了ACK段,然后关闭连接。

通俗来讲通俗来讲三次握手就像开飞机是,飞行员向管制中心报告情况,飞行员,要先向管制中心呼叫并报出自己的编号,然后确认收到呼叫并请对方回答,然后对方开始回答的一个过程。然后4次断开,就像飞机将要降落,机长向地面说明自己将要降落,然后界面收到对方想要降落的需求,然后准备好停机场,给对方说可以降落,然后飞机降落的一个过程。

通过这样的三次握手和四次挥手过程,TCP协议能够确保网络中数据的可靠传输和连接的有序释放。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值