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

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

一、什么是 MTU 值

1,从字面上来说,MTU 是英文 Maximum Transmission Unit 的缩写,即最大传输单元,它的单位是字节。

在我们常用的以太网中,MTU 一般是 1500,而无线路由器默认一般是 1492,蓝牙官网的默认值是 672(这个速度很慢了,大约 20k/s 左右)。

2,为什么说 MTU 值会影响网速呢?在此简单说明一下。

在 Win 系统中,MTU 值默认是 1500。假设我们现在要传输 3000 字节的数据,只需要拆分成 2 个数据包就行了。

而如果是 ADSL 接入方式,它的 MTU 值是 1492 的话,则 3000 字节的数据需要分为 3 个数据包传送。由于数据包的数量增多了,同时拆包组包都需要额外消耗时间,因此网速变慢也就不足为奇了。

 

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

1,首先,我们必须明白什么才是最佳的 MTU 值。

1)当本地 MTU 值 > 网络 MTU 值,网络会进行拆包,这样一来数据包数量增多,二来也增加了拆包组包的时间

2)当本地 MTU 值 < 网络 MTU 值,虽然可以直接传输,但是却没有完全利用网络的性能,没有发挥出最大传输能力

因此,设置最合适的本地 MTU 值,就是要让本地 MTU 值 = 网络 MTU 值。

那么,怎样才能知道自己的当前网络环境的 MTU 值是多少呢?下面便来介绍测试方法。

①按下快捷键 Win键+R,打开运行窗口后输入 cmd,回车打开命令提示符窗口。

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

ping -l 1472 -f www.baidu.com

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

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

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

 

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

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

 

三、怎样设置本地MTU值

【Vista、Win7、Win8.1、Win10 操作系统设置 MTU 的方法】

1、查看自己当前网络的 MTU 值,请命令提示符下输入以下命令并回车:

netsh interface ipv4 show subinterfaces

 

2、要设置你正在使用网络的 MTU 值,请在命令提示符下输入以下命令并回车:

netsh interface ipv4 set subinterface "需修改的连接名" mtu=值 store=persistent

其中,需修改的连接名 和 值 要用相应的值来代替。例如,我这里需要输入:

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

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

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

 

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

附:

1)在 Win8.1/10 中以管理员身份运行命令提示符的方法,右击屏幕左下角的Win徽标,在弹出的右键菜单中点击“命令提示符(管理员)”

2)Win7点击开始菜单,在所有程序找到“命令提示符(管理员)”点击运行即可

 
 

>netsh interface ipv4 show subinterfaces

>netsh interface ipv4 set subinterface "连接名" mtu=1340 store=persistent

 

注意事项

不同的网络类型,其MTU有可能不同,大家最好自己动手测试,以找到最合适自己的MTU值。

windows系统下设置mtu值的方法的更多相关文章

  1. windows10系统下设置mtu值的方法

     windows10系统下设置mtu值的方法 http://www.xitongcheng.com/jiaocheng/win10_article_34701.html 以下为服务器上使用  ip ...

  2. [记]Windows 系统下设置Nodejs NPM全局路径

    Windows下的Nodejs npm路径是appdata,担心安装的node_modules越来越多,导致C盘满,所以参考别人的博文,将node_modules安装的默认目录修改一下. 参考Wind ...

  3. Windows系统下MySQL添加到系统服务方法(mysql解压版)

    MySQL软件版本:64位 5.7.12 1.首先配置MySQL的环境变量,在系统环境变量Path的开头添加MySQL的bin目录的路径,以“;”结束,我的路径配置如下: 2.修改MySQL根目录下的 ...

  4. lua在linxu和windows系统下的遍历目录的方法

    在windows下遍历目录使用lfs库:例如遍历整个目录下的所有文件 local lfs = require "lfs" function findPathName(path)  ...

  5. Windows 系统下设置Nodejs NPM全局路径

    Windows下的Nodejs npm路径是appdata,很不爽,想改回来,但是在cmd下执行以下命令也无效 npm config set cache "D:\nodejs\node_ca ...

  6. Windows 系统下设置Nodejs NPM全局路径和环境变量配置

    在nodejs的安装目录中找到node_modules\npm\.npmrc文件 修改如下即可: prefix = D:\tool\nodejs\node_globalcache = D:\tool\ ...

  7. node.js之Windows 系统下设置Nodejs NPM全局路径

    node.js 0.10 版本下修改全局路径: npm config set cache "D:\nodejs\node_cache" npm config set prefix ...

  8. windows系统下npm升级的正确姿势以及原理

    本文来自网易云社区 作者:陈观喜 网上关于npm升级很多方法多种多样,但是在windows系统下不是每种方法都会正确升级.其中在windows系统下主要的升级方法有以下三种: 首先最暴力的方法删掉no ...

  9. MTU介绍以及在windows和linux下怎么设置MTU值

    最大传输单元MTU(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位).最大传输单元这个参数通常与通信接口有关(网络接口卡 ...

随机推荐

  1. Beta冲刺第1次

    二.Scrum部分 1. 各成员情况 张祥 学号:201731062624 今日进展 完善了人脸识别页面效果 存在问题 无 明日安排 视后勤组和web后端情况而定 截图 陈远杨 学号:20173106 ...

  2. AtCoder Beginner Contest 136

    AtCoder Beginner Contest 136 题目链接 A - +-x 直接取\(max\)即可. Code #include <bits/stdc++.h> using na ...

  3. vue-cli配置移动端自适应flexible.js

    第一部分:项目中引入lib-flexible 一.项目中安装lib-flexible npm install lib-flexible --save-dev 二.在项目入口文件main.js中引入li ...

  4. firefox修改user-agent

    让firefox对web服务器伪装成任意浏览器,找一个iphone的useragent,瞬间firefox变身iPhone有木有,一般人我不告诉他嘿嘿 1.firefox地址栏中输入about:con ...

  5. hive中的日期转换函数

    1.unix时间戳转时间函数   语法: from_unixtime(bigintunixtime[, string format]) 返回值: string   说明: 转化UNIX时间戳(从197 ...

  6. C语言中一个语句太长用什么换行?

     C语言中一个语句太长用什么换行? 5 C语言中一个语句太长用什么换行?比如我有一个printf语句很长很长,问了美观,我不想写在这一行了,要换到下一行,是不是在这行结尾的时候,要用个什么标识来表 ...

  7. mysql导出PDM表结构并带有注释

    分享链接:https://www.cnblogs.com/dennyzhangdd/p/5550868.html

  8. 我的首次AK记

    哈哈哈!本蒟蒻终于在今天中午机房测试中AK全场了(其实没啥技术含量,只有5个水题,对,全都很水)

  9. Connected Component in Undirected Graph

    Description Find connected component in undirected graph. Each node in the graph contains a label an ...

  10. solidworks 学习 (二)

    洗手液瓶建模