IP資料報分片理解

2021-06-01 22:43:27 字數 679 閱讀 5599

ip資料報分片理解

一、     乙太網幀格式如下:

mac資料報的最小值為46byte,至於這個最小值是因為乙太網通道偵聽需要,1500byte為規範值。

一般的電腦mtu設定值為1500,就是基於mac最大封包的考慮。一般的ip包的大小肯定超過1500byte,為了能在mac幀中傳輸,必須將ip包進行分片,分成適合傳輸的mac幀。

可以測試發現,當ip資料報的大小超過1500byte時,且不允許分片時,電腦系統拒絕傳送此報文,同時提示資料報需要分片。

使用icmp包進行測試,因為ip頭占用20byte,icmp頭占用8byte,所以icmp包大小最大為1472byte。測試,使用1472的icmp報文可以通過,但是使用1473的icmp不分片報文則不能通過。

測試1:

抓包如下,1472byte的icmp報文可以通過不分片進行傳輸;

測試2:

因為icmp報文的大小為3000byte,所以肯定報文要進行分片,抓包如下:

第乙個icmp報文,滿載1472byte。ip包中fragment flags 欄位表有後續有ip分片。

第二個報文(第一分片)就直接通過ip分片傳輸,且不包含icmp頭,此ip包承載的大小為1480byte。

第三個報文(第二分片),承載的資料報大小為48byte,分片結束。此包的整個大小為:1472+1480+48=3000 byte

IP資料報分片

注意 資料報分片一定要能被8整除 片偏移 起始資料報片 8,若不能整除,則要對首部進行修改 乙個資料報長度4000位元組 固定首部長度 現在經過乙個網路傳送,網路mtu為1500位元組,求非為幾個資料報片,各個報片資料長度,mf,和片偏移 思路 本題1500 20 1480剛好能被8整除,這裡首部就...

IP資料報分片總結

網路層的資料報需要借助於資料鏈路層來真正完成傳輸,但是資料鏈路層的mtu有限制,一般乙太網的mtu是1500b。但是網路層的資料報大小可以不止mtu這麼大,根據ip資料報的格式我們知道,總長度有16位,最大有216 1 65535 b 這麼大,因此,必然牽涉到資料報的分片技術。分片主要借助標識 16...

IP資料報分片總結

網路層的資料報需要借助於資料鏈路層來真正完成傳輸,但是資料鏈路層的mtu有限制,一般乙太網的mtu是1500b。但是網路層的資料報大小可以不止mtu這麼大,根據ip資料報的格式我們知道,總長度有16位,最大有21 6 1 65535 b 這麼大,因此,必然牽涉到資料報的分片技術。分片主要借助標識 1...