PPPOE拨号下MTU设置
由于以太网传输电气方面的限制,每个以太网帧都有最小的大小64bytes最大不能超过1518bytes,对于小于或者大于这个限制的以太网帧我们都可以视之为错误的数据帧,一般的以太网转发设备会丢弃这些数据帧。(注:小于64Bytes的数据帧一般是由于以太网冲突产生的“碎片”或者线路干扰或者坏的以太网接口产生的,对于大于1518Bytes的数据帧我们一般把它叫做Giant帧,这种一般是由于线路干扰或者坏的以太网口产生)
以太网帧长范围为64-1518。这是由以太网的物理特性决定的,以太网中的最小帧长是根据网络中检测冲突的最长时间决定的。
根据IEEE 802.3规定,一个典型的以太网帧是由下列几个部分组成:
其中Pad部分是可以变长的,从Dest. MAC Address (目的MAC地址)至Frame Check Sequence (FCS检查位)最小长度为64byte
MTU所指的为IP数据包总长度。 MTU大小范围为64-1500。(从MAC Client Data开始到Pad结束)
不同的上网方式支持不同的MTU,下面列出了一些上网方式的MTU值:
EtherNet(一般上网方式,默认值):1500
PPPoE/ADSL:1492
Dial Up/Modem:576
所介绍的方法是修改MTU值来优化网络数据的传输.首先,当然是先解释一下什么是MTU和MRU的设置原理.
MTU的意思是:最大传输单元。这是一个数据包能够传送的最大字节量的上限。网络层通常不发送包含的字节数比限定值低的数据包,以便于取得更高效率,所以这个设定的低和高,指明了数据包的尺寸。
如此说来MTU可以向两个方向设置:MTU设置的大和小,不过问题在于:MTU设定得越大,越多的数据在被发送之前就会被缓存起来,因此客户端就以较低的频率发送数据包,这很不爽,因为直到一个数据包被传送到服务器以前,这个数据包所代表的玩家的行为不会发生任何实际效果,因为服务器还不知道。数据包过大从一台电脑传到另外一台电脑的时候,它们通常会经过只支持小得多的MTU的网络连接。这就要求大数据包被拆解,发送,重新装配,这无疑提高了数据传送需要的时间。
而如果MTU设定的越小就会产生另一个问题:因为每一个数据包都有一个40字节的头,包含重要的控制信息。这样,推论就是,如果MTU很小,头会吃掉大量的有效带宽,例如,一个完美的56k modem连接可以上传4200字节每秒。如果MTU尺寸被设定到90,头是40,这是整个数据包尺寸的44%。如果4200字节的44%都用于传送头,这只保留了2772字节给客户端实际传送的数据。
那么,客户端不得不改变cl_rate到2772并且减低每秒向服务器的更新次数,因为它只有很少的有效带宽.这样同样大小的数据传输时间将更加长.
所以可以看到,优化网络的关键在于对MTU值的设置.
所建议的修改方式是:将MTU值修改为1492,因为原因是PPPoE接入方式的ADSL MTU值是1492.不过这种设置是不可取的.在使用pppoe播号接入ADSL的如果ADSL MTU值为1492的话,数据传输情况如下
TCP/IP 应用字节 1492
PPP 头字节 +2
PPPoE 头字节 +6
Ethernet 头字节 +18
总传输字节 1518
因此当使用1492时实际应是1518字节.当一个数据包转换为ATM流(PPPOE拨号所传输数据的封包模式)时,会被分成53字节的单元.(其中48字节用户数据,其他为ATM头信息).于是1518 / 48 = 31个单元 + 30字节.与以太网不同,ATM单元使用固定的长度53.因此在前面的31个单元中的每个都会包括48字节用户数据.在最后的一个单元中,包括30字节数据,还有一个 8字节的SAR尾部说明如何重组这1518字节的数据包.为了维持单元的固定长度,最后的单元中还必须填上10个字节,这就造成了带宽的浪费.
如果将MTU设置为1454的话:
TCP/IP 应用字节 1454
PPP 头字节 +2
PPPoE 头字节 +6
Ethernet 头字节 +18
总传输字节 1480
这样的话,1480/48=30单位+40字节.在前面的30个单元中的每个都会包括48字节用户数据。在最后的一个单元中,包括40字节数据,还有一个8字节的SAR尾部,恰好48字节,完全消除了浪费。
了解至此之后,大家就可以开始优化自己的网络了.将上文提到的帖子里面的1492改为1454应该会有部分的提高把,但是大家不要期望提高得太大哦!
当然,也可以这样设置(win98如此设置,win2000/xp设置同此原理):点击开始菜单里的“运行”,输入“regedit”后回车,进入注册表。
依次展开:{HKEY_LOCAT_MACHINE/System/CurrentControlSet/Services/Class/NetTrans/},会看到包含几个000X的子项,寻找含有键名为“DriverDesc”,键值为“TCP/IP”的000X主键,该键里有该计算机的网络属性设置,如IP地址192.168.0.XX,网关192.168.0.1,子网掩码255.255.255.0等。在该键下新建“DWORD值”,命名为“MaxMtu”,修改键值为十进制的1454设置完毕,重新启动计算机.
这样设置之后,不但可以有效的提高网络速度,还可以解决因为MTU值使用windows默认(1500)造成的部分网站无法访问的问题.
在最后要提醒大家的就是:修改有风险,动手须谨慎!
PPPOE拨号下MTU设置相关推荐
- 终端上网_手机如何设置路由器PPPoE拨号上网 手机设置路由器PPPoE拨号上网方法【介绍】...
一般情况下,我们使用电脑来设置路由器.如今,手机.Pad已经普及,操作起来非常便捷;更重要的是您不需要连接网线.配置电脑等繁复操作,只需要连接Wi-Fi后,进行简单的设置. 本文介绍使用手机设置TP- ...
- 以太网和PPPOE网络下MTU和MSS的关系
MTU: Maxitum Transmission Unit 最大传输单元 MSS: Maxitum Segment Size 最大分段大小 PPPoE: PPP Over Ethernet(在以太网 ...
- 解决 openwrt/Lede pppoe拨号频繁掉线的问题
我自己的软路由是J1900刷的lede,近期电信pppoe拨号频繁掉线,排除了网线,更换了光猫,最终锁定软路由为的问题.目前才用了下面的方法,尝试解决该问题 转载自http://ninecmd.com ...
- pppoe 服务器 无线,无线路由器怎么设置PPPOE拨号【图文讲解】
1.如果是电话线到家,首先把路由器的WAN口和Modem的LAN口连接起来,电脑网卡连接路由器任意一个LAN口;如果是网线到家,就直接把网线接到路由器WAN口. 然后为电脑设置网络参数,指定IP地址, ...
- tp link拨号失败 服务器无响应,pppoe拨号失败解决方法_pppoe怎么设置
描述 pppoe拨号失败解决方法 1.可能是ISP(网络服务提供商)服务器故障,如果是这样请直接致电ISP询问并解决问题. 2.确认输入的用户名和密码是否正确,是不是因为不小心开启了Caps Lock ...
- esxi服务器下虚拟机Ubuntu系统搭建PPPoE拨号服务
一 设备环境 物理机:ESXI服务器(四网卡) 虚拟Ubuntu系统 (添加2张网卡)--搭建PPPoE拨号服务 虚拟Win10系统 (一张网卡)----测试 物理机:台式机win7系统---测试 ...
- linux 路由器pppoe拨号,linux下pppoe拨号上网
Linux下的ADSL拨号上网大体有2种方法:一是用系统自带的图像界面(在网络里面建立新拨号连接,类似于WIN下),一是用命令行.下面呢我就主要介绍一下在命令行环境下设置上网. 一.解压缩 #tar ...
- 动态IP(DHCP)、静态IP、拨号(PPPOE)三种上网设置区别
动态IP(DHCP).静态IP.拨号(PPPOE)三种上网设置区别 一.动态IP(DHCP) 动态IP上网,又叫做DHCP上网.自动获取IP上网.动态IP这种上网方式,在未使用路由器的情况下,只需要 ...
- 路由器如何设置pppoe拨号上网
新购买的路由器如何设置,怎么自动拨号.怎么设置wifi.怎么修改默认登录名称与密码?成为很多人的困扰,甚至被蹭网,无奈原本就不通畅的宽带变得回归到n年前的龟速!怎么办? 路由器设置pppoe拨号上网的 ...
- 在Linux操作系统下的PPPoE拨号上网
由于培训班的教室网络是拨号上网,我把虚拟机装进了esxi主机里,由于笔记本还要用红蜘蛛接收老师的上课投屏,所以就需要用到centos7集群的拨号上网,于是就有了以下的折腾经历. 1.搜寻PPPoE相关 ...
最新文章
- runtime系统的Cello
- 分别是什么意思_你知道抗震支架T和TL分别代表什么意思?
- json知识中的数据契约
- Android通过意图使用内置的音频播放器
- 一篇不错的讲解Java异常的文章(转载)
- 【解决办法】安装Exchange2010时报错 - “UserMailbox 必须强制使用Database”
- Micropython 如何用Turnipbit做一个自动浇水装置
- Django(part9)--GET请求
- 【转载】Deferred Shading
- 【深度学习】之Caffe的solver文件配置(转载自csdn)
- c++编程求解二元二次方程组_二元一次方程组及其解法
- android中listview刷新数据,Android动态刷新listview中的数据?
- MySQL基础(2)----DDL DML DQL语言完成数据库的增删改查操作 数据备份(导入导出sql包) 单表查询
- iOS福利软件、P J软件、限免软件分享网站
- 一个由“2020年1月7日 京东出现的重大 Bug 漏洞“引起的思考......
- Apache POI Word中复制表格
- 新手想做IT运维工程师该详细学习哪些知识?
- 缓存穿透、击穿、雪崩什么的分不清楚?看了这篇文章后,我明白了
- 净利率远低同行,诺威健康如何在CRO跑道上争排位?
- java vbs_一键定位配置JAVA SDK 环境变量 VBS脚本全自动操作正式开源