TCP協議中報文段詳解

2021-08-01 04:31:58 字數 1877 閱讀 3584

(一)tcp協議報文段格式詳解:

(1)源埠和目標埠號字段--------各佔2位元組,埠是傳輸層與應用層的服務連線口,傳輸層的分用和復用功能都要通過埠來實現(埠對應程序);

(2)序號字段--------佔4位元組,tcp連線中傳送的每乙個報文段都有乙個序號(該報文段多包含位元組數中第乙個位元組編號);

(3)確認號--------佔4位元組,tcp協議在建立連線的過程中,是通過確認訊號的傳送來判定報文段是否已接收和傳送;

(4)首部長度-----佔4 bit,它指出tcp協議此報文段首部共有多少個位元組,首部長度在20 ~ 60位元組;

(5)標誌位詳解:

緊急位元 uge(urgent),當uge = 1時,表明緊急指標有效,告訴系統這個報文段優先順序最高,先傳送此報文段;

確認位元 ack(acknowledge),當ack  = 1時,表明確認號有效,ack = 0,表明確認號無效;

推送位元 psh(push),當pus = 1時,表明此報文段在傳送的過程當中不會出現延遲現象,盡快傳送給接收方,接收端不用等待;

復位位元rst(reset),當rst = 1時,表明此次連線過程當中出現了嚴重的差錯,強制斷開連線,重新連線。比如主機崩潰、訪問埠不存在,異常連線等;

同步位元syn(sychronize),當syn = 1時,就表明這是一次面向連線或報文段的連線,需要同步執行;

終止位元fin(finish),當fin = 1時,就表明報文段傳送完畢,要求釋放連線。

(6)視窗機制------佔2位元組,視窗字段用來控制對方傳送的資料量,單位為位元組。tcp協議連線的一端根據設定其快取的大小,來確定自己所一次性接收報文段的大小(視窗大小),然後通知對方傳送的報文段不能超過我的視窗大小;

(7)檢驗和-------佔2位元組,檢驗物件包括報文段的首部和資料兩部分,確保在傳送的過程當中,傳送方格接收方的校驗和相等(防止傳送方在傳輸報文段出現報文段的丟失、被篡改以及被破壞等);

(8)緊急指標------佔16位,緊急指標指出在本報文段中緊急資料的最後乙個位元組序號(優先處理);

(9)選項部分-------長度可變mss(maximum  segment  size)最大報文段長度;mtu(maximum  transmission  unit)最大傳輸單元預設為1500位元組;

mss   =   mtu   -    20byte(ip首部)     -      20byte(tcp首部)

(二)tcp協議的抓包詳解:

(抓包**一):

(抓包**二)

(下篇詳解tcp協議的三次握手和四次釋放)

TCP中報文段大小(MSS) MTU

因為當初相關網路的知識剛剛複習,比較生疏。我當時還以為他是想考我tcp報文段中 視窗 欄位的意思呢,我當時想了一下,回答了 第三次 面試官聽到我的答案後沒有什麼表情,現在想想自己當初的回答是多麼的low比。面試官給了我很大的面子沒有嘲笑我。以後要好好複習。今天在這裡總結下tcp最大報文段的相關知識點...

TCP報文段首部格式詳解

源埠 目標埠 計算機上的程序要和其他程序通訊是要通過計算機埠的,而乙個計算機埠某個時刻只能被乙個程序占用,所以通過指定源埠和目標埠,就可以知道是哪兩個程序需要通訊。源埠 目標埠是用16位表示的,可推算計算機的埠個數為2 16個。序列號 表示本報文段所傳送資料的第乙個位元組的編號。在tcp連線中所傳送...

TCP首部報文段格式

最近 計算機網路 這本書看到了傳輸層的 tcp 協議,因為tcp 的全部功能都體現在它的首部中,因此覺得有必要將這些知識梳理一下。首先tcp 是面向位元組流的。這個流指的是流入到程序或從程序流出的位元組序列。面向位元組流的含義是 應用程式與 tcp 的互動是一次乙個資料塊 大小不等 但是 tcp 把...