一、概述
配圖不是我自己的,來源於網絡
二、理解
3次握手:
3次握手指的是TCP 建立連接 階段
1.Client–>Service SYN
2.Client<–Service SYN+ACK
3.Client–>Service ACK
4次握手:
4次握手指的是 TCP 斷開連接 階段
1.Client–>Service FIN
2.Client<–Service ACK
3.Client<–Service FIN
4.Client–>Service ACK
之所以連接只需要3次,而斷開需要4次.
最大的原因.個人認爲.是因爲 一方請求斷開連接的時候,另一方很可能還在傳輸數據
需要等另一方將數據傳輸完成了,然後將狀態 回執給請求斷開的一方 .才能真正安全斷開
三、深度理解
可能很多人會對 SYN 、ACK、FIN 比較好奇 ,我也一樣.
–>點擊我探索其中的奧祕吧
上面的文章介紹的很全,在下簡單給大家提及一下
SYN 、ACK、FIN 都屬於 TCP 協議中的 flag
SYN 表示建立連接
FIN 表示關閉連接
ACK 表示響應
四、注意
TCP協議, 建立 連接,只能由客戶端發起.
但是 斷開 連接,可以由任何一方發起,原理就是4次握手的原理