您可以使用端口镜像分析网络流量以进行调试或故障排除。通过端口镜像,可以将分段端口(或整个分段)上出现的所有网络数据包或特定数据包复制到另一个分段端口。
您可以创建以下端口镜像会话类型:
- 本地 SPAN
- 远程 SPAN
- 远程 L3 SPAN
- 逻辑 SPAN
请注意,仅覆盖网络逻辑交换机支持逻辑 SPAN,而 VLAN 逻辑交换机则不支持。
如果将大量流量镜像到一个监控虚拟机,则驱动程序的缓冲区环可能会变满并丢弃数据包。为了缓解该问题,您可以采取下面的一个或多个措施:
- 增加接收缓冲区环大小。
- 为虚拟机分配更多 CPU 资源。
- 使用数据平面开发工具包 (Data Plane Development Kit, DPDK) 提高数据包处理性能。
注: 请确保监控虚拟机的 MTU 设置足够大,能够处理数据包。这对于封装的数据包特别重要,因为封装增加了数据包大小。否则,可能会丢弃数据包。具有 VMXNET3 网卡的 ESXi 虚拟机不会出现该问题,但其他类型的网卡可能会出现该问题。
在 NSX 4.2 之前,ENS 快速路径仅支持远程 L3 SPAN。如果创建了本地 SPAN 或远程 SPAN (Remote SPAN, RSPAN) 会话,生产数据包将通过 pktHandle 慢速路径。从 NSX 4.2 开始,ENS 快速路径同时支持本地 SPAN 和 RSPAN。
该功能具有以下限制:
- 源镜像端口不能位于多个镜像会话中。
- 对于本地 SPAN 会话,镜像会话源和目标端口必须位于同一主机 vSwitch 上。因此,如果通过 vMotion 将具有源或目标端口的虚拟机移到另一个主机,则无法再镜像该端口上的流量。
- 对于本地 SPAN 和 RSPAN 目标会话,不允许镜像目标端口上的正常流量。
- 在 ESXi 上,如果在上行链路上启用了镜像,则 VDL2 使用 Geneve 协议将原始生产 TCP 数据包封装为 UDP 数据包。支持 TSO(TCP 分段卸载)的物理网卡可以更改这些数据包,并使用 MUST_TSO 标记来标记这些数据包。在具有 VMXNET3 或 E1000 vNIC 的监控虚拟机上,该驱动程序将数据包视为常规 UDP 数据包,而无法处理 MUST_TSO 标记并丢弃这些数据包。
- IPFIX 不会对镜像数据包进行采样,而且流跟踪和实时流量分析不会跟踪镜像数据包。
- 如果您计划创建 RSPAN 会话,建议在整个网络中预留一些 VLAN 以用作 RSPAN VLAN。不要为这些 VLAN 分配分段端口。RSPAN VLAN 必须是专用 VLAN,不应用作交换 VLAN 或传输 VLAN。如果您已将 RSPAN VLAN 作为传输、交换或中继 VLAN 包含在会话中,则在升级到 NSX 4.2 期间,您会收到错误,而无法更新 RSPAN 源和目标会话中的这些 RSPAN VLAN。
- 您最多可以为 RSPAN 目标会话创建 16 个 RSPAN VLAN。
- 不能将一个 VLAN 作为跨多个 RSPAN 目标会话的镜像源包含在会话中。
- RSPAN 目标不会监控 vNIC 输入流量。
- 您必须在 RSPAN 源上实施镜像筛选,而不能在 RSPAN 目标上实施,因为 RSPAN 目标用于接收镜像数据包。如果在升级到 NSX 4.2 之前已为 RSPAN 目标配置了镜像筛选,则必须移除镜像筛选配置。
前提条件
确认在 NSX Manager 用户界面中选择了管理器模式。请参见NSX Manager。如果看不到策略和管理器模式按钮,请参见配置用户界面设置。