说起 MTU 值,可能许多朋友连听都没听说过。简单来说,我们上网时所进行的操作,都是通过传输一个又一个“数据包”来实现的,而 MTU 值就是用来设定可传输数据包的最大尺寸的。很显然,MTU 值设置得过大或过小,都会在一定程度上影响我们上网的速度。

那么,MTU 值究竟设为多大才最合适,我们们又该如何设置 MTU 值呢?

一、什么是 MTU 值

  1. 从字面上来说,MTU 是英文 Maximum Transmission Unit 的缩写,即最大传输单元,它的单位是字节。在我们常用的以太网中,MTU 一般是 1500,而无线路由器默认一般是 1492,蓝牙官网的默认值是 672(这个速度很慢了,大约 20k/s 左右)。
  2. 2为什么说 MTU 值会影响网速呢?在此简单说明一下。在 Win 系统中,MTU 值默认是 1500。假设我们现在要传输 3000 字节的数据,只需要拆分成 2 个数据包就行了。而如果是 ADSL 接入方式,它的 MTU 值是 1492 的话,则 3000 字节的数据需要分为 3 个数据包传送。由于数据包的数量增多了,同时拆包组包都需要额外消耗时间,因此网速变慢也就不足为奇了。

二、怎样测出自己当前网络最佳MTU值

敲下 “Win键+R”,然后在运行窗口后输入“cmd”,再敲回车键。




ios蓝牙的mtu是多少 蓝牙mtu设置_win10巨帧数据包在哪里设置


在命令提示符窗口输入以下命令(建议直接复制,以免误将小写字母 l 写为数字 1),输好之后敲击回车。

ping -l 1472 -f www.baidu.com

这条命令的意思是向 www.baidu.com(百度主页)发送一个探测请求,请求将一个不允许分割的 1472 字节的数据包发送出去。


ios蓝牙的mtu是多少 蓝牙mtu设置_命令提示符_02


要是出现传输失败,提示需要拆分数据包的情况,就说明当前网络的 MTU 值要比指定的 1472 小,因此我们就适当调小数据包的大小(比如 1450),再发送一条类似的命令。


ios蓝牙的mtu是多少 蓝牙mtu设置_命令提示符_03


如果出现传输成功,就说明当前网络的 MTU 值比 1450 要大。于是我们需要稍微调大数值(比如1460),以便求得最为精确的网络 MTU 值。


ios蓝牙的mtu是多少 蓝牙mtu设置_数据_04


然后通过不断修正数据包的大小,最终得到当前网络的 MTU 值。比如小编我这里,测试 1464 通过,但 1465 失败,所以小编的网络 MTU 值为 1464。

在此需要特别说明的是,当设置本地 MTU 值,必须牢记要将这个测得的值再加上 28,即 1464+28 = 1492。


ios蓝牙的mtu是多少 蓝牙mtu设置_回车键_05


三、怎样设置路由器MTU值

关于路由器的MTU设置,进入路由器后,在网络参数中打开wan口设置,然后点击高级设置,打开后修改mtu即可,如图所示:


ios蓝牙的mtu是多少 蓝牙mtu设置_ios蓝牙的mtu是多少_06


四、怎样设置本地MTU值

(关于本机的mtu设置修改,建议大家使用windows优化大师、鲁大师等修改工具)

下的方法适用于Vista、Win7、Win8.1、Win10 操作系统设置 MTU:

首先,查看自己当前网络的 MTU 值,敲击“WIN+R”,在打开的运行窗口输入“netsh interface ipv4 show subinterfaces”再点确定。


ios蓝牙的mtu是多少 蓝牙mtu设置_ios蓝牙的mtu是多少_07


然后就要设置你正在使用网络的 MTU 值,敲击“WIN+R”,在打开的运行窗口输入“netsh interface ipv4 set subinterface "需修改的连接名" mtu=值 store=persistent”再点确定。其中,需修改的连接名 和 值 要用相应的值来代替。例如,我这里需要输入:

netsh interface ipv4 set subinterface "WLAN" mtu=1492 store=persistent

在这里,我已经把要修改的地方用粗体字标出来了。

另外,请大家注意,修改 MTU 值与查看不同,需要以管理员身份运行命令提示符。


ios蓝牙的mtu是多少 蓝牙mtu设置_数据_08


当以管理员身份运行命令提示符时,输入以上命令即可成功设置。友情提示:敲击回车键之后出现“确定”二字即代表已经设置成功。