學(xué)習(xí)啦>學(xué)習(xí)電腦>操作系統(tǒng)>Linux教程>

linux怎么修改mtu值

時(shí)間: 春健736 分享

  MTU是Maximum Transmission Unit的縮寫。意思是網(wǎng)絡(luò)上傳送的最大數(shù)據(jù)包。那么linux怎么修改mtu值呢?接下來大家跟著學(xué)習(xí)啦小編一起來了解一下linux修改mtu值的解決方法吧。

  linux修改mtu值方法

  一、jumbo frames 相關(guān)

  1、什么是jumbo frames

  Jumbo frames 是指比標(biāo)準(zhǔn)Ethernet Frames長(zhǎng)的frame,即比1518/1522 bytes大的frames,Jumbo frame的大小是每個(gè)設(shè)備廠商規(guī)定的,不屬于IEEE標(biāo)準(zhǔn);Jumbo frame 在full-duplex 的Ethernet網(wǎng)絡(luò)上運(yùn)行;Jumbo frame定義了一個(gè)“link negotiation”協(xié)議,來和對(duì)端的設(shè)備協(xié)商,是否對(duì)端設(shè)備支持使用Jumbo frames;標(biāo)準(zhǔn)的以太網(wǎng)IP報(bào)文大小是:1500 bytes,不包含以太網(wǎng)頭和FCS的18 bytes(6+6+2+4),如果包含以太網(wǎng)頭和FCS,則為1518 bytes;Jumbo frame 一般指的是二層封裝三層IP報(bào)文的值大于9000bytes的報(bào)文。

  Jumbo frames的提出背景:在1998年,Alteon Networks 公司提出把Data Link Layer最大能傳輸?shù)臄?shù)據(jù)從1500 bytes 增加到9000 bytes,這個(gè)提議雖然沒有得到IEEE 802.3 Working Group的同意,但是大多數(shù)設(shè)備廠商都已經(jīng)支持。

  2、使用jumbo frames的優(yōu)點(diǎn)

  在數(shù)據(jù)傳輸時(shí),由于IEEE的規(guī)定最大的幀規(guī)定為1,500比特(主機(jī)在早期的半雙功網(wǎng)絡(luò)中),所以需要數(shù)傳輸需要經(jīng)過 數(shù)據(jù)的切要 --- 傳輸 ---數(shù)據(jù)組合 的過程。而使用的最大幀越小,傳輸包的量就越大,計(jì)算量相應(yīng)會(huì)多,而產(chǎn)生的后果是:

  a:增加主機(jī)的計(jì)算量,消耗CPU資源;

  b:影響網(wǎng)絡(luò)傳輸?shù)乃俣取?/p>

  而使用大幀優(yōu)點(diǎn)自然也不言而喻 ———— 降低CPU計(jì)算量、加快數(shù)據(jù)傳輸。

  二、修改MTU值

  上面啰嗦了一大堆,修改幀大小實(shí)際需要的操作就是修改MTU(Maximum Transmission Unit)值,即修改最大傳輸單元。修改方法如下:

  1、ifconfig命令修改

  ifconfig ${Interface} mtu ${SIZE} upifconfig eth1 mtu 9000 up

  這個(gè)是最通用的方法,對(duì)所有的linux 發(fā)行版本都有效。缺點(diǎn)就是重啟后失效,需要在開機(jī)項(xiàng)中加載。

  2、修改配置文件

  CentOS / RHEL / Fedora Linux下

  # vi /etc/sysconfig/network-scripts/ifcfg-eth0#增加如下內(nèi)容MTU="9000"#保存后重啟網(wǎng)卡生效# service network restart#啟用IPv6地址的,修改IPv6 mtu的參數(shù)為IPV6_MTU="1280"

  Debian / Ubuntu Linux下

  # vi /etc/network/interfaces#增加如下值mtu 9000#保存后,重啟網(wǎng)絡(luò)生效# /etc/init.d/networking restart

  三、為什么MTU最大值為9000字節(jié)

  從理論上計(jì)算,4 bytes的CRC最大支持12000 bytes大小的字節(jié),超過了就沒有辦法檢查了。另外還有其他一些協(xié)議如NFS等的限制。

  最后需要注意的是,在經(jīng)過交換網(wǎng)絡(luò)設(shè)備時(shí),僅僅修改主機(jī)端的MTU值是不行的,還需要交換網(wǎng)絡(luò)設(shè)備上開啟jumbo frames功能。

  四、MTU測(cè)試

  使用ping命令,-l 指定包大小,-f 選項(xiàng)為通知操作系統(tǒng)不能私自更改該數(shù)據(jù)包大小

  使用英文操作系統(tǒng)時(shí)的提示為:Packet needs to be fragmented but DF set .

看過“linux怎么修改mtu值”的人還看了:

​1.路由器mtu值怎么設(shè)置

2.友訊路由器MTU值配置方法

3.netgear路由器怎么設(shè)置mtu值

4.騰達(dá)路由器n300修改mtu值

5.tenda無線路由器n4mtu值修改

6.tendan4路由器mtu值修改

962219