MTU是什么意思
MTU是什么意思
The Maximum-Receive-Unit (MRU)最大接收单元
* \; d+ g  B1 m  X <本贴来自:海南大学城bbs.hndxc>   PPPOE的最大接收单元为1492,以太网最大载荷为1500 octets,PPPOE头为6 octets,PPP协议ID为2 octets,所以PPP的MTU最大不能超过1492 <本贴来自:海南大学城bbs.h> + ( X  _8 i% r- j! |, i  [ <本贴来自:海南大学城bbs.hndxc>
1 W* y8 L1 |. k! Z <本贴来自:海南大学城bbs.hndxc> 一、修改MTU值加快网页打开速度 <本贴来自:海南大学城bbs.hndxc> 0 C. r6 K8 b' O& {
什么是MTU值? <本贴来自:海南大学城bbs.hndxc> " [, b" i. K3 K' ?2 q<本贴来自:海南大学城bbs.hndxc> ) J" z. @" O' d9 a; v8 E
MTU是Maximum Transmission Unit的缩写。意思是网络上传送的最大数据包。MTU的单位是字节。大部分网络设备的MTU都是1500。如果本机的MTU比网关的MTU大,大的数据包就会被拆开来传送,这样会产生很多数据包碎片,增加丢包率,降低网络速度。把本机的MTU设成比网关的MTU小或相同,就可以减少丢包。6 @7 c4 L- x4 i! z9 e/ F2 D$ X( I <本贴来自:海南大学城bbs.hndxc> <本贴来自:海南大学城bbs.hndxc> * C+ A& R6 M* w. u( K$ e
如何检测网关的MTU? <本贴来自:海南大学城bbs.hndxc> ( q. h( ?' \- P) n2 Z/ l" e+ s
<本贴来自:海南大学城bbs.hndxc> 8 r0 t' \& n) X7 M% v1 |
在本机打开dos窗口,执行: ping -f -l 1472 192.168.0.1 其中192.168.0.1是网关IP地址,1472是数据包的长度。请注意,上面的参数是“-l”(小写的L),而不是“-1”。如果能ping通,表示数据包不需要拆包,可以通过网关发送出去。如果出现: Packet needs to be fragmented but DF set. 表示数据包需要拆开来发送。此时,减少数据包长度,再执行上面的ping命令。从1400到1472之间多试几次,就能到合适的数据包长度了。把数据包长度加上数据包头28字节,就得到MTU的值。如果检测到网关的MTU值是1500,不需要修改。如果网关有防火墙ping不通,可以试试直接把MTU设为1400。 <本贴来自:海南大学城bbs.hndxc> ! i3 j$ L) W/ W: [) M

. E) ]* B4 r0 W9 ?# C# s; q <本贴来自:海南大学城bbs.hndxc> 如何修改本机的MTU? <本贴来自:海南大学城bbs.hndxc> & K; I! ^  k  Q) ~  d
<本贴来自:海南大学城bbs.hndxc> 2 ?6 n) Q: h9 v+ L& e# y
修改方法如下:
9 r" [* {/ @  K' } <本贴来自:海南大学城bbs.hndxc> (1)、运行regedit
+ T; u5 E$ R1 ]2 W" \7 p <本贴来自:海南大学城bbs.hndxc> (2)、浏览到: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces <本贴来自:海南大学城bbs.hndxc> : ~9 \0 e, ?! N+ H( ]4 j: D+ o
(3)、Interfaces下有多个子项,每个子项对应一个网卡。请按如下方法选择网卡: <本贴来自:海南大学城bbs.hndxc> 0 l* g9 q6 A* a
(a)确定本机用来连接Internet的网卡或拨号连接的IP,如192.168.0.19;
+ l$ E6 \5 e" j# C <本贴来自:海南大学城bbs.hndxc> (b)用鼠标点击Interfaces上的子项,查看键值列表中的IPAddress项;
& s% E- O7 j2 o! A. q6 K1 G <本贴来自:海南大学城bbs.hndxc> (c)如果IPAddress的键值与(a)中的IP相同,即192.168.0.19,则该子项就是要的网卡。 <本贴来自:海南大学城bbs.hndxc> 8 S3 X( u0 y$ g! D6 |3 g
(4)、进入该子项,在右边的窗口里按鼠标右键,选择“新建”->“双字节值”,输入名称“MTU”,按回车。再用鼠标双击“MTU”,弹出修改窗口,填入合适的MTU的值。填写前请先把基数设为十进制。设置好后,需要重启机器才能生效。 <本贴来自:海南大学城bbs.hndxc> ; u% k2 @$ A3 h. v) n

  l" i1 V4 l$ T! p <本贴来自:海南大学城bbs.hndxc> 实例修改 <本贴来自:海南大学城bbs.hndxc> 5 S, F6 M/ c6 p* Z
<本贴来自:海南大学城bbs.hndxc> , z& R1 E; R( w2 L# @
在我们常用的Windows XP操作系统中,系统默认的MTU值为1500,这是一个标准以太网的设置值,并不适合宽带网络,而一般ADSL宽带的MTU在1450与1492之间,系统与ISP之间MTU的不符就会直接导致数据在网络传输过程中不断地进行分包、组包,浪费了宝贵的传输时间,也严重影响了宽带的工作效率。这就要求我们必须将本机MTU值设为与ISP所使用的MTU值一样后才能快速浏览网页、下载数据。但是,每个地区的ISP所使用的MTU值都不相同,同时ISP也会不定期地更改局端MTU大小,这给我们设置本机MTU带来了很大的不便,那么我们怎样才能知道ISP的MTU是多少呢?其实,我们平时最常用的Ping命令就能很方便地帮我们测试出本地ISP的MTU大小,如果大家感兴趣,就请跟随笔者一起来看看吧。
4 I6 T% E- s& K5 O( q% ^ <本贴来自:海南大学城bbs.hndxc>   <本贴来自:海南大学城bbs.hndxc> . q- e+ y) }, h8 j
  在广域网上,大小超出ISP要求的数据包将无法传输,而操作系统则会根据本机MTU值自动将大小不符合要求的数据进行分包处理再进行传输,所以我们可以通过向Internet上的某台主机发送一个定长数据包,并且不允许操作系统更改其大小的方式去检查该数据包能否被正常传输,如果数据包小于或等于ISP的MTU值时,传输就能正常进行,而如果发送的数据包大于ISP使用的MTU值时,传输就会失败,这样我们就能通过不断发送不同大小的数据包最终得到ISP端的MTU大小,而这个数据再加上28字节的包头信息就是我们需要的最终MTU值。 <本贴来自:海南大学城bbs.hndxc> 8 S' q3 {; ~" f

8 |7 H0 e$ [! }! c <本贴来自:海南大学城bbs.hndxc>   测试步骤
7 f2 e5 C5 F" g. X. H9 Y% U <本贴来自:海南大学城bbs.hndxc> <本贴来自:海南大学城bbs.hndxc> ; ?& V$ O3 K; q9 F* O+ v8 }
  1. 上网,并打开“开始”菜单→“程序→附件→命令提示符” <本贴来自:海南大学城bbs.hndxc> ; J' ?( J6 H5 M8 E+ C0 \3 e
<本贴来自:海南大学城bbs.hndxc> 9 g' r- t! D) \0 S
  2. 输入命令“ping –l 14xx –f www.163 ”,这里我们解释一下命令参数的含义 <本贴来自:海南大学城bbs.hndxc> 5 V# {& {7 u5 C2 ^$ {% p# a% h

: t; B' e; ~; z' c, ~. P$ C- j0 q <本贴来自:海南大学城bbs.hndxc>   * –l 14xx参数:发送一个定长数据包,14xx是要测试的包大小,如前所述,ADSL的MTU一般在1450与1492之间,第3步中将每次更换一次该值 <本贴来自:海南大学城bbs.hndxc> ; P7 X2 B" X! _" ~8 a# T$ z& \

# u7 d  i. q: l6 M <本贴来自:海南大学城bbs.hndxc>   * –f 参数:通知操作系统不能私自更改该数据包大小 <本贴来自:海南大学城bbs.hndxc> ! z! L- ^/ ?- {7 I. t4 v. m$ N
<本贴来自:海南大学城bbs.hndxc> 4 ?. X. A9 R# Y, P5 F# W/ U
  * www.163:任意一台Internet上的主机,也可使用其它主机名或IP地址
5 D! j9 a8 I" X" `' n' P5 H <本贴来自:海南大学城bbs.hndxc> <本贴来自:海南大学城bbs.hndxc> + Y) v# F  V$ S3 o3 m# X; U( \
  3. 观察反馈结果并判断ISP的MTU值 <本贴来自:海南大学城bbs.hndxc> " S6 }8 _( X) l  K& s4 s6 S% |/ }  k
<本贴来自:海南大学城bbs.hndxc> . M- _2 x9 Y6 H
  1) 第一次发送测试包,包长1450 <本贴来自:海南大学城bbs.hndxc> . v) N) V) G( y# Y6 x

5 x# L4 r! u, g  j <本贴来自:海南大学城bbs.hndxc>   假设提示数据包过大,需要分包,因此判断该数值(1450)大于ISP的MTU,应降低包大小 <本贴来自:海南大学城bbs.hndxc> 6 ?6 v6 [( [  z) J) @
<本贴来自:海南大学城bbs.hndxc> $ I6 f. g$ d. \4 v7 e, u
  2) 第二次发送测试包,包长1440
bbs是什么意思6 S! r8 @. K& v# y: A* F$ l <本贴来自:海南大学城bbs.hndxc>
5 Q6 E6 V6 D* ?; {% i! l <本贴来自:海南大学城bbs.hndxc>   假设数据包大小降为1440,提示应为数据包过大,因此判断该值(1440)仍大于ISP的MTU,还应继续降低
- ^2 X2 m$ T& b7 _ <本贴来自:海南大学城bbs.hndxc>
  P( e+ |% e% H+ x  ^  x/ p9 g. v <本贴来自:海南大学城bbs.hndxc>   3) 第三次发送测试包,包长1430 <本贴来自:海南大学城bbs.hndxc> H4 Q2 A6 X  r! F0 K

; u8 K6 e$ M7 B+ b5 |, l, R9 Q/ @ <本贴来自:海南大学城bbs.hndxc>   假设数据包大小降为1430,提示该数据包可以正常传输,因此判断ISP的MTU值在1440~1430之间
" u, d* X( C0 c0 ] <本贴来自:海南大学城bbs.hndxc> <本贴来自:海南大学城bbs.hndxc> , P8 x" C3 G' C4 q
  4) 第四次发送测试包,包长1435
7 K1 f% M# T4 G; Z, P <本贴来自:海南大学城bbs.hndxc> <本贴来自:海南大学城bbs.hndxc> 5 W% [" }2 m+ R/ J
  假设数据包大小升为1435,提示仍然可以正常传输,因此判断MTU数值在1440~1435之间 <本贴来自:海南大学城bbs.hndxc> % F$ q( g. O5 _5 U5 x
<本贴来自:海南大学城bbs.hndxc> 7 r' E5 |7 H1 H( Y1 V' ^3 R
  5) 第五次发送测试包,包长1438
, O0 a) x0 d: K, G2 [ <本贴来自:海南大学城bbs.hndxc>
* e) e( @  K: ?! k <本贴来自:海南大学城bbs.hndxc>   假设数据包大小升为1438,提示可正常传输,因此判断MTU数值在1440~1438之间
; W) |5 Y$ A4 V6 M) V8 A. @ <本贴来自:海南大学城bbs.hndxc>
9 s  c& |" F# c <本贴来自:海南大学城bbs.hndxc>   6) 第六次发送数据包,包长1439
* Z' x" _3 q' C- V <本贴来自:海南大学城bbs.hndxc> <本贴来自:海南大学城bbs.hndxc> 9 R6 _( o* E" j
  假设数据包大小升为1439,提示因数据包过大无法传输,因此,判断出该ISP的MTU值为1438 <本贴来自:海南大学城bbs.hndxc> / Y$ ?7 a( Z$ ~; \5 |: ?# L% {

- B' m. O# ~" C2 l  Q  H <本贴来自:海南大学城bbs.hndxc>
, W8 U. M; ]6 P# k <本贴来自:海南大学城bbs.hndxc>   4. 计算本地电脑的MTU值 <本贴来自:海南大学城bbs.hndxc> . d& G, }, M' q7 d; y% r

; ~3 t: k3 b/ C2 ?* T <本贴来自:海南大学城bbs.hndxc>   上面得到的MTU值不能直接用于本地设置上,还应在此基础上加上28(包头大小),因此最终的MTU数值为14 <本贴来自:海南大学城bbs.hndxc> 3 z3 D8 T# t7 W7 H: w' T0 r

3 q" y: \' _$ [9 ?) V <本贴来自:海南大学城bbs.hndxc>   5. 修改本机MTU值
/ s& P4 c; Y% _- z7 h <本贴来自:海南大学城bbs.hndxc> <本贴来自:海南大学城bbs.hndxc> ; v2 z  Q6 I6 V6 t( p1 E) q
  修改本机默认的MTU值可以通过注册表来进行,但更直观稳妥的方法是使用一些系统优化软件,如“超级兔子”或“Windows优化大师”等。首先选中“使用最大传输单元”前面的勾,然后再从后面的数据栏中输入计算出的MTU值(14 )后点击确定并重启电脑即可。
- [, C! d" E5 \  Z1 [ <本贴来自:海南大学城bbs.hndxc>
; W: A& `, r) D( r, V% R <本贴来自:海南大学城bbs.hndxc> <本贴来自:海南大学城bbs.hndxc> ; c) N: Q  O1 Z: F6 j0 t
  总结 <本贴来自:海南大学城bbs.hndxc> $ t2 x7 P, }' M( c3 F$ m# `

1 w1 z6 r* @$ Q1 X( r, C4 G <本贴来自:海南大学城bbs.hndxc>   如上所述,整个过程可能看起来挺烦琐,但思路十分简单,而且效果不错。笔者的电脑设置了MTU值后,浏览器打开页面的速度较未设置前提高了15%,效果还是很明显的。推荐PPOE的拨号ADSL使用,对于光纤接入或ISDN接入的宽带网络不适用此法。
% k% J! G6 F+ Q <本贴来自:海南大学城bbs.hndxc>
; L( m4 J0 Y! S$ X, m <本贴来自:海南大学城bbs.hndxc> 二、优化TCP/IP缓存
+ T' @/ U& t7 k. [2 U4 Y <本贴来自:海南大学城bbs.hndxc> 在TCP/IP传输过程中,收到的数据包被系统先默认放到缓存当中,然后再将它恢复为数据。如果某个数据包发生错误,整个缓冲区里的数据都会被丢掉。将缓冲区改小就可以减少每次数据包错误造成的损失。启动注册表编辑器,修改其中的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
! v# S! Z% B3 _1 q* T% D4 H0 V9 F <本贴来自:海南大学城bbs.hndxc> \VxDMSTCP项,在它之下新建字符串值“DefaultRcvWindows”并设置为“256000”,您电脑的TCP/IP缓存就调整好了。
' m4 p) K* P5 S6 m  R' o <本贴来自:海南大学城bbs.hndxc>
: ^( m. C3 P& P. @7 t <本贴来自:海南大学城bbs.hndxc> 三、重建本地DNS缓存 <本贴来自:海南大学城bbs.hndxc> & [6 o# K8 [4 m( d+ j

& v+ S" K$ K1 N& H1 | <本贴来自:海南大学城bbs.hndxc> 我们上网时要连接DNS服务器来解析域名,而为了提升访问速度系统会自动将DNS服务器解析过的结果存到本地的DNS缓存里。默认情况下XP系统会把成功访问的网站记录保持1天,而访问失败的网站记录会保持15分钟。系统每次访问网站时都先在DNS缓存里查地址再连接DNS服务器,所以一旦DNS失效或者网站有故障,15分钟之内系统都会以为该网站无法访问而直接返回“不到服务器”。单击开始菜单的“运行”栏,在对话框输入“cmd”,随后在控制台输入“ipconfig /flushdns”,就可以让系统清除掉DNS缓存。这样做可以解决上特定的网站时快时慢的问题。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。