TCP IP三次握手總結

2021-09-21 11:30:12 字數 1565 閱讀 3384

一、

tcp連線的狀態:

listen                  

等待從任何遠端tcp 和埠的連線請求。

syn_sent                

傳送完乙個連線請求後等待乙個匹配的連線請求。

syn_received            

傳送連線請求並且接收到匹配的連線請求以後等待連線

請求確認。

established             

表示乙個開啟的連線,接收到的資料可以被投遞給使用者。連

接的資料傳輸階段的正常狀態。

fin_wait_1              

等待遠端tcp 的連線終止請求,或者等待之前傳送的連線終

止請求的確認。

fin_wait_2              

等待遠端tcp 的連線終止請求

close_wait              

等待本地使用者的連線終止請求

closing                 

等待遠端 tcp 的連線終止請求確認

last_ack                

等待先前傳送給遠端tcp 的連線終止請求的確認(包括它位元組

的連線終止請求的確認)

time_wait               

等待足夠的時間過去以確保遠端tcp 接收到它的連線終止請求

的確認closed                  

不在連線狀態(這是為方便描述假想的狀態,實際不存在)

在命令列用netstat –an  命令可以看到其所處的連線狀態

二、建立三次握手的過程

示意圖1.

首先客戶端傳送syn包到服務端,為第一次握手,這時候客戶端處於syn_sent等待狀態

2.服務端收到了客戶端傳送的sync包,然後傳送ack(確認)及自身的syn包進行回應(第二次握手),此時服務端處於syn_received(等待連線請求確認)狀態

3.客戶端收到了服務端的回應的ack,然後將本身設定為established狀態,表示已經準備就緒,同時發出ack應答(第三次握手)

4.服務端接收到了客戶端發出的ack應答,此處服務端也將自身設定為established狀態,從而實現雙方收發資料

三、斷開連線過程:

(1)客戶端將接收完資料後,將對服務端傳送fin資料報,同時客戶端將自身設定為fin_wait_1(等待遠端tcp 的連線終止請求,或者等待之前傳送的連線終止請求的確認。 )

狀態 (2)

服務端收到了來自客戶端的關閉請求,將自身設定為close_wait(等待本地使用者連線終止請求) 同時向客戶端傳送ack確認通知客戶端可以關閉連線,並且傳送確認訊息後,從原先的close_wait狀態變為last_ack(等待先前傳送給遠端tcp 的連線終止請求的確認)狀態,從而等待客戶端應答後由本地使用者進行關閉操作

(3)客戶端收到伺服器的應答後,將自身設定為fin_wite_2狀態,等待接收伺服器的fin關閉請求,當收到來自服務端的fin時將自身設定為time_wite_2狀態,同時向服務端傳送ack確認關閉連線

此時,連線正常關閉

TCP IP 三次握手

1.首先客戶端通過向伺服器端傳送乙個syn來建立乙個 主動開啟,作為三路握手的一部分。同步位為1 2.然後伺服器端應當為乙個合法的syn回送乙個 syn ack。同步位和確認位都為1 3.最後,客戶端再傳送乙個ack。這樣就完成了三 路握手,並進入了連線建立狀態。確認位位1 ftp服務之前首先需要t...

TCP IP三次握手

tcp是主機對主機層的傳輸控制協議,提供可靠的連線服務,採用三次握手確認建立乙個連線 位碼即tcp標誌位,有6種標示 syn synchronous建立聯機 ack acknowledgement 確認 psh push傳送 fin finish結束 rst reset重置 urg urgent緊急...

tcp ip 三次握手

tcp transmission control protocol 傳輸控制協議 tcp是主機對主機層的傳輸控制協議,提供可靠的連線服務,採用三次握手確認建立乙個連線 位碼即tcp標誌位,有6種標示 syn synchronous建立聯機 ack acknowledgement 確認 psh pus...