2020-01-23 TCP 建立和斷開,言簡意賅

  • 2020 年 2 月 18 日
  • 筆記

https://juejin.im/post/5e26b199f265da3df245e5ed?utm_source=gold_browser_extension

資訊傳遞角度

從資訊傳遞角度看,資訊傳遞的標識是SYN,標識了開始建立連接並互換資訊,交換的資訊有:(1)client的ip和port,也就是通知服務端鏈接人的地址;(2)雙方互換了開始計數的sequence number,也就是ISN;(3)雙方協商了MSS;

image.png

狀態流轉角度

從連接的建立和結束過程的狀態流轉來看,連接的正常狀態如下圖;資訊交換之後,兩端的聯繫狀態會發生變化;打個比方,人和人之間了解了彼此的情況溝通交流之後,關係的狀態也會發生變化。

image.png

系統調用角度

最後看一下什麼操作導致了資訊的傳遞和狀態的變化,有些是用戶進程通過system call觸發的(綠色表示),有些是kernel按rfc對於tcp的規定實現的。

image.png

升華一下

連接的建立有(1)動作,動作使得(2)資訊的交換,資訊的交換使得(3)狀態發生改變。這裡」動作-資訊-狀態「也可以看作一種結構性分析的方法,這個方法可以來幫忙設計各種場景下的狀態機:什麼核心操作,核心資訊變化,應該是一種狀態。

希望這三個角度能加深您對TCP的認識哦:)

作者:maki 鏈接:https://juejin.im/post/5e26b199f265da3df245e5ed 來源:掘金 著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。