TCP三次握手四次

2021-08-29 04:08:39 字數 1472 閱讀 3911

tcp協議即為傳輸控制協議

所謂的「三次握手」即對每次傳送的資料量是怎樣跟蹤進行協商使資料段的傳送和接收同步,根據所接收到的資料量而確定的資料確認數及資料傳送、接收完畢後何時撤消聯絡,並建立虛連線。

首先需要知道tcp報文段以及其欄位含義

源埠號:傳送方程序埠號

目標埠號:目的埠對應程序

確認號(ack):對傳送端的回應訊息,x+1,x=對方序號

首部長度: tcp報頭的大小,預設20位元組

保留:沒有實際用處

urg:緊急位 0 or 1 1就是生效 0是不生效

ack:ack=1時,確認號生效, ack=0時,確認號不生效

psh:標誌位為1時,通知盡快將資料送至應用層

視窗大小:大小可變,流控機制可以根據視窗大小

校驗和:用來差錯控制,傳送端通過演算法算出乙個值,接收端也算出乙個值,值一樣則沒問題,值不同則丟棄該資料報

緊急指標:當urp=1時生效

seq:序列號

ack: 確認號

ack:確認位

syn:請求鏈結位

第一次握手:pc1向pc2傳送乙個資料報, 請求連線位(syn)為1,其餘全為0,隨機產生乙個序列號(seq)。

第二次握手:pc2回應pc1乙個資料報 ,確認號(ack)為對方序列號+1, ack=1(ack生效)。隨機產生乙個seq,控制位(syn)為1。這一步可以看成兩個包,乙個回應包,乙個請求鏈結包,一般講這兩步合併在一起。

第三次握手:pc1回應pc2乙個資料報,確認號(ack)為對方序列號+1,控制位為1.

通過抓包來分析三次握手的過程

tcp四次揮手(雙向斷開連線)

fin:斷開連線位

ack:確認位

第一次揮手:pc1向pc2傳送乙個斷開連線的資料報(斷開連線位和確認位都為1)

第二次揮手:pc2回應給pc1乙個資料報,確認號為1

第三次揮手:pc2向pc1傳送乙個斷開連線的資料報(斷開連線位和確認位都為1)

第四次揮手:pc1回應pc2乙個資料報(確認位為1)

如果不四次揮手的話,會有乙個半關閉的狀態。

TCP 三次握手 四次握手

http常見狀態碼 200 ok 伺服器成功處理了請求 301 302 moved permanently 重定向 response中應該包含乙個location url,說明資源現在所處的位置 304 not modified 未修改 客戶的快取資源是最新的,要客戶端使用快取 404 not fo...

TCP三次握手與四次握手

當我們從瀏覽器輸入乙個url,http的工作流程如下圖所示 dns解析流程請看dns網域名稱解析過程這篇文章 現在來講tcp三次握手 tcp是主機對主機層的傳輸控制協議,提供可靠的連線服務,採用三次握手確認建立乙個連線。1 序號 seq序號,佔32位,用來標識從tcp源端向目的端傳送的位元組流,發起...

tcp三次握手和四次握手

建立tcp需要三次握手才能建立,而斷開連線則需要四次握手。整個過程如下圖所示 先來看看如何建立連線的。首先client端傳送連線請求報文,server段接受連線後回覆ack報文,並為這次連線分配資源。client端接收到ack報文後也向server段發生ack報文,並分配資源,這樣tcp連線就建立了...