MTU、IP MTU 與frame size的關(guān)系以及IP Packet分片_第1頁
MTU、IP MTU 與frame size的關(guān)系以及IP Packet分片_第2頁
MTU、IP MTU 與frame size的關(guān)系以及IP Packet分片_第3頁
MTU、IP MTU 與frame size的關(guān)系以及IP Packet分片_第4頁
MTU、IP MTU 與frame size的關(guān)系以及IP Packet分片_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、MTU、IP MTU 與frame size的關(guān)系以及IP Packet分片 Author:彭進(jìn)From:Published Time:2009-12-08 00:00:00.0Reads:604網(wǎng)絡(luò)的通信過程為上層數(shù)據(jù)被一層一層封裝后到達(dá)數(shù)據(jù)鏈路層,被封裝成幀,然后在物理鏈路上被傳輸。通常我們說以太網(wǎng)的MTU為1500 bytes,MTU和Frame size的關(guān)系,應(yīng)該分兩種情況來理解。一是:當(dāng)數(shù)據(jù)沒有被分片時(shí);二是:當(dāng)數(shù)據(jù)被分片時(shí);下文將會(huì)以實(shí)驗(yàn)來驗(yàn)證這個(gè)結(jié)論。為了研究frame size,我們先回憶一下幀的格式。按不同鏈路的封裝類型有多種幀格式。如以太網(wǎng)幀格式,串行鏈路幀格式不同幀格式

2、的幀頭內(nèi)容和大小不一。 下面以Cisco 的串行鏈路環(huán)境來說明。Cisco串行鏈路默認(rèn)封裝方式為Cisco專有的HDLC(High-Level Data Link Control protocol)。格式如下:AddressControlProtocol CodeInformationFrame Check Sequence (FCS)Flag1 byte1 byte          2 byte     MTU size2 byte1 byte1、Address

3、(1字節(jié))字段用來表示該幀中包含的packet類型,0x0F表示unicast packet,0x8F表示broadcast  packet。2、Control(1字節(jié))字段一般設(shè)置為0x00。3、Protocol Code(2字節(jié))字段用來表示上層協(xié)議類型,0X0800表示IPv4。4、Information(MTU size)即有效數(shù)據(jù)。5、FCS(2字節(jié))字段表示校驗(yàn)和。一般不需要。6、Flag(1字節(jié))字段用來標(biāo)記幀。一般不需要。所以,1字節(jié)Address+1字節(jié)Control+2字節(jié)Protocol Code = 4字節(jié)HDLC幀。下圖是默認(rèn)情況下,即沒有在serial接口

4、上修改MTU的情況下,在CISCO路由器上使用命令Router# ping 10.1.1.2 size 100 后,在串行鏈路上抓到的數(shù)據(jù):                                       &

5、#160;                                       (圖1)我們來分析一下:1處顯示該幀的大小為104 bytes,2處雖沒顯示HDLC頭的大小信息,但我們之前已將Cisco HDLC

6、分析過,大小為4bytes,3處指IP頭部20bytes4處顯示IP包共100bytes(含報(bào)頭和數(shù)據(jù))5處顯示ICMP用戶數(shù)據(jù)大小72字節(jié)6處為ICMP報(bào)頭信息,大小為8bytes(ICMP報(bào)文格式這里不詳細(xì)介紹) 分析結(jié)果:data(72byte)+ICMP header(8bytes)+IP header(20bytes)+HDCL header(4bytes) = Frame size(104bytes)data(72byte)+ICMP header(8bytes)+IP header(20bytes) = IP Packet(100bytes) 也就是

7、說Frame size(104bytes)減去HDLC header(4bytes)剛好等于IP Packet(100bytes) 。也剛好等于命令ping 10.1.1.2 size 100中“100”。所以,我們可以得到如下結(jié)論:ping 命令中指定size大小即為總共要發(fā)送的IP包大小。         現(xiàn)在我們?cè)趕erial接口上修改MTU大小為1000byte,用ping命令發(fā)送2000byte大小的IP包來試驗(yàn)。命令:Router(config-if)#MTU 1000Router#

8、ping 10.1.1.2 size 2000同樣在串行鏈路上用wireshark抓包得到如圖數(shù)據(jù):                                         

9、0;                                   (圖2)發(fā)現(xiàn)2000bytes的IP Packet被分片成3個(gè)小的幀來傳輸。      我們?cè)賮砜纯吹?3幀的內(nèi)容: 

10、0;                                                 

11、0;                         (圖3)     從圖3可以看出該幀大小為1000bytes,減去4bytes HDCL header和20 bytes IP Header剩下976bytes為用戶數(shù)據(jù)。Flags:0x02顯示該幀只有還有后續(xù)分片幀,偏移量Fragment offset:0,Re

12、ssembled IP in frame:85顯示該幀在第85幀中被重新組裝。     我們?cè)賮砜纯吹?4幀的內(nèi)容:                                    &

13、#160;                                         (圖4)       從圖4可以看出該幀大小為1

14、000bytes,減去4bytes HDCL header和20 bytes IP Header剩下976bytes為用戶數(shù)據(jù)。Flags:0x02顯示該幀只有還有后續(xù)分片幀,偏移量Fragment offset:976,Ressembled IP in frame:85顯示該幀在第85幀中被重新組裝。      再來看看第85幀:                  

15、                                                  

16、          (圖5)      從圖5可以看出該幀大小為52bytes,減去4bytes HDCL header和20 bytes IP Header剩下28bytes為IP數(shù)據(jù)。Flags:0x00顯示該幀之后沒有后續(xù)分片,偏移量Fragment offset:1952,圖中標(biāo)示5標(biāo)示當(dāng)83幀、84幀、85幀到達(dá)目的地后,將被提取3個(gè)幀中的有效數(shù)據(jù)重新組裝稱完整的IP packet,有效數(shù)據(jù)976+976+28=1980,如果加上20bytes的

17、IP header剛好2000bytes。與我們ping命令指定發(fā)送IPpacket大小吻合。        在這個(gè)實(shí)例中,我們修改MUT為1000,所以鏈路層傳輸單個(gè)幀最大為1000bytes,如果發(fā)送的IP packet大于該MTU指定大小,那么該IP Packet將被分片,分片大小由MTU size 減去幀頭size得到的數(shù)據(jù)決定。在本例中分片大小為1000-4=996(IP Total Lenght filed)       下面同樣將MTU修改為1000,

18、而ping指定發(fā)送1000bytes IP Packe(命令ping 10.1.1.2 size 1000),抓包得到以下數(shù)據(jù):                                       &#

19、160;                           (圖5)個(gè)別子項(xiàng)沒有展開圖5顯示該幀大小1004bytes,IP total length為1000bytes(ping命令指定)。為什么該幀大于MTU指定大小了呢?請(qǐng)注意我們的IP total length大小為1000,沒有超過MTU指定大小,IP packet不

20、會(huì)被分片,所以1000bytes的IP packet被封裝進(jìn)幀后,加上4bytes的HDLC header就是我們?cè)阪溌飞习l(fā)送的幀,大小為1004bytes。由以上幾個(gè)實(shí)驗(yàn)我們可以得出以下結(jié)論:1、當(dāng)被封裝的數(shù)據(jù)小于或等于MTU指定大小的時(shí)候,被封裝的數(shù)據(jù)不會(huì)被分片,frame size<=MTU size+ frame header size2、當(dāng)被封裝的數(shù)據(jù)大于MTU指定大小的時(shí)候,被封裝的數(shù)據(jù)會(huì)以MTU減去幀頭得到的大小來分片,frame size<=MTU size 下面來討論IP MTU.條件:MTU為1500(默認(rèn)),修改接口IP MTU為1000,指定發(fā)送1500by

21、tes 的IP Packet 。命令:Router(config-if)# mtu 1500Router(config-if)# ip mtu 1000Router(config-if)# ip add 10.1.1.1 255.255.255.0Router# ping 10.1.1.2 size 1500抓包得到的數(shù)據(jù)分析:                     

22、0;                                             (圖6)1500bytes的IP包被分片成61、62幀。

23、                                                                   (圖7)61幀大小為100

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論