傳輸層——TCP報文頭介紹


 

16位源端口號

16位目的端口號

32位序列號

32位確認序列號

4位頭部長度

保留6位

U

R

G

A

C

K

P

S

H

R

S

T

S

Y

N

F

I

N

16位窗口大小

16位檢驗和

16位緊急指針

可選項

數據

源端口:  長度為16位,2個字節。

目的端口:  長度為16位,2個字節。

    IP實現了點到點的數據通信,而TCP實現的是端到端的通信。

    通信端用一個IP與端口號來唯一標識。(其實端口號就是用來標識同一主機中的不同進程。)

    IP協議負責將數據傳輸到目標主機,而TCP可以根據數據報中的端口號,將數據交給相應的程序進行處理。

 

序列號: 長度32位,4個字節。

確認序列號:長度32位,4個字節。

頭部長度:該字段占用4位,用來表示報文首部的長度,單位是4Byte。如:headLen = ((packet[12]>>4)&0x0F)*4;

預留6位:長度為6位,作為保留字段,暫時沒有什么用處。

 

URG:長1位,表示緊急指針字段有效;

ACK:長1位,置位表示確認號字段有效;

PSH:長1位,表示當前報文需要請求推(push)操作;

RST:長1位,置位表示復位TCP連接;

SYN:長1位,用於建立TCP連接時同步序號;

FIN:長1位,用於釋放TCP連接時標識發送方比特流結束;

    ————該6位字段,理解不深,留作日后研究???

 

窗口大小:長度為16位,2個字節。

校驗和:長度為16位,2個字節。

緊急指針:長度為16位,2個字節。

以上是TCP包頭必須要有的字段,也稱固有字段,長度為20個字節。

 

可選項:此項是可選項(可有可無),解包時得具體分析(是TCP包頭的一部分)。

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM