IPv4 Packet Format

Version

指定 IPv4 或 IPv6

Header Length

因為 options 的長度不定,所以透過 header length 了解 header 的長度 (此指圖片區中除了 data 以外的所有部分)

DSCP

有些種類的資料需要較高優先級處理,在此處就會特別標注,一般流量為000000代表 Best Effort

16 Bit Identifier

在 fragmentation 時會將一個 transport layer 中的一份資料分成多個部分包入不同 packet (因為有規範一個 packet 的大小限制),所以這個 Identifier 就可以告訴 destination 説他們是同一個 transport layer 的資料塊

Time-to-Live (TTL)

每經過一個台機器就會減 1 ,到 0 時便會直接丟棄,這樣可以防止 broadcast storm

Upper Layer Protocol

Transport Layer 用的協定 (TCP 或 UDP)

Header Checksum

在這個 packet 經過的每一台機器都會先確認 Header Checksum,這個部分可以快速地告訴機器在傳輸過程中 Header 有沒有傳錯東西或是壞掉

Where is IP packet?

Ethernet Frame Structure 中的 payload 部分