面試詳解TCP三次握手和四次揮手

2021-10-03 11:10:08 字數 810 閱讀 3956

三次握手:

目的:特指對接的三次報文(為什麼要三次握手?就是讓雙方都能明確自己和對方的收、發能力是正常的,互相確認),並且能夠交換初始序號的一類過程。

如下圖:(三次握手是客戶端和服務端建立連線時)

首先需要明確幾個符號:

ack:即確認字元,是一種響應。

syn/fin:同步序列編號,是tcp/ip建立連線的握手訊號。fin顧名思義是結束、完成的意思,是結束連線的訊號標識。

seq:序號

三次握手1.客戶端發起連線(給服務端說:我要連線了,同時給他乙個ack=1,seq=a)2.服務端響應(收到你的連線資訊,給你乙個seq=b)3.客戶端--》服務端(收到你的回話,給你seq=b+1嗎,同時確認ack)

四次揮手:(四次揮手是tcp斷開連線(關閉連線)時)

四次揮手:1.客戶端給服務端(我要關閉了,給你乙個fin=1(關閉訊號))

2.服務端給客戶端(收到你的關閉資訊,ack=z+1,確認,但是在此時還有資料互動,所以服務端進入close_wait階段)

3.服務端給客戶端(給客戶端說:我也要關閉了,給客戶端乙個fin=1,seq=y)

4.客戶端給服務端(收到你要關閉的訊號,給你乙個確認資訊ack=y,seq=y+1),然後自己關閉,傳送到服務端讓服務端收到也關閉接受。

這樣的乙個過程,自己的理解,希望能幫到大家!

TCP三次握手和四次揮

一 tcp報文格式 在了解三次握手和四次揮手之前,首先要知道tcp報文內部包含了哪些東西。報文主要段的含義 序號 seq 用來標記資料段的順序,確保tcp傳輸有序。ack 確認 確認序號標誌,ack 1表示確認號字段有效,ack 0表示確認序號無效。syn 同步 連線請求序號標誌,用於建立連線。sy...

三次握手和四次揮手 TCP三次握手和四次揮手的理解

相比較於udp傳輸協議,tcp傳輸協議被認為是安全可靠的,這是由於tcp協議的三次握手和四次揮手保證了資料傳輸的安全性。tcp報文格式簡介 要了解tcp協議的三次握手和四次揮手,需要先了解在tcp協議中請求和響應的資料報報文格式。在報文中有幾個值得注意的字段 1 序號 seq序號,佔32位,用來標識...

結合socket詳解TCP三次握手四次揮手

tcp協議中的三次握手和四次揮手大家應該都至少聽說過了,本人一直覺得理論學習要結合 才能學習的更深刻,當知道東西是這樣,然後再知道為什麼是這樣的時候,領悟往往更加深刻,今天本人就結合socket程式設計中的api來解析一下tcp協議的三次握手和四次揮手過程。那麼tcp協議中的三次握手和四次揮手實際在...