使用tcp協議進行通訊的雙方必須先建立連線,然後才能開始傳輸資料。為了確保連線雙方可靠性,在雙方建立連線時,tcp協議採用了三次握手策略。如圖:
客戶端傳送帶有syn標誌的連線請求報文段,然後進入syn_send狀態,等待服務端的確認。
服務端接收到客戶端的syn報文段後,需要傳送ack資訊對這個syn報文段進行確認。同時,還要傳送自己的syn請求資訊。服務端會將上述的資訊放到乙個報文段(syn + ack報文段)中,一併傳送給客戶端,此時服務端將會進行syn_recv狀態。
客戶端接收到服務端的syn+ack報文段後,會向服務端傳送ack確認報文段,這個報文段傳送完畢後,客戶端和服務端都進入established狀態,完成tcp三次握手。這三次握手就好像是互相測試傳送和接收一樣,
第一次握手,客戶端傳送,伺服器端接收
第二次握手,伺服器端傳送,客戶端接收
第三次握手,客戶端傳送,伺服器端接收
客戶端視角:第一次傳送,等到伺服器端 接收,傳送回來,知道了,我(客戶端)的傳送,以及伺服器端的 傳送 和 接收 都是成功的。第二次傳送,為了告訴我(客戶端)的接收是成功的。
伺服器端視角:
第一次接收,得知客戶端傳送是成功的,然後我(伺服器端)再傳送給客戶端,第二次接收,得知我(伺服器端)的傳送是成功的
當它們統一知道 對方的 傳送與接收是好的後,就可以進行資料傳輸了!
傳輸層TCP協議三次握手詳解
在tcp層,有個flags欄位,這個欄位有以下幾個標識 syn,fin,ack,psh,rst,urg.其中,對於我們日常的分析有用的就是前面的五個字段。它們的含義是 syn表示建立連線,fin表示關閉連線,ack表示響應,psh表示有 data資料傳輸,rst表示連線重置。其中,ack是可能與sy...
tcp三次握手 TCP 三次握手總結
tcp特點概述 tcp segment structure 段結構 step2 server host receives syn,replie with syn ack segment 答覆syn ack報文段 step3 client receives synack,replies with ac...
TCP傳輸的建立(三次握手)
摘自 深入理解計算機網路 王達著 機械工業出版社 1.ipv4資料報頭部格式 2.ipv6資料報頭部格式 3.ipv4資料報的封裝與解封裝 4.ipv4資料報的分段與重組 5.arp協議報文格式及arp表 6.arp位址解析原理 7.icmp協議及報文格式 8.ipv6協議族的其它協議 9.tcp的...