91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

TCP/IP中MSL詳解

發布時間:2020-07-19 07:42:10 來源:網絡 閱讀:24961 作者:小楊楊雪松 欄目:編程語言

       MSL是Maximum Segment Lifetime的英文縮寫,可譯為“最長報文段壽命”,它是任何報文在網絡上存在的最長的最長時間,超過這個時間報文將被丟棄。我們都知道IP頭部中有個TTL字段,TTL是time to live的縮寫,可譯為“生存時間”,這個生存時間是由源主機設置設置初始值但不是但不是存在的具體時間,而是一個IP數據報可以經過的最大路由數,每經過一個路由器,它的值就減1,當此值為0則數據報被丟棄,同時發送ICMP報文通知源主機。RFC793中規定MSL為2分鐘,但這完全是從工程上來考慮,對于現在的網絡,MSL=2分鐘可能太長了一些。因此TCP允許不同的實現可根據具體情況使用更小的MSL值。TTL與MSL是有關系的但不是簡單的相等關系,MSL要大于TTL。

下面我們來看一張TCP連接釋放的圖:

 TCP/IP中MSL詳解

                        (此圖摘自謝希任計算機網絡第六版)

       從上圖我們注意到,在TCP連接釋放的過程中,從TIME_WAIT狀態到CLOSED狀態有一個超時設置,這個超時設置是2MSL(RFC793定義MSL為2分鐘),那么為什么在TIME_WAIT后必須等待2MSL時間呢?主要原因有兩點(在我的上一篇博客中有講,我們再來說下吧):

       1.為了保證客戶端(我們記為A端)發送的最后一個ACK報文段能夠到達服務器端。這個ACK報文段有可能丟失,因而使處在LASK—ACK端的服務器端(我們記為B端)收不到對已發送的FIN+ACK報文段。B會超時重傳這個FIN+ACK報文段,而A就能在2MSL時間內收到這個重傳的FIN+ACK報文段。接著A重傳一次確認,重新啟動2MSL計時器。最后,A和B都正常進入到CLOSED狀態。如果A在TIME_WAIT狀態不等待一段時間,而是在發送完ACK確認后立即釋放連接,那么就無法收到B重傳的FIN+ACK報文段,因而也不會再發送一次確認報文段,這樣,B就無法正常進入CLOSED狀態。

      2.我們都知道,假如A發送的第一個請求連接報文段丟失而未收到確認,A就會重傳一次連接請求,后來B收到了確認,建立了連接。數據傳輸完畢后,就釋放了連接。A共發送了兩個連接請求報文段,其中第一個丟失,第二個到達了B。假如現在A發送的第一個連接請求報文段沒有丟失,而是在某些網絡節點長時間都留了,以至于延誤到連接釋放后的某個時間才到達B,這本來是已失效的報文段,但B并不知道,就會又建立一次連接。而等待的這2MSL就是為了解決這個問題的,A在發送完最后一個確認報后,在經過時間2MSL,就可以使本鏈接持續時間內所產生的所有報文段都從網絡中消失,這樣就可以使下一個新的連接中不會出現這種舊的連接請求報文段。

       我們回到MSL,在2MSL時間內,該地址上的連接(客戶端地址,端口和服務器的端口地址)不能被使用,比如我們在建立一個連接后關閉連接然后迅速重啟連接,那么就會出現端口不可用的情況。













向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

昭觉县| 泉州市| 饶河县| 黄冈市| 合肥市| 张家口市| 昌乐县| 浑源县| 宕昌县| 岢岚县| 高雄市| 定安县| 当涂县| 盐边县| 汾西县| 芜湖县| 聂荣县| 乐山市| 海安县| 荣成市| 会宁县| 辽宁省| 大埔县| 重庆市| 丹凤县| 临漳县| 泌阳县| 资讯| 锡林浩特市| 临沧市| 疏附县| 水富县| 盐津县| 德安县| 谷城县| 越西县| 永平县| 阳谷县| 洛南县| 渑池县| 阜城县|