TCP IP TCP三次握手過程

2021-09-06 08:33:27 字數 2095 閱讀 8477

tcp是主機對主機層的傳輸控制協議,提供可靠的連線服務,採用三次握手確認建立乙個連線:

位碼即tcp標誌位,有6種標示:syn(synchronous建立聯機) ack(acknowledgement 確認) psh(push傳送) fin(finish結束) rst(reset重置) urg(urgent緊急)

sequence number(順序號碼) acknowledge number(確認號碼)

第一次握手:主機a傳送位碼為syn=1,隨機產生seq number=1234567的資料報到伺服器,主機b由syn=1知道,a要求建立聯機;

第二次握手:主機b收到請求後要確認聯機資訊,向a傳送ack number=(主機a的seq+1),syn=1,ack=1,隨機產生seq=7654321的包

第三次握手:主機a收到後檢查ack number是否正確,即第一次傳送的seq number+1,以及位碼ack是否為1,若正確,主機a會再傳送ack number=(主機b的seq+1),ack=1,主機b收到後確認seq值與ack=1則連線建立成功。

完成三次握手,主機a與主機b開始傳送資料。

在tcp/ip協議中,tcp協議提供可靠的連線服務,採用三次握手建立乙個連線。

第一次握手:建立連線時,客戶端傳送syn包(syn=j)到伺服器,並進入syn_send狀態,等待伺服器確認;

第二次握手:伺服器收到syn包,必須確認客戶的syn(ack=j+1),同時自己也傳送乙個syn包(syn=k),即syn+ack包,此時伺服器進入syn_recv狀態; 第三次握手:客戶端收到伺服器的syn+ack包,向伺服器傳送確認包ack(ack=k+1),此包傳送完畢,客戶端和伺服器進入established狀態,完成三次握手。 完成三次握手,客戶端與伺服器開始傳送資料.

例項:

ip 192.168.1.116.3337 > 192.168.1.123.7788: s 3626544836:3626544836

ip 192.168.1.123.7788 > 192.168.1.116.3337: s 1739326486:1739326486 ack 3626544837

ip 192.168.1.116.3337 > 192.168.1.123.7788: ack 1739326487,ack 1

第一次握手:192.168.1.116傳送位碼syn=1,隨機產生seq number=3626544836的資料報到192.168.1.123,192.168.1.123由syn=1知道192.168.1.116要求建立聯機;

第二次握手:192.168.1.123收到請求後要確認聯機資訊,向192.168.1.116傳送ack number=3626544837,syn=1,ack=1,隨機產生seq=1739326486的包;

第三次握手:192.168.1.116收到後檢查ack number是否正確,即第一次傳送的seq number+1,以及位碼ack是否為1,若正確,192.168.1.116會再傳送ack number=1739326487,ack=1,192.168.1.123收到後確認seq=seq+1,ack=1則連線建立成功。

**:

乙個三次握手的過程(圖1,圖2)

(圖1)

(圖2) 

第一次握手的標誌位(圖3)

我們可以看到標誌位裡面只有個同步位,也就是在做請求(syn)

(圖3)

第二次握手的標誌位(圖4)

我們可以看到標誌位裡面有個確認位和同步位,也就是在做應答(syn + ack)

(圖4)

第三次握手的標誌位(圖5)

我們可以看到標誌位裡面只有個確認位,也就是再做再次確認(ack)

(圖5)

乙個完整的三次握手也就是 請求---應答---再次確認

**:

TCP三次握手過程

幾個概念 ack 僅當ack 1時確認欄位才有效,當ack 0時確認字段無效,並且tcp規定,在連線建立後所有的傳送報文段都必須要把ack置為1 syn 同步序列號,用來發起乙個連線。當syn 1而ack 0時表明這是乙個請求報文段 若對方同意連線,則響應報文中syn 1,ack 1 tcp三次握手...

TCP三次握手過程

握手過程主要使用tcp協議的標誌flag syn和ack 傳送端 將乙個標有syn synchronize 的資料報傳送至接收端。接收端 接收到帶有syn的資料報後,返回乙個標有syn ack acknowledgement 的資料報 傳送端 收到後傳送標有ack的資料報,代表握手結束。如果握手過程...

wireshark 三次握手過程

第一次握手資料報,客戶端傳送乙個tcp,標誌位為syn,序列號為0,代表客戶端請求建立連線,並進入syn sent狀態,等待伺服器確認 syn 即是同步序列編號 synchronize sequence numbers 第二次握手的資料報,伺服器發回確認包,標誌位為 syn,ack.將確認序號 ac...