版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
關(guān)于MTU、IPMTU、TCPMSS探討與分析概述本文主要分析了二層MTU,IPMTU,MSS之間的關(guān)系和在不同網(wǎng)絡(luò)場(chǎng)景中的應(yīng)用,最后通過(guò)一個(gè)案例分析來(lái)進(jìn)一步認(rèn)識(shí)MTU對(duì)實(shí)際IP數(shù)據(jù)包轉(zhuǎn)發(fā)的影響。MTU最大傳輸單元(MaximumTransmissionUnit,MTU)是指一種通信協(xié)議在某一層上面所能通過(guò)的最大數(shù)據(jù)報(bào)大?。ㄒ宰止?jié)為單位),它通常與鏈路層協(xié)議有密切的關(guān)系。EthernetII幀結(jié)構(gòu)如下:DMACSMACTypeDataCRC由于以太網(wǎng)傳輸電氣方面的限制,每個(gè)以太網(wǎng)幀都有最小的大小64bytes,最大不能超過(guò)1518bytes,對(duì)于小于或者大于這個(gè)限制的以太網(wǎng)幀,我們都可以視之為錯(cuò)誤的數(shù)據(jù)幀。一般的以太網(wǎng)轉(zhuǎn)發(fā)設(shè)備會(huì)丟棄這些數(shù)據(jù)幀。(注:小于64Bytes的數(shù)據(jù)幀一般是由于以太網(wǎng)沖突產(chǎn)生的“碎片”或者線路干擾或者壞的以太網(wǎng)接口產(chǎn)生的,對(duì)于大于1518Bytes的數(shù)據(jù)幀我們一般把它叫做Giant幀,這種一般是由于線路干擾或者壞的以太網(wǎng)口產(chǎn)生)。由于以太網(wǎng)EthernetII最大的數(shù)據(jù)幀是1518Bytes,除去以太網(wǎng)幀的幀頭(DMAC目的MAC地址48bit=6Bytes+SMAC源MAC地址48bit=6Bytes+Type域2bytes)14Bytes和幀尾CRC校驗(yàn)部分4Bytes(這個(gè)部份有時(shí)候大家也把它叫做FCS),那么剩下承載上層協(xié)議的地方也就是Data域最大就只能有1500Bytes,這個(gè)值我們就把它稱之為MTU。這個(gè)MTU就是網(wǎng)絡(luò)層協(xié)議非常關(guān)心的地方,因?yàn)榫W(wǎng)絡(luò)層協(xié)議比如IP協(xié)議會(huì)根據(jù)這個(gè)值來(lái)決定是否把上層傳下來(lái)的數(shù)據(jù)進(jìn)行分片。就好比一個(gè)盒子沒(méi)法裝下一大塊面包,我們需要把面包切成片,裝在多個(gè)盒子里面一樣的道理。當(dāng)兩臺(tái)遠(yuǎn)程PC互聯(lián)的時(shí)候,它們的數(shù)據(jù)需要穿過(guò)很多的路由器和各種各樣的網(wǎng)絡(luò)媒介才能到達(dá)對(duì)端,網(wǎng)絡(luò)中不同媒介的MTU各不相同,就好比一長(zhǎng)段的水管,由不同粗細(xì)的水管組成(MTU不同)通過(guò)這段水管最大水量就要由中間最細(xì)的水管決定。IPMTU對(duì)于網(wǎng)絡(luò)層的上層協(xié)議而言(我們以TCP/IP協(xié)議族為例),網(wǎng)絡(luò)層IP協(xié)議會(huì)檢查每個(gè)從上層協(xié)議下來(lái)的數(shù)據(jù)包的大小,并根據(jù)本機(jī)MTU的大小決定是否作“分片”處理。分片最大的壞處就是降低了傳輸性能,本來(lái)一次可以搞定的事情,分成多次搞定,所以在網(wǎng)絡(luò)層更高一層(就是傳輸層)的實(shí)現(xiàn)中往往會(huì)對(duì)此加以注意!有些高層因?yàn)槟承┰蚓蜁?huì)要求我這個(gè)面包不能切片,我要完整地面包,所以會(huì)在IP數(shù)據(jù)包包頭里面加上一個(gè)標(biāo)簽:DF(DonotFragment)。這樣當(dāng)這個(gè)IP數(shù)據(jù)包在一大段網(wǎng)絡(luò)(水管里面)傳輸?shù)臅r(shí)候,如果遇到MTU小于IP數(shù)據(jù)包的情況,轉(zhuǎn)發(fā)設(shè)備就會(huì)根據(jù)要求丟棄這個(gè)數(shù)據(jù)包,然后返回一個(gè)錯(cuò)誤信息給發(fā)送者。這樣往往會(huì)造成某些通訊上的問(wèn)題,不過(guò)幸運(yùn)的是大部分網(wǎng)絡(luò)鏈路MTU都是等于1500或者大于1500。對(duì)于UDP協(xié)議而言,這個(gè)協(xié)議本身是無(wú)連接的協(xié)議,對(duì)數(shù)據(jù)包的到達(dá)順序以及是否正確到達(dá)不甚關(guān)心,所以一般UDP應(yīng)用對(duì)分片沒(méi)有特殊要求。對(duì)于TCP協(xié)議而言就不一樣了,這個(gè)協(xié)議是面向連接的協(xié)議,對(duì)于TCP協(xié)議而言它非常在意數(shù)據(jù)包的到達(dá)順序以及是否傳輸中有錯(cuò)誤發(fā)生。所以有些TCP應(yīng)用對(duì)分片有要求---不能分片(DF)。MSSMSS是最大傳輸大小的縮寫(xiě),它是TCP協(xié)議里面的一個(gè)概念。如下圖1-1所示:圖1-1TCP頭部注:URG等參數(shù)指的是ACKURGPSHSINFINRST等參數(shù)在TCP報(bào)文中MSS的位置就在選項(xiàng)的位置,根據(jù)RFC1323和RFC793規(guī)定,選項(xiàng)中內(nèi)容有很多種,MSS是其中的一種,用kind=2表示;kind=1表示無(wú)操作,kind=4、5、6、7稱為選擇ACK及回顯選項(xiàng),但是由于回顯選項(xiàng)已經(jīng)被時(shí)間戳選項(xiàng)取代,同時(shí),目前定義的選擇ACK選項(xiàng)仍未定論,也沒(méi)有包括在RFC1323中,所以具體代表什么含義還無(wú)定論。在實(shí)際網(wǎng)絡(luò)數(shù)據(jù)傳輸,要求MSS+20TCP包頭+20IP包頭不大于MTU。MSS在TCP報(bào)文中是可選項(xiàng),不是必選項(xiàng),換句話說(shuō),MSS是可協(xié)商項(xiàng),而且在協(xié)商過(guò)后,該選項(xiàng)內(nèi)容可以改變,也可以沒(méi)有;在協(xié)商MSS時(shí),一般是建立TCP連結(jié)的兩端發(fā)送Syn標(biāo)志報(bào)文時(shí)互相通報(bào),然后選取最小MSS作為雙方的約定,如果雙方都不通報(bào)或有一方不通報(bào)。MSS就是TCP數(shù)據(jù)包每次能夠傳輸?shù)淖畲髷?shù)據(jù)分段。為了達(dá)到最佳的傳輸效能,TCP協(xié)議在建立連接的時(shí)候通常要協(xié)商雙方的MSS值,這個(gè)值TCP協(xié)議在實(shí)現(xiàn)的時(shí)候往往用MTU值代替(需要減去IP數(shù)據(jù)包包頭的大小20Bytes和TCP數(shù)據(jù)段的包頭20Bytes),所以往往MSS為1460。通訊雙方會(huì)根據(jù)雙方提供的MSS值得最小值確定為這次連接的最大MSS值。區(qū)別及聯(lián)系由前面的敘述可知:MTU是一個(gè)二層的概念,以太網(wǎng)最大的mtu就是1500(它是不包含二層頭部的,加上頭部應(yīng)該為1518bytes),當(dāng)然這里說(shuō)的是很常規(guī)的情況,也有些server,比如server2008,出來(lái)的就是jumboframe了,我們?cè)谶@里討論常規(guī)情況。IPMTU是一個(gè)三層概念,它包含了三層頭部及所有載荷,根據(jù)下層為上層服務(wù)的,上層基于下層才能做進(jìn)一步的擴(kuò)展的原則,盡管IPMTU的變化范圍很大(68-65535),但也不得不照顧以太網(wǎng)MTU的限制,說(shuō)白了就是ip對(duì)以太網(wǎng)的妥協(xié)。MSS是TCP里面的一個(gè)概念,它是TCP數(shù)據(jù)包每次能夠傳輸?shù)淖畲髷?shù)據(jù)分段,不包含包頭部分,它與IPMTU滿足如下關(guān)系:IPMTU=MSS+20bytes(IP包頭)+20bytes(TCP包頭)。當(dāng)然,如果傳輸?shù)臅r(shí)候還承載有其他協(xié)議,還要加些包頭在前面,簡(jiǎn)言之,mtu就是總的最后發(fā)出去的報(bào)文大小,MSS就是需要發(fā)出去的數(shù)據(jù)大小,比如PPPoE,就是在以太網(wǎng)上承載PPP協(xié)議(點(diǎn)到點(diǎn)連接協(xié)議),它包括6bytes的PPPoE頭部和2bytes的PPP協(xié)議ID號(hào),此時(shí),由于以太網(wǎng)的MTU值為1500,所以上層PPP負(fù)載數(shù)據(jù)不能超過(guò)1492字節(jié),也就是相當(dāng)于在PPPOE環(huán)境下的MTU是1492字節(jié),MSS是1452字節(jié)。MTU問(wèn)題解決方法通常情況下,MTU不匹配會(huì)表現(xiàn)為兩種故障情況:ping大包時(shí)不通無(wú)法訪問(wèn)某些站點(diǎn)在這種情況下,通常有兩種解決方法:修改用戶端MTU值(不推薦使用)修改傳輸路由所有設(shè)備MTU值,確保路徑MTU值大于用戶發(fā)送的IP報(bào)文的長(zhǎng)度,以保證用戶報(bào)文不會(huì)因?yàn)槌^(guò)設(shè)備的MTU值被丟棄。主要要考慮下面幾種情況:·對(duì)于純IP網(wǎng)絡(luò),要保證:路徑MTU值>最大用戶報(bào)文長(zhǎng)度·對(duì)于純MPLS網(wǎng)絡(luò)(沒(méi)有VPN業(yè)務(wù)),要保證路徑MTU值>最大用戶報(bào)文+一層標(biāo)簽長(zhǎng)度(4)·對(duì)于三層VPN業(yè)務(wù),要保證:路徑MTU值>最大用戶報(bào)文+兩層標(biāo)簽長(zhǎng)度(8);·對(duì)于二層VPN業(yè)務(wù),要保證:路由MTU值>最大用戶報(bào)文長(zhǎng)度+兩處標(biāo)簽長(zhǎng)度(8)+二層幀頭長(zhǎng)度(18)。值得注意的是:fastethernet接口不能調(diào)整MTU,所以說(shuō)在有些設(shè)備中,使用MTU命令不能解決問(wèn)題的。此外,更改MTU后,如果IGP是OSPF的話,不同的MTU可能會(huì)造成OSPF停留在INIT狀態(tài),此時(shí)需要將兩端的MTU調(diào)整一致。案例分析下面通過(guò)一個(gè)某公司TCPMSS配置不匹配導(dǎo)致應(yīng)用不正常的案例分析,來(lái)加深對(duì)上述概念的理解。其拓?fù)鋱D如下圖1-2所示:圖1-2某公司網(wǎng)絡(luò)拓?fù)涫疽鈭D設(shè)備角色說(shuō)明NBR2000公司總出口路由器NBR2000啟用L2TP功能,同時(shí)在L2TP虛擬模板接口中配置了TCPMSS為1300。NBR1200啟用2LTP功能,同時(shí)在L2TP虛擬模板接口中配置了TCPMSS為1400。NBR1200與NBR2000通過(guò)L2TP協(xié)議建立隧道,NBR2000作為服務(wù)端,NBR1200作為客戶端。NBR1200分公司出口路由器故障現(xiàn)象:在分公司NBR1200的PC上登錄總公司ISOFLOW服務(wù)器,在ISOFLOW里簽核表單的時(shí)候,會(huì)無(wú)法簽核下去而導(dǎo)致IE死掉的現(xiàn)象。如果碰見(jiàn)ISOFLOW單子的附件,會(huì)發(fā)現(xiàn)附件要過(guò)很長(zhǎng)、很長(zhǎng)的時(shí)間才能打開(kāi)。訪問(wèn)ERP系統(tǒng)普通表單的速度不錯(cuò),但是一旦進(jìn)行數(shù)據(jù)庫(kù)的讀寫(xiě),速度極慢;數(shù)據(jù)查詢時(shí)經(jīng)常超時(shí)。診斷故障原因及分析:1.故障診斷的思路登錄到總公司NBR2000和分公司NBR1200,查看配置,具體如下:NBR2000虛擬模板配置:interfaceVirtual-Template1mtu1400pppauthenticationpapipnatinsideiptcpadjust-mss1300ipunnumberedGigabitEthernet0/0peerdefaultipaddresspoolVPDNNBR1200虛擬模板配置:interfaceVirtual-ppp1pseudowireX.X.X.X20encapsulationl2tpv2pw-classpwmtu1400ppppapsent-usernamestar-netpassword70058274d4c24iptcpadjust-mss1400ipaddressnegotiate故障診斷的分析判斷網(wǎng)絡(luò)層是否正常在現(xiàn)場(chǎng)從分公司PCPING總公司ISOFLOW服務(wù)器IP,長(zhǎng)PING沒(méi)有丟包,說(shuō)明網(wǎng)絡(luò)層是正常的。2、應(yīng)用異常目前用戶應(yīng)用是通過(guò)HTTP來(lái)訪問(wèn),出現(xiàn)能訪問(wèn),但很慢的現(xiàn)象,說(shuō)明是在應(yīng)用層上出現(xiàn)了問(wèn)題。一般來(lái)說(shuō),在應(yīng)用層出問(wèn)題,在排除軟件本身問(wèn)題的情況下,基本可以定位是MTU或TCPMSS不匹配原因引起。3、TCPMSS分析一般來(lái)說(shuō)一般的應(yīng)用軟件,當(dāng)客戶端和服務(wù)器端在建立TCP連接的時(shí)候需要根據(jù)實(shí)際傳輸?shù)膱?bào)文大小來(lái)協(xié)商TCP的窗口大小MSS。在TCP協(xié)商的第一個(gè)報(bào)文也就是SYN置位的報(bào)文中會(huì)告知對(duì)方自己所能接收的最大TCP數(shù)據(jù)凈荷(也就是TCP報(bào)文中的數(shù)據(jù)長(zhǎng)度)----MSS,對(duì)方收到TCP同步報(bào)文也會(huì)回復(fù)一個(gè)SYN置位的TCP報(bào)文,其中也攜帶了MSS參數(shù)來(lái)告知對(duì)方自己能接收的最大MSS。根據(jù)以上分析,我們來(lái)看一下總公司與分公司路由器是怎么協(xié)商TCPMSS的:(1)分公司-》總公司PC發(fā)起TCPSYN報(bào)文與總公司ISOFLOW服務(wù)器進(jìn)行協(xié)商,在TCPSYN報(bào)文經(jīng)過(guò)分公司路由器虛擬模板接口(out方向)時(shí),路由器會(huì)將接口配置的MSS值1400(分公司路由器在虛擬模板接口上配置了iptcpadjust-mss1400)與TCP報(bào)文中的MSS值1460(windowsXP系統(tǒng)默認(rèn)是1460)比較,取二者的最小值1400。ISOFLOW服務(wù)器收到此TCP同步報(bào)文,查看其中的MSS=1400,服務(wù)端在后續(xù)發(fā)送數(shù)據(jù)時(shí)封裝的最大TCP數(shù)據(jù)載荷為1400。一般來(lái)說(shuō)TCPMSS是不分包的,DF置位為1。(2)總公司-》分公司ISOFLOW發(fā)響應(yīng)TCPSYNACK報(bào)文給分公司的PC,在TCPSYN報(bào)文經(jīng)過(guò)總公司路由器虛擬模板接口(out方向)時(shí),路由器會(huì)將接口配置的MSS值1300(總公司路由器在虛擬模板接口上配置了iptcpadjust-mss1300)與TCP報(bào)文中的MSS值1460(windowsXP系統(tǒng)默認(rèn)是1460)比較,取二者的最小值1300。PC收到此TCP同步確認(rèn)報(bào)文,查看其中的MSS=1300,PC在后續(xù)發(fā)送數(shù)據(jù)時(shí)封裝的最大TCP數(shù)據(jù)載荷為1300。一般來(lái)說(shuō)TCPMSS是不分包的,DF置位為1。PC在向ISOFLOW發(fā)送請(qǐng)求,作為ISOFLWO的被請(qǐng)求端,發(fā)出的數(shù)據(jù)包括的數(shù)據(jù)文件,數(shù)據(jù)包較大,需要封裝成最大MSS載荷傳送(提高效率),在此MSS=1400,當(dāng)數(shù)據(jù)包經(jīng)過(guò)總公司L2TPVPN虛擬模板接口時(shí),由于配置了mtu1400,而此時(shí)數(shù)據(jù)包的MTU(MTU=1400+TCP(20)+IP(20)+PPP(4)+L2TP(8)+UDP(8)+IP(20)=1480)遠(yuǎn)遠(yuǎn)大于總公司路由器
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 提升辦學(xué)水平的高標(biāo)準(zhǔn)創(chuàng)新方案
- 保溫棉廠家采購(gòu)合同范例
- 2025年度金融風(fēng)險(xiǎn)管理培訓(xùn)及認(rèn)證服務(wù)協(xié)議
- 東莞員工公寓租賃合同范例
- 前臺(tái)接待續(xù)簽合同范例
- 兩人合伙買(mǎi)裝載機(jī)合同范例
- 出租商鋪協(xié)議合同范例
- 勞務(wù)公司招工合同范本
- 2025年度海運(yùn)貨物跟蹤與運(yùn)輸合同示范
- 2025版茅臺(tái)酒出口業(yè)務(wù)代理及銷(xiāo)售合同模板4篇
- 新版《醫(yī)療器械經(jīng)營(yíng)質(zhì)量管理規(guī)范》(2024)培訓(xùn)試題及答案
- 2025年人教版數(shù)學(xué)五年級(jí)下冊(cè)教學(xué)計(jì)劃(含進(jìn)度表)
- 北師大版七年級(jí)上冊(cè)數(shù)學(xué)期末考試試題及答案
- 初中信息技術(shù)課堂中的項(xiàng)目式學(xué)習(xí)實(shí)踐研究結(jié)題報(bào)告
- 2025年初級(jí)社會(huì)工作者綜合能力全國(guó)考試題庫(kù)(含答案)
- 復(fù)工復(fù)產(chǎn)安全培訓(xùn)考試題
- 上下樓梯安全我知道安全教育課件
- 市級(jí)臨床重點(diǎn)專(zhuān)科申報(bào)書(shū)
- 手術(shù)風(fēng)險(xiǎn)及醫(yī)療意外險(xiǎn)告知流程
- 《醫(yī)院重點(diǎn)專(zhuān)科建設(shè)專(zhuān)項(xiàng)資金管理辦法》
評(píng)論
0/150
提交評(píng)論