學(xué)習(xí)啦>知識(shí)大全>知識(shí)百科>百科知識(shí)>

最大傳輸單元

時(shí)間: 鞏詩2756 分享

  你知道網(wǎng)絡(luò)上最大的傳輸單元是什么嗎?

  最大傳輸單元

  最大傳輸單元(Maximum Transmission Unit,MTU)是指一種通信協(xié)議的某一層上面所能通過的最大數(shù)據(jù)報(bào)大小(以字節(jié)為單位)。最大傳輸單元這個(gè)參數(shù)通常與通信接口有關(guān)(網(wǎng)絡(luò)接口卡、串口等)。

  詳細(xì)信息因特網(wǎng)協(xié)議允許IP分片,這樣就可以將數(shù)據(jù)報(bào)分成足夠小的片段以通過那些最大傳輸單元小于該數(shù)據(jù)報(bào)原始大小的鏈路了。這一分片過程發(fā)生在IP層(OSI模型的第三層,即網(wǎng)絡(luò)層),它使用的是將分組發(fā)送到鏈路上的網(wǎng)絡(luò)接口的最大傳輸單元的值。原始分組的分片都被加上了標(biāo)記,這樣目的主機(jī)的IP層就能將分組重組成原始的數(shù)據(jù)報(bào)了。在因特網(wǎng)協(xié)議中,一條因特網(wǎng)傳輸路徑的“路徑最大傳輸單元”被定義為從源地址到目的地址所經(jīng)過“路徑”上的所有IP跳的最大傳輸單元的最小值。或者從另外一個(gè)角度來看,就是無需進(jìn)一步分片就能穿過這條“路徑”的最大傳輸單元的最大值。RFC 1191描述了“路徑最大傳輸單元發(fā)現(xiàn)方法”,這是一種確定兩個(gè)IP主機(jī)之間路徑最大傳輸單元的技術(shù),其目的是為了避免IP分片。在這項(xiàng)技術(shù)中,源地址將數(shù)據(jù)報(bào)的DF(Don't Fragment,不要分片)位置位,再逐漸增大發(fā)送的數(shù)據(jù)報(bào)的大小——路徑上任何需要將分組進(jìn)行分片的設(shè)備都會(huì)將這種數(shù)據(jù)報(bào)丟棄并返回一個(gè)“數(shù)據(jù)報(bào)過大”的ICMP響應(yīng)到源地址——這樣,源主機(jī)就“學(xué)習(xí)”到了不用進(jìn)行分片就能通過這條路徑的最大的最大傳輸單元了。局限不幸的是,越來越多的網(wǎng)絡(luò)封殺了ICMP的傳輸(譬如說為了防范DOS攻擊)——這使得路徑最大傳輸單元發(fā)現(xiàn)方法不能正常工作,其常見表現(xiàn)就是一個(gè)連接在低數(shù)據(jù)流量的情況下可以正常工作,但一旦有大量數(shù)據(jù)同時(shí)發(fā)送,就會(huì)立即掛起(例如在使用IRC的時(shí)候,客戶會(huì)發(fā)現(xiàn)在發(fā)送了一個(gè)禁止IP欺騙的ping之后就得不到任何響應(yīng)了,這是因?yàn)樵撨B接被大量的歡迎消息堵塞了)。而且,在一個(gè)使用因特網(wǎng)協(xié)議的網(wǎng)絡(luò)中,從源地址到目的地址的“路徑”常常會(huì)為了響應(yīng)各種各樣的事件(負(fù)載均衡、擁塞、斷電等等)而被動(dòng)態(tài)地修改——這可能導(dǎo)致路徑最大傳輸單元在傳輸過程中發(fā)生改變——有時(shí)甚至是反復(fù)的改變。其結(jié)果是,在主機(jī)尋找新的可以安全工作的最大傳輸單元的同時(shí),更多的分組被丟失掉了。對于時(shí)下大多數(shù)使用以太網(wǎng)的局域網(wǎng)來說,最大傳輸單元的值是1500字節(jié)。但是像PPPoE這樣的系統(tǒng)會(huì)減小這個(gè)數(shù)值,這就使得在使用最大傳輸單元發(fā)現(xiàn)方法時(shí)可能會(huì)產(chǎn)生這樣的結(jié)果:一些處于配置不當(dāng)?shù)姆阑饓χ蟮恼军c(diǎn)變得不可達(dá)了。對于這種情況,還是可能找到變通的方法的,但這取決于你控制的是網(wǎng)絡(luò)的哪一部分。這些方法包括改變用來在防火墻一端建立TCP連接的第一個(gè)分組的MSS(Maximum Segment Size,最大分段大小)。對于一些支持老版本以太網(wǎng)協(xié)議的IBM系統(tǒng)(例如XSeries),可能只有在把最大傳輸單元設(shè)為1492之后才能在當(dāng)下常見的局域網(wǎng)上進(jìn)行運(yùn)作。

  IP分片技術(shù)折疊簡介折疊內(nèi)容IP首部包含了分片和重組所需的信息:

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

  | Identification |R|DF|MF| Fragment Offset

  |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|

  <-------------16-------------->|<--3-->|<---------13---------->|

  Identification:發(fā)送端發(fā)送的IP數(shù)據(jù)包標(biāo)識(shí)字段都是一個(gè)唯一值,該值在分片時(shí)被復(fù)制到每個(gè)片中。

  R:保留未用。

  DF:Don't Fragment,“不分片”位,如果將這一比特置1 ,IP層將不對數(shù)據(jù)報(bào)進(jìn)行分片。

  MF:More Fragment,“更多的片”,除了最后一片外,其他每個(gè)組成數(shù)據(jù)報(bào)的片都要把該比特置1。

  Fragment Offset:該片偏移原始數(shù)據(jù)包開始處的位置。偏移的字節(jié)數(shù)是該值乘以8。另外,當(dāng)數(shù)據(jù)報(bào)被分片后,每個(gè)片的總長度值要改為該片的長度值設(shè)備的MTU調(diào)成多少比較好?以ISP(電信服務(wù)商)的MTU為基準(zhǔn),每下級設(shè)備的MTU都最好比上級設(shè)置的略低為好。例如在ISP=>貓=>路由器=>電腦的布局中,ISP的MTU是1466,那么下級的貓可以設(shè)置成1464,再下 級的路由器可以設(shè)置成1462,再下級的電腦的MTu可以設(shè)置成1460,以此類推。MTU的作用通常來說MTU越小,你所發(fā)送包的頻率越快,在一些游戲和網(wǎng)絡(luò)軟件中可以通過更改mtu獲得更好的效果。mtu代表的是封裝包的大小,封閉包的大小決定你發(fā)送包的發(fā)送頻率。

1813231