• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-162  評論-223  文章-30  trackbacks-0
               本文根據(jù)RFC793協(xié)議規(guī)范和BSD 4.4的實現(xiàn),總結(jié)了TCP分組丟失時的狀態(tài)變遷,如下圖所示:實線箭頭表示客戶端的狀態(tài)變遷,線段虛線箭頭表示服務端的狀態(tài)變遷,圓點虛線箭頭表示客戶端或服務端的狀態(tài)變遷;黑色文字表示正常時的行為,紅色文字表示分組丟失時的行為。

               這里假設重傳時分組依然會丟失,當在不同狀態(tài)(CLOSED除外)分組丟失后,最終會關閉套接字而回到CLOSED狀態(tài)。下面逐個分析各狀態(tài)時的情景。

            SYN_SENT
               連接階段第1次握手,客戶端發(fā)送的SYN分組丟失,因此超時收不到服務端的SYN+ACK而重傳SYN,嘗試幾次后放棄,關閉套接字。

            SYN_RCVD
               1)連接階段第2次握手,服務端響應的SYN+ACK分組丟失,因此超時收不到客戶端的ACK而重傳SYN+ACK,嘗試幾次后放棄,發(fā)送RST并關閉套接字。
               2)連接階段第3次握手,客戶端發(fā)送的ACK分組丟失,因此服務端超時收不到ACK而重傳SYN+ACK,嘗試幾次后放棄,發(fā)送RST并關閉套接字。
               3)同時打開第2次握手,本端響應的SYN+ACK分組丟失,因此對端超時收不到SYN+ACK而重傳SYN、嘗試幾次后放棄、發(fā)送RST并關閉套接字,而此時本端收到RST。

            ESTABLISHED
               1)連接階段第3次握手,客戶端發(fā)送ACK分組后,雖然丟失但會進入該狀態(tài)(因為ACK不需要確認),但此時服務端還處于SYN_RCVD狀態(tài),因為超時收不到客戶端的ACK而重傳SYN+ACK、嘗試幾次后放棄、發(fā)送RST并關閉套接字,而此時客戶端收到RST。
               2)數(shù)據(jù)傳輸階段,本端發(fā)送的Data分組丟失,因此超時收不到對數(shù)據(jù)的確認而重傳、嘗試幾次后放棄、發(fā)送RST并關閉套接字,而此時對端收到RST。

            FIN_WAIT_1
               1)關閉階段第1次握手,客戶端發(fā)送的FIN分組丟失,因此超時收不到服務端的ACK而重傳FIN,嘗試幾次后放棄,發(fā)送RST并關閉套接字。
               2)關閉階段第2次握手,服務端響應的ACK分組丟失,因此客戶端超時收不到ACK而重傳FIN,嘗試幾次后放棄,發(fā)送RST并關閉套接字。
             
            FIN_WAIT_2
               關閉階段第3次握手,服務端發(fā)送的FIN分組丟失,因此超時收不到客戶端的ACK而重傳FIN、嘗試幾次后放棄、發(fā)送RST并關閉套接字,而此時客戶端收到RST。
             
            CLOSING
               同時關閉第2次握手,本端發(fā)送的ACK分組丟失,導致對端超時收不到ACK而重傳FIN、嘗試幾次后放棄、發(fā)送RST并關閉套接字,而此時本端收到RST。

            TIME_WAIT
               關閉階段第4次握手,客戶端響應的ACK分組丟失,導致服務端超時收不到ACK而重傳FIN、嘗試幾次后放棄、發(fā)送RST并關閉套接字,而此時客戶端收到RST。

            CLOSE_WAIT
               關閉階段第2次握手,服務端響應的ACK分組丟失,導致客戶端超時收不到ACK而重傳FIN、嘗試幾次后放棄、發(fā)送RST并關閉套接字,而此時服務端收到RST。

            LAST_ACK
               關閉階段第3次握手,服務端發(fā)送的FIN分組丟失,導致超時收不到客戶端的ACK而重傳FIN、嘗試幾次后放棄、發(fā)送RST并關閉套接字。
            posted on 2015-10-05 00:44 春秋十二月 閱讀(3341) 評論(1)  編輯 收藏 引用 所屬分類: Network

            評論:
            # re: TCP分組丟失時的狀態(tài)變遷 2015-10-06 15:45 | Binky
            不錯  回復  更多評論
              
            日韩欧美亚洲国产精品字幕久久久| 人妻无码久久一区二区三区免费 | 亚洲国产高清精品线久久| 久久91精品综合国产首页| 欧美激情一区二区久久久| 97久久天天综合色天天综合色hd| 九九久久精品无码专区| 亚洲AV日韩精品久久久久久| 国产亚洲美女精品久久久| 日韩人妻无码精品久久免费一| 精品人妻伦一二三区久久| 国产成人精品白浆久久69| 久久无码国产专区精品| 97久久精品人人澡人人爽| 久久久久久午夜成人影院| 无码任你躁久久久久久老妇App| 四虎国产精品免费久久久| 久久久久国产精品嫩草影院| 久久精品国产99久久丝袜| 精品精品国产自在久久高清| 欧洲人妻丰满av无码久久不卡 | 久久人人超碰精品CAOPOREN| 国产精品福利一区二区久久| 97精品国产97久久久久久免费| 久久有码中文字幕| 国产伊人久久| 激情久久久久久久久久| 婷婷久久综合九色综合98| 国产精品一区二区久久不卡| 久久久无码精品亚洲日韩蜜臀浪潮| 久久久久久国产精品无码下载| 亚洲伊人久久综合影院| 亚洲精品tv久久久久久久久久| 人人狠狠综合久久亚洲| 久久久久一本毛久久久| 久久人人爽人人爽人人片AV东京热| 国产成人久久精品二区三区| 国产精品久久久久一区二区三区| 久久夜色tv网站| 久久亚洲国产成人影院网站| 色8激情欧美成人久久综合电|