TCP三次握手

2022-03-25 13:28:38 字數 787 閱讀 6219

說明:a ,b處於關閉closed狀態,一般是客戶端主動發起連線請求的,因為客戶端的埠是隨機產生的,不固定,伺服器的埠是固定的,容易找到。伺服器端不能一直處於關閉狀態,伺服器要工作。要變成收聽狀態,這樣就可以隨時接受到來自客戶端的請求了。

(1) 當a要與b通訊時,會傳送syn=1(請求通訊位,1代表請求建立連線),seq=x(x 表示所發的資料報在客戶端a上所排的序號,在抓包時,這個序號一般是相對序號,例如當a與b第一次建立連線,那麼這個序號,一般為0),當a發完包後,會立即進入syn-sent 同步已傳送狀態。
(2)當b收到a發來的包後,會回覆確認收到,回覆syn=1(請求建立連線),ack=1(確認收到),seq=y(所收到的包在我自己機器上即b所排的序號),ack=x+1(這裡的x和a發來的x是一樣的,假如x=100,代表a傳送的是第100個包,b如果想告訴a我收到這個100包了,會回覆,我希望你下乙個發的包是101個,即代表已經收到了100包,所以這裡是ack=x+1,代表下乙個期望收到的包序號),b回覆後會立即進入syn-rcvd同步收到狀態。

(3)當a收到b發來的回覆後,會再次與b確認,傳送ack=1(確認收到),seq=x+1(這個包的序號是x+1,即b上次的回覆中請求下次要發的包),ack=y+1(b在上次回覆中有告訴a,你第一次發的包在我這的排序,所以這次a傳送時,直接計算了這次發的包在b那邊的排序),當a傳送完後,會進入estab-lished已建立連線狀態。

(4)b收到後也會進入estab-lished已建立連線狀態,然後雙方開始資料傳送。

例子:
細節於

tcp三次握手 TCP 三次握手總結

tcp特點概述 tcp segment structure 段結構 step2 server host receives syn,replie with syn ack segment 答覆syn ack報文段 step3 client receives synack,replies with ac...

TCP 三次握手

tcp 三次握手 tcp 連線是通過三次握手進行初始化的。三次握手的目的是同步連線雙方的序列號和確認號並交換 tcp 視窗大小資訊。以下步驟概述了通常情況下客戶端計算機聯絡伺服器計算機的過程 1.客戶端向伺服器傳送乙個syn置位的tcp報文,其中包含連線的初始序列號x和乙個視窗大小 表示客戶端上用來...

TCP三次握手

1.伺服器準備好接受外來連線。passive open 被動開啟 需呼叫 socket bind listen 函式來完成。2.客戶端通過呼叫 connect 主動開啟 active open 這使得客戶 tcp傳送乙個 syn 表示同步 分節,這個分節告訴伺服器,客戶端將在待建立的連線中傳送的資料...