zoukankan      html  css  js  c++  java
  • 62、挥手为什么需要四次?

    第一种回答

    因为当服务端收到客户端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中ACK报文是用来 应答的,SYN报文是用来同步的。但是关闭连接时,当服务端收到FIN报文时,很可能并不会立即关闭 SOCKET,所以只能先回复一个ACK报文,告诉客户端,"你发的FIN报文我收到了"。只有等到我服务 端所有的报文都发送完了,我才能发送FIN报文,因此不能一起发送。故需要四次挥手。

    第二种回答

    任何一方都可以在数据传送结束后发出连接释放的通知,待对方确认后进入半关闭状态。当另一方也没 有数据再发送的时候,则发出连接释放通知,对方确认后就完全关闭了TCP连接。举个例子:A 和 B 打 电话,通话即将结束后,A 说“我没啥要说的了”,B回答“我知道了”,但是 B 可能还会有要说的话,A 不能要求 B 跟着自己的节奏结束通话,于是 B 可能又巴拉巴拉说了一通,最后 B 说“我说完了”,A 回答“知道了”,这样通话才算结束。

  • 相关阅读:
    python操作Redis详解
    python操作SQLAlchemy
    设计模式详解及Python实现
    计算机基础
    DRF内置过滤组件与排序组件结合使用
    LTE
    LTE
    LTE
    LTE
    LTE
  • 原文地址:https://www.cnblogs.com/crbhf/p/15121453.html
Copyright © 2011-2022 走看看