Netstat狀態分類

Netstat狀態分類

用netstat -an命令查看!再stat下面有一些英文,簡單說一下這些英文具體都代表什麼:
LISTEN:(Listening for a connection.)偵聽來自遠方的TCP端口的連接請求
SYN-SENT:(Active; sent SYN. Waiting for a matching connection request after having sent a connection request.)再發送連接請求後等待匹配的連接請求
SYN-RECEIVED:(Sent and received SYN. Waiting for a confirming connection request acknowledgment after having both received and sent connection requests.)再收到和發送一個連接請求後等待對方對連接請求的確認
ESTABLISHED:(Connection established.)代表一個打開的連接
FIN-WAIT-1:(Closed; sent FIN.)等待遠程TCP連接中斷請求,或先前的連接中斷請求的確認
FIN-WAIT-2:(Closed; FIN is acknowledged; awaiting FIN.)從遠程TCP等待連接中斷請求
CLOSE-WAIT:(Received FIN; waiting to receive CLOSE.)等待從本地用戶發來的連接中斷請求
CLOSING:(Closed; exchanged FIN; waiting for FIN.)等待遠程TCP對連接中斷的確認
LAST-ACK:(Received FIN and CLOSE; waiting for FIN ACK.)等待原來的發向遠程TCP的連接中斷請求的確認
TIME-WAIT:(In 2 MSL (twice the maximum segment length) quiet wait after close. )等待足夠的時間以確保遠程TCP接收到連接中斷請求的確認
CLOSED:(Connection is closed.)沒有任何連接狀態
TCP連接建立
首先要說明的是要明確TCP連接建立的過程需要3次握手,下面舉例說明各種狀態存在的時刻:
1. 首先在服務器A上開啓FTP服務,開始偵聽來自遠端TCP端口的連接請求,這個時候查看服務器A狀態爲:LISTENING
2. 在客戶端B上向A發送FTP連接請求,這個時候數據包同步位置1,這是TCP三次握手的第一步。在發送後沒收到確認時,在客戶端B上其狀態爲:SYN-SENT。此時客戶端B啓動連接定時器。如果在75秒內沒有收到應答,則放棄連接建立。
3. 在服務器A上收到從B上發送的SYN同步包後,確認,然後再向B發送SYN的同步包,此數據包同時將TCP標記中的同步位和確認位置1,它既對第一步中的客戶端同步數據包進行確認,表示願意與客戶端同步,同時再對客戶端主機進行同步請求,這是TCP連接的第一步。這個時候在服務器A上,狀態爲:SYN-RECEIVED。此時服務器A啓動連接定時器。如果在75秒內沒有收到應答,則放棄連接建立。
4. 在客戶端B上接收到從A上發過來的確認同步包後進行確認,此數據包中將TCP標記中的確認位置1,表示這是一個確認數據包,此時在客戶端B狀態轉換爲:ESTABLISHED
5. 服務器A接收到從B發過來的確認包後,狀態轉換爲:ESTABLISHED
此時TCP連接正式建立。
TCP連接關閉
6. 應用程序在在連接不需要的時候,通過客戶端B向服務器A發送的終止信息的FIN包後,客戶端B處於FIN-WAIT-1狀態。
7. 從服務器A接收到客戶端B發送的終止數據包,它告訴客戶端B已成功接收客戶端的上數據包,此時等待應用程序來關閉連接,此時服務器A進入CLOSE_WAIT狀態。
8. 客戶端B接收到帶有確認位的數據包後,對此進行確認,同意關閉TCP連接此時客戶端B轉移到FIN-WAIT-2狀態。當連接從FIN-WAIT-1狀態轉移到FIN-WAIT-2狀態時,將一個FIN-WAIT-2定時器設置爲10分鐘。
9. 服務器A在應用程序同意終止連接後,向客戶端B發送終止FIN包,此時服務器狀態轉爲LAST-ACT。
10. 客戶端B在接收到從服務器A發送的終止包後,同意終止連接,然後再向服務器端發送確認信息,此時客戶端B轉向TIME-WAIT狀態。當連接進入TIME-WAIT狀態時,該定時器被激活。
11. 服務端A在收到客戶端B的確認後,關閉連接,服務器A狀態轉向CLOSED。
12. 客戶端B在TIME-WAIT定時器超時時,與該連接相關的內核數據塊被刪除,連接終止,轉向CLOSED狀態。
此時TCP連接正式關閉。
備註
1. 一個由客戶端發起的關閉TCP連接的示意圖:
2. 連接終止請求對與建立連接的雙方是可以同時發出的,在發出終止請求後,雙方都進入FIN-WAIT-1狀態,隨着定時器的超時,雙方都進入CLOSING狀態,在這個定時器再次超時後,均轉入TIME-WAIT狀態,在TIME-WAIT的定時器超時後,雙方均放棄這次連接,連接轉爲CLOSE狀態。如圖示:
3. 參考內容:
http://www.freesoft.org/CIE/Course/Section4/11.htm
http://www.tcpipguide.com/free/t_TCPConnectionTermination-2.htm
http://www.itjj.net/tech/cisco/xieyi/tcpip/20080523/298191.html
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章