目录

要求

使用的组件

选项 1：主机范围配置

选项 2：vNIC特定配置

选项 3：  解决方法

简介

本文档介绍在ESXi 6.7 update 2及更高版本上实施的虚拟vmxnet3网络接口卡(vNIC)上的最大传输单位(MTU)检查。

先决条件

要求

Cisco 建议您了解以下主题：

- ESXi中的VMWare虚拟机网络配置

- 思科会议服务器(CMS)命令行界面(CLI)

使用的组件

本文档中的信息基于作为虚拟机运行的CMS。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

本文档特别指CMS，但会影响任何符合浮动要求的虚拟机：

- ESXi 6.7版更新2或更高版本

- vmxnet3适配器正在使用

- 虚拟机vNIC级别的MTU更改

背景信息

在ESXi版本6.7 update 2及更高版本中，平台的默认行为被强制执行以对接收路径执行MTU检查，并且不允许大于vNIC的MTU大小的数据包。

在此版本之前，未执行此检查，这会增加在使用vmxnet3 vNIC的虚拟机(VM)上更改MTU大小时丢包的可能性。

例如，如果vSwitch设置为接收MTU 1500 字节，但VM的vNIC MTU降至1300 字节，并且接收大于1300 字节的数据包，则此数据包会被丢弃或丢弃。

问题：当MTU大小降低时可能丢包

在ESXi版本6.7更新2及更高版本上运行Cisco Meeting Server(或在vNIC级别修改MTU并使用vmxnet3适配器)VM的环境，当MTU因此默认行为更改而降低时，可能会遇到丢包问题。

在CMS主板管理处理器(MMP)配置上使用命令iface <interface> mtu <value>降低MTU，然后在vNIC上设置该值，以降低网络中数据包的延迟。

有关这些更改的更多详细信息，请参阅此VMware文章。

解决方案

以下是有助于解决此问题的选项。

注意：选项1和2要求ESXi环境已安装ESXi670-201912001的补丁版本，以便该选项可用于修改MTU检查的vmxnet3配置。有关此信息的详细信息，请参阅补丁版本的版本说明。下面的文字引用了。

"PR 2409342：您不能选择在vmxnet3后端禁用最大传输单位(MTU)检查，使数据包长度不超过vNIC MTU

使用ESXi670-201912001，您可以选择在vmxnet3后端禁用最大传输单位(MTU)检查，使数据包长度不超过vNIC MTU。默认行为是执行MTU检查。但是，如果使用vmxnet3，由于此检查，您可能会看到丢弃的数据包增加。有关详细信息，请参阅VMware知识库文章75213。

此问题在此版本中已解决。”

选项 1：主机范围配置

如前所述，此选项要求安装修补程序版本(ESXi670-201912001)。以下详细信息直接从VMware文档75213的解决方案部分获取。

esxcli系统设置高级设置 — o "/Net/vmxnet3NonTsoPacketGtMtuAllowed" -i 1

注意：此配置适用于所有vmxnet3 vNIcs（主机范围）。 然后，此设置将应用于进行此更改后打开的每个VM。

选项 2：vNIC特定配置

如前所述，此选项要求安装修补程序版本(ESXi670-201912001)。以下详细信息直接从VMware文档75213的解决方案部分获取。

"在vmx文件中使用ethernet0.rxAllowPktGtMtu = "1":

其中应将“ethernet0”替换为要应用配置的特定vNic。

请使用VMware KB文章，按照“如何：

使用vSphere客户端(1016098)KB修改高级虚拟机设置。”

选项 3：  解决方法

对于解决方法选项，您可以选择恢复应用/VM上的MTU配置，以便其设置为接收网络中接受的内容。

例如，如果vSwitch设置为接收MTU大小为1500，则虚拟机vNIC必须设置为与此匹配。如果环境运行CMS，则必须将接口MTU设置为预期值。

例如：面对在CMS MMP上配置的mtu 1500。

另一个选项是确保网络已配置，以便到达vNIC的数据包不超过vNIC的设置MTU值。这需要在整个网络中完成，以确保正确设置分段。

相关信息

- 技术支持和文档 - Cisco Systems