TCP和UDP報頭格式各字段解釋

u32位端口號:

源端口和目的端口各佔16位,216次方等於65536,看端口的命令:netstat

u32位序號:

也稱爲順序號(Sequence Number),簡寫爲SEQ

u32位確認序號

也稱爲應答號(Acknowledgment Number),簡寫爲ACK。在握手階段,確認序號將發送方的序號加1作爲回答。

u4位首部長度

這個字段佔4位,它的單位時32位(4個字節)。本例值爲7TCP的頭長度爲28字節,等於正常的長度2 0字節加上可選項8個字節。,TCP的頭長度最長可爲60字節(二進制1111換算爲十進制爲1515*4字節=60字節)。

u6位標誌字段

ACK 1時表示確認號(爲合法,爲0的時候表示數據段不包含確認信息,確認號被忽略。

RST 1時重建連接。如果接收到RST位時候,通常發生了某些錯誤。

SYN 1時用來發起一個連接。

FIN 1時表示發端完成發送任務。用來釋放連接,表明發送方已經沒有數據發送了。

URG 緊急指針,告訴接收TCP模塊緊要指針域指着緊要數據。注:一般不使用。

PSH 1時請求的數據段在接收方得到後就可直接送到應用程序,而不必等到緩衝區滿時才傳送。注:一般不使用。

u16位檢驗和:

檢驗和覆蓋了整個的TCP報文段: TCP首部和TCP數據。這是一個強制性的字段,一定是由發端計算和存儲,並由收端進行驗證。

u16位緊急指針:

注:一般不使用。

只有當U R G標誌置1時緊急指針纔有效。緊急指針是一個正的偏移量,和序號字段中的值相加表示緊急數據最後一個字節的序號。

u可選與變長選項

通常爲空,可根據首部長度推算。用於發送方與接收方協商最大報文段長度(MSS),或在高速網絡環境下作窗口調節因子時使用。首部字段還定義了一個時間戳選項。

u最常見的可選字段是最長報文大小,又稱爲MSS (Maximum Segment Size)。每個連接方通常都在握手的第一步中指明這個選項。它指明本端所能接收的最大長度的報文段。1460是以太網默認的大小。


u2字節源端口字段

源端口是一個大於102316位數字,由基於UDP應用程序的用戶進程隨機選擇。

u2字節節的端口字段

u2字節長度字段

指明瞭包括首部在內的UDP報文段長度。UDP長字段的值是UDP報文頭的長度(8字節)UDP所攜帶數據長度的總和。

u2字節校驗和字段

是指整個UDP報文頭和UDP所帶的數據的校驗和(也包括僞報文頭)。僞報文頭不包括在真正的UDP報文頭中,但是它可以保證UDP數據被正確的主機收到了。因在校驗和中加入了僞頭標,故ICMP除能防止單純數據差錯之外,對IP分組也具有保護作用。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章