IP數據包結構


IP數據包結構

IP包結構圖


  1. Version(版本)字段長度為4位,標識了數據包的IP版本號。其中0100表示IP版本4,0110表示IP版本6(其他所有版本號僅作為“歷史產物”)

  2. IHL(首部長度)字段長度為4位,以字節為單位表示整個IP包中除數據字段外的長度。最小為20,最大為60。ps:可選項的范圍為0到40個字節

  3. Type of Service(服務類型)字段長度為8位 用來指定特殊的數據包處理方式。該字段實際上被分為兩個字段:優先權和Tos。

  4. Total Length(總長度)字段長度為16位(單位為一個八位組),表示整個IP數據包的長度(其中包括IP報頭,不包括幀數據結構)。接受者用總長度減去IP報頭長度,就可以確定數據包數據有效載荷的大小。(用十進制表示最大到65535個),中國傳輸MTU最大值為1500字節,因此數據超過該字節都會被進行拆分。


  1. Identification(標識符)字段長度為16位,通常與標記字段和分段偏移字段一起用於數據包的分段。如果數據包原始長度超過數據包所要經過的數據鏈路的最大傳輸 單元( MTU),那么必須將數據包分段為更小的數據包。例如,一個大小為 5000 字節的數據包在穿過網絡時,如果遇到一條MTU為1500字節的數據鏈路,即數據幀最多容納大小為1500字節的數據包。路由器需要在數據成幀之前將數據包分段成多個數據包,其中每個數據包長度不得超過1500字節;然后路由器在每片數據包的標識字段上打上相同的標記(標識符),以便接收設備可以識別出屬於一個數據包的分段。
  2. IP Flags(標記)字段長度為3位,第1位沒有使用。第2位表示不分段位(DF),取值:0(允許數據報分段)、1(數據報不能分段),置1之后路由器不能對其分段處理,如果超過MTU值則路由器不能對其轉發將其丟棄,並向源點發送錯誤消息。第3位表示更多段位,取值:0(數據包后面沒有包,該包為最后的包)、1(數據包后面有更多的包)。
    1.Fragment Offset(分片偏移)字段長度為13位,以字節為單位,用於指明分段起始點相對於包頭起始點的偏移量。由於分段到達時可能錯序,所以分段的偏移字段可以使接收者按照正確的順序重組數據包。請注意,如果一個分段在傳輸中丟失,那么必須在網絡中同一點對整個數據包重新分段並重新發送。因此,容易發生故障的數據鏈路會造成時延不成比例。另外,如果由於網絡擁塞而造成分段丟失,那么重傳整組分段會進一步加重網絡擁塞。


免責聲明!

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



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