You need to enable JavaScript to run this app.
文档中心
云服务器

云服务器

复制全文
下载 pdf
巨型帧与MTU管理
管理网卡MTU值
复制全文
下载 pdf
管理网卡MTU值
概念
概念
说明
相关文档
MTU
MTU(Maximum Transmission Unit)是指在网络通信中,单个数据链路层的数据帧能承载的最大数据量。
-
PMTU
PMTU(Path Maximum Transmission Unit )是指源主机至目的主机传输路径中最小的MTU。
-
PMTUD
PMTUD(Path Maximum Transmission Unit Discovery)是利用IP协议的分片与重组机制,结合ICMP协议反馈的路径信息,动态探测源主机至目的主机传输路径中最小MTU的技术。
修改MTU
操作说明
火山引擎网卡的MTU值默认为1500字节。
当网卡默认的MTU值无法满足需求时(如流量镜像),您需要手动修改网卡的MTU值。
警告
非必要情况下,不建议修改MTU值。因为修改网卡的MTU值可能导致数据被分片或丢弃。
操作步骤
CenOS
Ubuntu
Windows
以CentOS 7.9为例,操作步骤如下:
  1. 远程登录云服务器,详细请参见 登录实例
  1. 执行ifconfig命令,查看网卡的MTU值。 回显如下图:
  1. 执行以下命令,设置网卡eth0的MTU值。
  • mtu=<MTU值>
    echo "${mtu}" > /sys/class/net/eth0/mtu
    echo "echo \""${mtu}"\" > /sys/class/net/eth0/mtu">> /etc/rc.d/rc.local && chmod +x /etc/rc.d/rc.local
  • 本文示例如下图:
  1. 执行ifconfig命令,查看是否生效。回显如下图:
手动探测PMTU
以CentOS 7.9为例,操作步骤如下:
  1. 远程登录云服务器,详细请参见 登录实例
  1. 执行以下命令,探测源主机到目的主机的最小MTU值。
  • ping -c 1 -M do -s [包大小] 目的地址
  • -c 1:仅发送一个探测包。
  • -M do:不允许该探测包分片。
  • -s [包大小] :发送的探测包大小。测试1500字节MTU(1472包大小 + 20字节IP头 + 8字节ICMP头)。
  • 示例:ping -c 1 -M do -s 1472 192.168.1.66
  1. 若成功ping通,则调整探测包大小,若返回ICMP错误信息,则得到PMTU。
开启/关闭PMTUD
在传输路径上所有设备均开启PMTUD的情况下,源主机向目的主机发送数据包,若途中某个设备(如路由器)的MTU小于数据包,则它会将数据进行分片,并返回一个ICMP消息(其中包含了它的MTU)给源主机,源主机的应用程序可据此进行适配,主动调整数据包大小,避免传输过程中因被分片而影响网络性能。了解更多
操作说明
请确保传输路径上所有设备均放通PMTUD的ICMP消息,如源/目的主机的安全组、网络ACL、防火墙等。
操作步骤
以CentOS 7.9为例,操作步骤如下:
  1. 远程登录云服务器,详细请参见 登录实例
  1. 输入以下命令,查看是否开启PMTUD。
  • sysctl net.ipv4.ip_no_pmtu_disc
  • 若返回值为0,则表示PMTUD已开启,若返回值为1,则表示PMTUD已关闭。
  1. 开启和关闭的操作如下:
  • 开启:执行以下命令,开启PMTUD。
  • sysctl -w net.ipv4.ip_no_pmtu_disc=0
  • 关闭:执行以下命令,关闭PMTUD。
  • sysctl -w net.ipv4.ip_no_pmtu_disc=1
最近更新时间:2025.08.19 11:39:15
这个页面对您有帮助吗?
有用
有用
无用
无用