Linux 查看与修改mtu值 您所在的位置:网站首页 怎么查看网口名称 Linux 查看与修改mtu值

Linux 查看与修改mtu值

2024-03-21 05:50| 来源: 网络整理| 查看: 265

MTU:通信术语  最大传输单元(Maximum Transmission Unit)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。  我们在使用互联网时进行的各种网络操作,都是通过一个又一个“数据包”传输来实现的。而MTU指定了网络中可传输数据包的最大尺寸,在我们常用的以太网中,MTU是1500字节。超过此大小的数据包就会将多余的部分拆分再单独传输 。 MTU的设置不是一个值天下通用,所以需要我们合理设置特殊场景的MTU 。

首先确认什么是不合理的 : 1.本地MTU值大于网络MTU值时,本地传输的数据包过大导致网络会拆包后传输,不但产生额外的数据包,而且消耗了“拆包、组包”的时间 。 2.本地MTU值小于网络MTU值时,本地传输的数据包可以直接传输,但是未能完全利用网络给予的数据包传输尺寸的上限值,传输能力未完全发挥 。 这样我们就知道: 所谓合理的设置MTU值,就是让本地的MTU值与网络的MTU值一致,既能完整发挥传输性能,又不让数据包拆分。

 

检测需要设置的合理的值:

大部分网络设备都是1500。如果本机的MTU比网关的MTU大,大的数据包就会被拆开来传送,这样会产生很多数据包碎片,增加丢包率,降低网络速度。把本机的MTU设成比网关的MTU小或相同,就可以减少丢包 

Linux OS:# ping -s 1472 -M do 172.21.0.118 含义: 发送大小包大小是1472(+28)字节,禁止路由器拆分数据包。 【 1472 + 8(ICMP回显示请求和回显应答报文格式长度) + 20(IP首部) = 1500 】 回复结果: 1.如果正常回复,说明网络允许最大MTU就是1500字节,与系统默认相同,只需将自己的路由的MTU也设置为1500即可。 2.如果没正常回复,说明数据包大小超过了网络限定的MTU大小。需要减小探测包大小再次尝试。

MTU设置与查看:

1、设置本机的mtu,即时生效,重启后失效 # ifconfig eth0 mtu 1472

2、永久生效的修改方法,缺点是需要重启网卡

# vim  /etc/sysconfig/network-scripts/ifcfg-eth0   增加如下内容

MTU="9000"

# service network restart

查看设置后的结果  # netstat -i   或使用ifconfig也可以查看得到

--------------------------------------------------------------------

MSS: Maxitum Segment Size 最大分段大小

MSS最大传输大小的缩写,是TCP协议里面的一个概念。 MSS就是TCP数据包每次能够传输的最大数据分段。为了达到最佳的传输效能TCP协议在建立连接的时候通常要协商双方的MSS值,这个值TCP协议在实现的时候往往用MTU值代替(需要减去IP数据包包头的大小20Bytes和TCP数据段的包头20Bytes), 通讯双方会根据双方提供的MSS值得最小值确定为这次连接的最大MSS值。

 

而一般以太网MTU都为1500, 所以在以太网中, 往往TCP MSS为1460。

 

转自: https://www.cnblogs.com/wjoyxt/p/6873714.html?utm_source=itdadao&utm_medium=referral



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有