在 vSphere 6.0 及更高版本中,vSphere Distributed Switch 支持与单个多播组相关的多播数据包筛选的基本和侦听模式。根据交换机上虚拟机订阅的多播组数量选择模式。
多播筛选模式
除了用于筛选多播流量的默认基本模式外,vSphere Distributed Switch 6.0.0 及更高版本还支持多播侦听。多播侦听可以根据虚拟机中的 Internet 组管理协议 (IGMP) 和多播侦听器发现 (MLD) 消息以更精确的方式转发多播流量。
基本多播筛选
在基本多播筛选模式下,vSphere 标准交换机或 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 的多播侦听模式下,虚拟机在单个交换机端口上最多可接收 512 个组和 10 个源的多播流量。
在 vSphere Distributed Switch 上启用多播侦听
使用 vSphere Distributed Switch 上的多播侦听,根据虚拟机发送以订阅多播流量的 Internet 组管理协议 (IGMP) 或多播侦听器发现 (MLD) 成员资格信息以精确的方式转发流量。
如果交换机上的虚拟化工作负载订阅超过 32 个多播组或必须从特定源节点接收流量,请使用多播侦听。有关 vSphere Distributed Switch 的多播筛选模式的信息,请参见多播筛选模式。
前提条件
确认 vSphere Distributed Switch 为 6.5.0 或更高版本。
过程
- 在 vSphere Client 主页上,单击网络,然后导航到 Distributed Switch。
- 从操作菜单中,选择 。
- 在显示交换机设置的对话框中,单击高级。
- 在多播筛选模式下拉菜单中,选择 IGMP/MLD 侦听,然后单击确定。
结果
编辑多播侦听的查询时间间隔
在 vSphere Distributed Switch 上启用 IGMP 或 MLD 多播侦听时,交换机会发送有关虚拟机成员资格的常规查询,以防未在物理交换机上配置侦听查询器。在连接到 Distributed Switch 的 ESXi主机上,可以编辑交换机发送常规查询的时间间隔。
发送侦听查询的默认时间间隔为 125 秒。
过程
- 在 vSphere Client 中,导航到主机。
- 在配置选项卡上,展开系统,然后选择高级系统设置。
- 单击编辑。
- 找到 Net.IGMPQueryInterval系统设置,然后为该设置输入新值(以秒为单位)。
- 单击确定
编辑 IGMP 和 MLD 的源 IP 地址数量
在 vSphere Distributed Switch 上启用 IGMP 或 MLD 多播侦听时,可以编辑多播组成员从中接收数据包的最大 IP 源数。
过程
- 在 vSphere Client 中,导航到主机。
- 在配置选项卡上,展开系统,然后选择高级系统设置。
- 单击编辑。
- 找到 Net.IGMPV3MaxSrcIPNum 或 Net.MLDV2MaxSrcIPNum 系统设置 ,然后为该设置输入介于 1 到 32 之间的新值。
- 单击确定。