TCP/IP的三次握手與四次揮手詳解
TCP((Transmission Control Protocol)傳輸控制協議,是一個面向連線的協議。在運用此協議進行資料傳輸前都會進行連線的建立工作(三次握手);當資料傳輸完畢,連線的雙方都會通知對方要釋放此連線(四次揮手)。
認識TCP標誌位
tcp標誌位有6種標示:
SYN(synchronous建立聯機)
ACK(acknowledgement 確認)
PSH(push傳送)
FIN(finish結束)
RST(reset重置)
URG(urgent緊急)
圖解TCP與UDP的三次握手與四次揮手過程
三次握手過程:
第一次握手:host1傳送一個TCP標誌位SYN=1、ACK=0的資料包給host2,並隨機會產生一個Sequence number=3233.當host2接收到這個資料後,host2由SYN=1可知客戶端是想要建立連線;
第二次握手:host2要對客戶端的聯機請求進行確認,向host1傳送應答號ACK=1、SYN=1、
確認號Acknowledge number=3234,此值是host1的序列號加1,還會產生一個隨機的序列號Sequence number=36457,這樣就告訴host1可以進行連線;
第三次握手:host1收到資料後檢查Acknowledge number是否是3233+1的值,以及ACK的值是否為1,若為1,host1會傳送ACK=1、確認號碼Acknowledge number=36457,告訴host2,你的請求連線被確認,連線可以建立。
四次揮手過程:
第一次揮手:當傳輸的資料到達尾部時,host1向host2傳送FIN=1標誌位;可理解成,host1向host2說,我這邊的資料傳送完成了,我準備斷開了連線;
第二次揮手:因TCP的連線是全雙工的雙向連線,關閉也是要從兩邊關閉;當host2收到host1發來的FIN=1的標誌位後,host2不會立刻向host1傳送FIND=1的請求關閉資訊,而是先向host1傳送一個ACK=1的應答資訊,表示:你請求關閉的請求我已經收到,但我可能還有資料沒有完成傳送,你再等下,等我資料傳輸完成了我就告訴你;
第三次揮手:host2資料傳輸完成,向host1傳送FIN=1,host1收到請求關閉連線的請求後,host1就明白host2的資料已傳輸完成,現在可以斷開連線了,
第四次揮手:host1收到FIND=1後,host1還是怕由於網路不穩定的原因,怕host2不知道他要斷開連線,於是向host2傳送ACK=1確認資訊進行確認,把自己設定成TIME_WAIT狀態並啟動定時器,如果host2沒有收到ACK,host2端TCP的定時器到達後,會要求host1重新傳送ACK,當host2收到ACK後,host2就斷開連線;當host1等待2MLS(2倍報文最大生存時間)後,沒有收到host2的重傳請求後,他就知道host2已收到了ACK,所以host1此時才關閉自己的連線。這一點我覺得設計得非常巧妙!
整個過程host1端所經歷的狀態如下:
host2所經歷的過程如下:
總結:以前對TCP的三次握手與四次揮手沒有進行深入的理解,只是一知半解,現在參照網上的一些資料寫了此博文,對此知識點有了深刻認識。在TCP連線的建立與釋放的過程中,host1與host2並沒有嚴格的客戶端與伺服器之分,誰先發起請求,那就是客戶端。
相關文章
- TCP的三次握手與四次揮手詳解TCP
- 詳解TCP一:三次握手、四次揮手TCP
- TCP三次握手與四次揮手TCP
- TCP 三次握手 與 四次揮手TCP
- TCP的三次握手與四次揮手TCP
- TCP三次握手、四次揮手概念圖詳解TCP
- TCP 三次握手四次揮手TCP
- TCP三次握手四次揮手TCP
- TCP三次握手&四次揮手TCP
- 圖解TCP的三次握手和四次揮手圖解TCP
- TCP三次握手和四次揮手TCP
- TCP 、 UDP、三次握手、四次揮手TCPUDP
- TCP協議中的三次握手與四次揮手TCP協議
- 通俗易懂的TCP“三次握手”與“四次揮手”TCP
- 網路協議 - TCP/IP 三次握手和四次揮手協議TCP
- TCP三次握手及四次揮手理解TCP
- TCP三次握手四次揮手介紹TCP
- TCP三次握手和四次揮手理解TCP
- WireShark抓包分析以及對TCP/IP三次握手與四次揮手的分析TCP
- TCP的三次握手,四次揮手及常見面試題詳解TCP面試題
- 說說TCP的三次握手和四次揮手TCP
- TCP協議的三次握手和四次揮手TCP協議
- tcp三次握手、四次揮手過程解析TCP
- 簡述TCP三次握手和四次揮手TCP
- 計算機網路-tcp的三次握手與四次揮手計算機網路TCP
- 面試必問之 TCP/IP協議的三次握手 四次揮手面試TCP協議
- 看圖理解TCP的三次握手和四次揮手TCP
- Wireshark抓包分析TCP“三次握手,四次揮手”TCP
- TCP 三次握手和四次揮手圖解(有限狀態機)TCP圖解
- 詼諧的談談TCP三次握手和四次揮手TCP
- 談談TCP協議的三次握手和四次揮手TCP協議
- TCP-三次握手和四次揮手簡單理解TCP
- TCP協議特點和三次握手/四次揮手TCP協議
- TCP 的三次握手和四次揮手,瞭解泛洪攻擊麼TCP
- 簡單說說TCP三次握手、四次揮手機制TCP
- 【網路】TCP協議中三次握手和四次揮手TCP協議
- 跟著動畫學TCP三次握手和四次揮手動畫TCP
- TCP 的 三次握手 四次握手TCP
- TCP:三次握手和四次揮手,面試無死角答覆TCP面試