一.TCP的三次握手
第一次握手:A發送鏈接請求.
SYN=1, ACK=0, seq=x(序號是隨機產生的,一般與時間有關),ack=0(因爲ACK爲0,所以這個時候ack取值沒有意義).
A進入 SYN_SEND 狀態。
第二次握手:B確認連接.
SYN=1,ACK=1,seq=y(序號是隨機產生的,一般與時間有關), ack=x+1
B進入 SYN_RECEIVED 狀態
第三次握手:A發送確認包
SYN=0,ACK=1,seq=x+1,ack=y+1
客戶端接收到服務器發送的SYN+ACK後,發出ACK確認包一段時間進入 ESTABLISHED 狀態。
服務器接收到客戶端ACK後,進入 ESTABLISHED 狀態。
當客戶端和服務器都進入ESTABLISHED狀態後,客戶端和服務器之間就可以開始雙向傳遞數據了
二.四次揮手的狀態
參考文章:
三.使用netstat命令可以觀察tcp的連接狀態