數據報 IPv4數據包首部的最小長度為多少?怎么算?
IPv4數據包首部的最小長度為多少?怎么算?在TCP/IP標準中,各種數據格式通常用32位(4字節(jié))來描述。圖6顯示了IP數據報的格式。IP數據報由標頭和數據組成。頭的第一部分的長度固定為20字節(jié),最
IPv4數據包首部的最小長度為多少?怎么算?
在TCP/IP標準中,各種數據格式通常用32位(4字節(jié))來描述。圖6顯示了IP數據報的格式。
IP數據報由標頭和數據組成。頭的第一部分的長度固定為20字節(jié),最后一部分的長度是可變的。下面介紹第一個字段的含義。
1. IP數據報頭的固定部分
版本字段站4位,表示IP協(xié)議的版本。通信雙方使用的IP協(xié)議版本必須一致。IP協(xié)議的當前版本是4。
標頭長度標頭長度字段占4位。可以表示的最大值是15個單位(一個單位是4字節(jié)),因此IP頭長度的最大值是60字節(jié)。當IP數據包的第一個長度不是4字節(jié)的整數倍時,它必須用最后一個填充字段填充。
service type service type字段總共有8位長,用于獲得更好的服務。其含義如圖6的上面部分所示。
服務類型字段的前三位表示優(yōu)先級,這使數據報具有八個優(yōu)先級中的一個。
第四位是D位,表示最小延遲。
第五位是T位,表示最大吞吐量。
第六位是代表最高可靠性的R位。
第七位是C位,表示最小成本。
最后一位當前未使用。
為什么捕抓到的IP數據包的總長度為40字節(jié),包括了IP頭和IP數據??墒且蕴珟蟮淖钚祿L度為64字節(jié)?
事實上,以太網幀的最小長度是64字節(jié)。顯示40字節(jié)的原因是ethereal不計算數據鏈路層中封裝的字節(jié)數。物理數據鏈路層封裝了18個字節(jié)。另外六個字節(jié)封裝在邏輯數據鏈路層中。
怎么計算tcp包的數據長度?
數據長度可根據IP數據包長度計算。IP包頭有一個總長度字段。
數據長度=總長度-IP頭長度-TCP頭長度