TCP連線的過程,也稱之為三次握手

2021-09-24 15:25:25 字數 653 閱讀 6254

tcp建立連線,也稱之為三次握手。那麼我現在來簡述一下這個tcp連線的過程

第一次握手,客戶端傳送syn給伺服器,客戶端的狀態為syn_send,伺服器接收到請求後,狀態從listen變成syn_rcvd。

第二次握手,伺服器傳送syn+ack給客戶端,客戶端接收到資料報。

第三次握手,客戶端傳送ack給伺服器,客戶端狀態進入established。伺服器接收到ack後,狀態從syn_rcvd變成established。

tcp斷開連線,也稱之為四次揮手

第一次揮手,客戶端與伺服器的狀態均處於established狀態。客戶端傳送fin給伺服器,客戶端的狀態變成fin_wait1,伺服器的狀態變成close_wait。

第二次揮手,伺服器傳送ack給客戶端。客戶端的狀態變成fin_wait2。

第三次揮手,伺服器傳送fin給客戶端,狀態變成last_ack,客戶端接收到請求後,狀態變成time_wait。

第四次揮手,客戶端傳送ack給伺服器,伺服器接收到包後,狀態從last_ack變成closed。客戶端這邊一般會持續4分鐘的time_wiat。然後closed。

還有一種特殊的情況。是客戶端和伺服器,同時發起斷開連線的情況。這裡就會出現closeing的狀態。過程就是,同時發起fin請求斷開連線。然後直接處於closeing狀態。同時斷開連線。

TCP建立連線的三次握手過程

tcp是網際網路中的傳輸層協議,使用三次握手協議建立連線,下面是tcp建立連線的全過程。上圖畫出了tcp建立連線的過程。假定主機a執行的是tcp客戶程式,b執行的是tcp伺服器程式。最初兩端的tcp程序都處於closed狀態。圖中在主機下面的是tcp程序所處的狀態。a是主動開啟連線,b是被動開啟連線...

詳解TCP建立連線三次握手過程

tcp建立連線的過程叫做握手,握手需要在客戶和伺服器之間交換三個tcp報文段。下圖是三報文握手建立tcp連線的過程 在這個例子中,a作為客戶端主動開啟連線,b作為服務端被動開啟連線。一開始,b的tcp伺服器程序先建立傳輸控制塊tcb,準備接受客戶程序的連線請求。然後伺服器程序就處於listen 收聽...

TCP建立連線過程(三次握手)

第一次 傳送方傳送syn的連線請求報文到接收方,請求建立連線 接收方收到之後開始為本次請求分配資源 第二次 接收方收到傳送方連線的請求後,傳送ack確認收到傳送方的連線請求,並向傳送方發起syn連線請求 傳送方收到接收方的ack請求,開始分配資源 第三次 傳送方收到接收方的連線請求後,也會傳送ack...