PowerEdge:QLogic FastLinQ 45XXX 和 41XXX 适配器的 NPAR 限制

摘要: 本文讨论在 QLogic FastLinQ 45XXX 和 41XXX 适配器上配置网络分区 (NPAR) 时的重要注意事项。

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

说明

背景

在网络分区 (NPAR) 模式下,QLogic FastLinQ 45XXX/41XXX 适配器作为多个以太网设备呈现给作系统。这是通过在物理端口上启用多个网络接口卡 (NIC) 分区来实现的,但当单播* 流量的源和目标位于同一主机上时,代价是要仔细设计广播域*。
为了允许同一物理端口上的两个分区之间进行通信,适配器提供了一项称为 Tx 交换的功能。该功能的目标是在两个逻辑分区之间内部转发流量,而不是依赖于源和目标之间的路由。根据 NIC 分区上配置的 MAC 过滤规则进行 Tx 切换。作系统对第 2 层(Mac 到 Mac 或 BUM 流量*)数据路径进行编程。在 ESXi 环境中,NetworkIoChain 管理流量,更准确地说是“负载平衡”组合引擎,该引擎根据 MAC 地址源和目标创建到特定上行链路的数据路径(当流量离开虚拟交换机时)
此行为会导致数据包被丢弃,因为 Tx 交换将数据包转发到组中的上行链路,该上行链路未记录在 NetworkIochain* 的数据路径中。

单播流量* = MAC 地址的已知 MAC 源和已知 MAC 目标 交换机上的表(虚拟或物理)
广播域* = 虚拟交换机、物理交换机、VLAN 和子网都是广播域(第 2 层)
的一部分 BUM* = 广播、未知单播、组播、流量。必须离开虚拟交换机的第 2 层流量。
NetworkIOChain* = https://blogs.vmware.com/vsphere/2018/12/understanding-the-esxi-network-iochain.htmlThis hyperlink is taking you to a website outside of Dell Technologies.

提醒:NPAR 模式不支持以下配置。

 


 

1.使用来自同一端口的分区时,同一主机上的两个虚拟机 (VM) 之间的通信(请参见“图 1”)

如图 1 所示,在此配置中有两个虚拟机:VM1(单播 MAC M1)和 VM2(单播 MAC M2)。VM1 位于虚拟交换机 VS1 后面,而 VM2 位于 VS2 后面。VS1 将 PF0 作为上行链路,而 VS2 将 PF2 和 PF1 作为上行链路。PF0 和 PF2 是 QLogic FastLinQ 41XXX/45XXX 适配器的端口 1 上的两个分区,而 PF1 是端口 2 的一个分区。VS2 PF1 是组中的主动接口,而 PF2 是被动(备用)接口。NetworkIOChain 为 P0 上的 MAC M1 创建数据路径,并为 PF1 和 PF2 上的 M2 编程 IoChain。由于从 VS1 和 VS2 的角度来看,流量被视为未知单播(VS1 只知道自己虚拟机的 MAC 地址,同样适用于 VS2),NetworkIOchain 将该流量标记为 BUM 并记录数据路径,以使用 VM1 的上行链路端口 PF0 和 VM2 的 PF1。
VMkernel 为 P0 上的 MAC M1 编程筛选器,并为 PF1 和 PF2 上的 M2 编程 MAC 滤波器。源自 VM1(源 MAC M1)并发往 VM2(目标 MAC M2)的 NPAR Tx 交换流量始终通过 PF2 环回,因为 VMkernel 已在 PF1 和 PF2 上为 M2 编程了 MAC 滤波器。由于 PF2 上的 MAC 筛选器匹配,流量未发送到线路。但是,到达 PF2 的流量被 vSwitch 丢弃,因为它将进入一个没有匹配规则的内部端口,无法到达预期虚拟机的虚拟 NIC。

图表 — 使用来自同一端口的分区时同一主机上的两个虚拟机之间的通信

可能的解决方案:

I) 使用单独的适配器:为了执行此类配置工作,我们必须在一个组中使用来自两个物理上独立的网络适配器的端口。我们还必须确保网络路径不包括来自同一物理端口的两个 PF。请参阅“图 2”。

图表 — 使用单独的适配器

II) 禁用 NPAR Tx 交换以及外部路由:上述问题可以通过禁用 NPAR Tx 切换来解决。但是,单独禁用 NPAR Tx 交换并不能完全解决问题,因为在某些情况量必须路由回同一端口上的逻辑分区。禁用 NPAR Tx 交换时,需要外部路由。“图 3”详细阐述了此流程。另请参阅下面的问题 #4,了解禁用 NPAR Tx 交换的限制。

图表 — 禁用 NPAR Tx 交换以及外部路由
III) 如何禁用 TX 切换参数:
如果需要禁用 NPAR Tx,则可以通过设置模块参数来完成 npar_tx_switching 更改为 0。

ESXi 示例:

[root@esxi03:~] esxcfg-module -s 'npar_tx_switching=0' qedentv

2.在组中使用来自同一物理端口的两个 PF

不建议使用此配置,因为它不提供弹性和性能。当物理端口上的链路中断时,该端口上的两个 PF 都会受到影响。因此,此配置没有用,因此不建议这样做。

3.依赖于交换机的分组模式,如 LACP

IEEE 802.3ad 链路聚合 (LACP) 等依赖于交换机的组合模式基于每个端口工作,而不是 PCI 功能(也称为物理功能或 PF 级别粒度)。因此,当启用 NPAR 时,不建议使用某些分区(例如 PF0 和 PF1)配置 LACP,而将其余分区用于其他目的。LACP 状态机在主机和交换机上运行,并确定聚合的状态。不属于 LAG 的其他分区不知道状态机更改和有关 LAG 的决策。交换机上配置的负载均衡策略适用于从交换机传输的所有流。由于交换机不知道 NPAR 配置,因此属于不属于 LAG 的其他 PF 的流量会受制于属于 LAG 的分区的设置。这可能会导致一些副作用,例如数据包转发到不正确的 PF、LACP 状态机行为对流量的意外影响等。应该注意的是,可能发生的一些行为取决于交换机端上 LACP 的实施,但一般而言可能会有不良副作用。

4.使用桥接或 L2VPN,将第 2 层以太网帧 QnQ 或 vlan 修改为 vni 等(NSX 等 NFV 解决方案)

这会导致一个循环。如果您计划桥接流量,请确保禁用 NPAR,否则由于在 NetworkIOChain


受影响的产品

Data Center Infrastructure, Network Adapters, Rack Servers, Tower Servers, XE Servers, XR Servers, QLogic Family of Adapters

产品

Data Center Infrastructure, Rack Servers, Tower Servers, XE Servers, XR Servers
文章属性
文章编号: 000225545
文章类型: How To
上次修改时间: 11 12月 2025
版本:  4
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。