除了用于筛选多播流量的默认基本模式外,vSphere Distributed Switch 6.0.0 及更高版本还支持多播侦听。多播侦听可以根据虚拟机中的 Internet 组管理协议 (IGMP) 和多播侦听器发现 (MLD) 消息以更精确的方式转发多播流量。

基本多播筛选

在基本多播筛选模式下,vSphere Standard Switch 或 vSphere Distributed Switch 根据多播组的目标 MAC 地址转发虚拟机的多播流量。加入多播组时,客户机操作系统会通过交换机将该组的多播 MAC 地址向下推送到网络。交换机会将端口和目标多播 MAC 地址之间的映射保存在本地转发表中。

交换机不会解释虚拟机发送以加入或离开组的 IGMP 消息。交换机会将这些消息直接发送至本地多播路由器,后者随后会解释这些消息以加入虚拟机或将虚拟机从组中移除。

基本模式具有以下限制:

  • 虚拟机可能会从未订阅的组中接收数据包,因为交换机会根据多播组的目标 MAC 地址转发数据包,这可能会映射到多达 32 个 IP 多播组。

  • 从超过 32 个多播 MAC 地址订阅流量的虚拟机会由于转发模式限制而接收未订阅的数据包。

  • 交换机不会根据 IGMP 版本 3 中定义的源地址筛选数据包。

多播侦听

在多播侦听模式下,vSphere Distributed Switch 按照 RFC 4541 提供 IGMP 和 MLD 侦听。通过使用 IP 地址,交换机可以更精确地分派多播流量。此模式支持 IGMPv1、IGMPv2 和 IGMPv3(对于 IPv4 多播组地址)以及 MLDv1 和 MLDv2(对于 IPv6 多播组地址)。

交换机可动态检测虚拟机的成员资格。虚拟机通过交换机端口发送包含 IGMP 或 MLD 成员资格信息的数据包时,交换机会创建一条组目标 IP 地址的记录;如果是 IGMPv3,则会创建一条虚拟机首选从中接收流量的源 IP 地址的记录。如果虚拟机在某段时间内不续订某个组的成员资格,则交换机会从查找记录中移除该组的条目。

在 Distributed Switch 的多播侦听模式下,虚拟机在单个交换机端口上最多可接收 256 个组和 10 个源的多播流量。