TCP狀態轉換的理解

2021-06-29 11:16:18 字數 837 閱讀 4122

虛線為伺服器狀態轉換

實現為客戶端狀態轉換

正常tcp連線中客戶端與服務端狀態轉換

伺服器端狀態

1. listen               服務啟動後處於監聽狀態

2. syn_recv        收到乙個連線請求,尚未確認

3. established   連線建立,正常資料傳輸狀態

4. close_wait    (被動關閉)收到對方關閉請求,已經關閉

5. last_ack         (被動關閉) 等待最後乙個關閉確認,並等待所有分組死掉

6. closed             關閉狀態,沒有連線活動或正在進行

客戶端狀態

1. syn_sent         已經發出連線請求,等待確認

2.established     連線建立,正常資料傳輸

3.fin_wait 1          (主動關閉)已經傳送關閉請求,等待確認

4.fin_wait 2          (主動關閉)收到對方關閉確認,等待對方關閉請求

5.time_wait           完成雙向關閉,等待所有分組死掉(msl)。可靠的終止連線,持續2×msl.

syn ack fin

需要知道的命令

netstat -ntpl  檢視埠使用情況

netcat 網路工具中的瑞士軍刀

對TCP狀態轉換的理解

listen 這個也是非常容易理解的乙個狀態,表示伺服器端的某個socket處於監聽狀態,可以接受連線了。syn rcvd 這個狀態表示接收到了syn報文,在正常情況下,這個狀態是伺服器端的socket在建立tcp連線時的三次握手會話過程中的乙個中間狀態,很短暫,基本上用netstat你是很難看到這...

TCP狀態轉換

tcp建立連線協議 三次握手 客戶端傳送乙個帶syn標誌的tcp報文到伺服器。這是三次握手過程中的報文1。伺服器端回應客戶端的,這是三次握手中的第2個報文,這個報文同時帶ack標誌和syn標誌。因此它表示對剛才客戶端syn報文的回應 同時又標誌syn給客戶端,詢問客戶端是否準備好進行資料通訊。客戶必...

TCP狀態轉換

tcp建立連線協議 三次握手 客戶端傳送乙個帶syn標誌的tcp報文到伺服器。這是三次握手過程中的報文1。伺服器端回應客戶端的,這是三次握手中的第2個報文,這個報文同時帶ack標誌和syn標誌。因此它表示對剛才客戶端syn報文的回應 同時又標誌syn給客戶端,詢問客戶端是否準備好進行資料通訊。客戶必...