本节介绍了 NSX Advanced Load Balancer 中的巨型帧支持。

NSX Advanced Load Balancer 在服务引擎接口上支持大于 1500 的 MTU。不过,不支持 PMTU 发现。请确保在网络中支持更大的 MTU。

配置 SE MTU

您可以使用服务引擎属性 se_mtu 手动配置以在数据路径中允许巨型帧。在进行手动配置后,范围是 512-9000 之间的用户配置值,并且没有任何默认值。

全局 MTU 是一个 SE 属性,用于在以下情况下限制 MTU:存在一些封装开销,这可能会扩大数据包而超过原始 MTU。您可以出于相同目的将全局 MTU 替换为 se_mtu

如果已配置,se_mtu 始终覆盖全局 MTU。例如,如果将 se_mtu 配置为 9K,则系统不依赖于全局 MTU 值。保留全局 MTU 只是为了保持向后兼容,即,如果在早期版本中配置全局 MTU 并执行升级,全局 MTU 应该仍会生效,除非您稍后配置 se_mtu

您可以在 serviceenginegroup 上为 se_mtu 配置巨型帧大小。这会将服务引擎组中的所有 SE 上的所有 vNIC 的 MTU 更改为该值。如果未设置,该属性与服务引擎属性 global_mtu 保持向后兼容。

如果已配置,则需要将所有 vNIC 的 MTU 设置为 global_mtu 属性;如果未配置,则需要将所有 vNIC 的 MTU 设置为 vNIC 的原始 MTU。

注:

se_mtu 仅影响 SE 接口的 MTU。

确保在数据路径中的所有节点上配置了巨型帧 MTU,以使端到端巨型帧流量正常工作。配置应准确无误,才能获得预期的结果。

配置示例

[admin:10-79-109-168]: > configure serviceenginegroup Default-Group

[admin:10-79-109-168]: serviceenginegroup> se_mtu 9000

[admin:10-79-109-168]: serviceenginegroup> save 

您可以通过 global_mtuse_mtu 配置 MTU,其中,可以通过 serviceengineproperties 配置 global_mtu,并通过 serviceenginegroup 配置 se_mtu。如果设置了这两个字段,则优先使用 se_mtu

要验证是否成功应用配置,请使用 show serviceengine <se-name> interface 命令并检查特定 vNIC 的 vnic_mtu

[admin:vmwareft-ctlr1]: > show serviceengine Avi-se-wmwph interface | egrep  "vnic_name|vnic_mtu"

|   vnic_name                              | eth8                         |
|   vnic_mtu                               | 9000                         |
|   vnic_name                              | eth1                         |
|   vnic_mtu                               | 9000                         |
注:

您无法使用 ifconfig 代码在 NSX Advanced Load Balancer 命名空间中更新 MTU。您只能使用 se_mtu(SE 组属性)或 global_mtu(SE 属性)更新 MTU。

巨型帧 - 支持的接口系列

巨型帧支持

VLAN 接口上的巨型帧支持

NSX Advanced Load Balancer 支持的 Intel 网卡

NSX Advanced Load Balancer 支持的 Mellanox 网卡

NSX Advanced Load Balancer 支持的 Broadcom 网卡

VMXNET3 接口

VIRTIO 接口

NSX Advanced Load Balancer 非 DPDK 运行模式

  • 即使配置了网卡 MTU,KNI MTU 也不能超过 1500。

  • se_mtuglobal_mtuglobal_mtu 是用于配置接口 MTU 的 SE 属性。它可用于容纳任何封装开销,这可能会扩大数据包而超过 1500 MTU。

  • 您可以将 global_mtu 替换为 se_mtu,因为 se_mtu 支持巨型帧。se_mtu 配置参数/字段始终覆盖 global_mtu(如果已配置)。例如,如果将 se_mtu 配置为 9000,则系统不依赖于 global_mtu 值。

注:

保留 global_mtu 只是为了保持向后兼容,即,如果在早期版本中配置 global_mtu 并执行升级,global_mtu 必须仍会生效,除非您稍后配置 se_mtu

有关支持的网卡列表的信息,请参见VMware NSX Advanced Load Balancer 安装指南》准备安装中的系统要求一节。