zoukankan      html  css  js  c++  java
  • 简单易懂的TCP三次握手及四次挥手

    关于为什么需要三次握手,四次挥手的原因?
    第一次握手:
      Client什么都不能确认
      Server确认了对方发送正常
    第二次握手:
      Client确认:自己发送/接收正常,对方发送/接收正常
      Server确认:自己接收正常 ,对方发送正常
    第三次握手:
      Client确认:自己发送/接收正常, 对方发送/接收正常
      Server确认:自己发送/接收正常,对方发送/接收正常

    第二:因为TCP是全双工通信,所以双方都需要关闭;首先 客户端 向 服务器端发送关闭连接信息(这里客户端和服务器端都可以关闭吗,我这儿以客户端关闭举例)
    客户端:标志位[FIN、ACK]  客户端先发送关闭信息(客户端告诉服务器端,我要关闭连接了)
    服务器端:标志位[ACK]  服务器回应客户端的关闭信息(服务器端告诉客户端,我已经收到你的关闭连接信息了,你可以关闭了)
    服务器端:标志位[FIN、ACK] 服务器端发送关闭信息(服务器端告诉客户端,我也要关闭连接了)
    客户端:标志位[ACK]  客户端确认服务器的关闭信息(客户端告诉服务器端,我收到了你的关闭消息,你可以关闭了)

    总结四次挥手原因:就是TCP的全双工通信

    ****************************************************************************************

    三次握手详细解释:

      第一次握手:发送SYN数据包,序列号seq=x(默认为0)======seq=0

      第二次握手:发送SYN+ACK数据包,ACK=X+1=1,序列号seq=x(默认为0)======seq=0,ack=1

      第三次握手:发送ACK数据包,ACK=X+1=1========seq=1,ack=1

  • 相关阅读:
    mysql 15道语句练习题
    分组查询以及where和having的区别
    java初学复习
    Working with Excel Files in Python
    PIP常用命令
    pip install 提示代理连接失败原因及解决办法
    关于Encode in UTF-8 without BOM
    360极速浏览器Onetab插件存储位置
    使用夜神模拟器录制脚本
    微信小程序开发经验总结
  • 原文地址:https://www.cnblogs.com/wpy188/p/14831798.html
Copyright © 2011-2022 走看看