<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                * 三次握手 [![](https://github.com/KeKe-Li/data-structures-questions/raw/master/src/images/75.jpg)](https://github.com/KeKe-Li/data-structures-questions/blob/master/src/images/75.jpg) 假設 A 為客戶端,B 為服務器端。 * 首先 B 處于 LISTEN(監聽)狀態,等待客戶的連接請求。 * A 向 B 發送連接請求報文段,`SYN=1`,`ACK=0`,選擇一個初始的序號`seq = x`。 * B 收到連接請求報文段,如果同意建立連接,則向 A 發送連接確認報文段,`SYN=1`,`ACK=1`,確認號為`x+1`,同時也選擇一個初始的序號`seq = y`。 * A 收到 B 的連接確認報文段后,還要向 B 發出確認,確認號為`ack = y+1`,序號為`seq = x+1`。 * A 的 TCP 通知上層應用進程,連接已經建立。 * B 收到 A 的確認后,連接建立。 * B 的 TCP 收到主機 A 的確認后,也通知其上層應用進程:TCP 連接已經建立。 為什么TCP連接需要三次握手,兩次不可以嗎,為什么? TCP是一個雙向通信協議,通信雙方都有能力發送信息,并接收響應。如果只是兩次握手, 至多只有連接發起方的起始序列號能被確認, 另一方選擇的序列號則得不到確認 * 四次揮手 [![](https://github.com/KeKe-Li/data-structures-questions/raw/master/src/images/76.jpg)](https://github.com/KeKe-Li/data-structures-questions/blob/master/src/images/76.jpg) 數據傳輸結束后,通信的雙方都可釋放連接。現在 A 的應用進程先向其 TCP 發出連接釋放報文段,并停止再發送數據,主動關閉 TCP連接。 * A 把連接釋放報文段首部的`FIN = 1`,其序號`seq = u`,等待 B 的確認。 * B 發出確認,確認號`ack = u+1`,而這個報文段自己的序號`seq = v`。(TCP 服務器進程通知高層應用進程)。 * 從 A 到 B 這個方向的連接就釋放了,TCP 連接處于半關閉狀態。A 不能向 B 發送數據;B 若發送數據,A 仍要接收。 * 當 B 不再需要連接時,發送連接釋放請求報文段,FIN=1。 * A 收到后發出確認,進入`TIME-WAIT`狀態,等待`2 MSL(2*2 = 4 mins)`時間后釋放連接。 * B 收到 A 的確認后釋放連接。 四次揮手的原因: 客戶端發送了 FIN 連接釋放報文之后,服務器收到了這個報文,
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看