TCP狀態變遷流程

2022-08-12 21:54:13 字數 826 閱讀 7931

主動建立tcp鏈結情況:

被動建立tcp鏈結情況

主動斷開鏈結的情況

被動斷開連線的情況

在time_wait階段需要停留2倍的msl,msl即maximum segment lifetime,表示任何報文被丟棄前在網路內的最長時間,tcp/ip詳解中額外註解了:rfc793指出msl為2min,然而實現中常用的值是30s,1min或2min。如此處理的原因是:當tcp之行乙個主動關閉,並發回最後乙個ack,該連線必須在time_wait狀態停留的時間為2被的msl,這樣可讓tcp再次傳送最後的ack,以防這個ack丟失(另一端超時並重發最後的fin)。

這種2被的msl等待的另外乙個結果是:在time_wait期間,連線所使用的socket(sip:sport:dip:dport)不能再被使用,只能在2msl之後才能被使用。但對於本地的ip:dport,可以設定socket的so_reuseadr選項繞過這個限制,這也是現在服務端之行監聽的socket通常會設定so_reuseaddr選項的原因。

處於time_wait階段時,該鏈結上任何遲到的報文都將被丟棄。

TCP狀態變遷

連線建立 連線建立分要經過三次握手過程 quote 1 客戶端傳送乙個syn段到指明客戶打算連線的伺服器的埠,報文段中要設定客戶端初始序號。2 伺服器發回包含伺服器的初始序號的syn報文段作為應答。同時,將確認序號設定為客戶的初始序號加1,並設定ack位標誌報文段為確認報文段。3 客戶端必須將確認序...

資料整理 TCP狀態變遷

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 資料整理 tcp狀態變遷 開始 傳說中的3次握手。1.closed 起始點。在超時或者連線關閉的時候進入此狀態。2.listen server 端在等待連線過來的時候所處的狀態,s...

TCP連線各狀態數量 以及TCP各狀態變遷流程

檢視linux系統中tcp連線情況 檢視系統tcp連線中各個狀態的連線數。netstat an awk tcp end 檢視和本機80埠建立連線並狀態在established的所有ip netstat an grep 80 grep esta awk awk begin sort uniq 輸出每個...