M‑LAG + 三层 PIM 组播,文档要求同时使能二层组播 (IGMP‑Snooping) 和三层组播 (PIM‑SM)原理;传统三层组播源侧为什么不需要 IGMP/IGMP‑Snooping
用户疑问:传统 PIM‑SM,组播源侧路由器不需要 IGMP、IGMP‑Snooping;但 M‑LAG 做三层组播时,文档强制要同时开启二层 + 三层组播,底层原理是什么?
1、传统普通单机 PIM‑SM(非 M‑LAG)
传统单台三层 PIM 路由器:
组播源侧:路由器对接组播源的三层接口,只需要使能pim sm,不需要 igmp enable,也不需要 vlan 下 igmp‑snooping enable。
IGMP 只用于最后一跳路由器和接收主机之间,用来收集主机 Report 报文;组播源这边没有主机成员,根本没有 IGMP 报文交互。
三层 PIM 路由直接根据组播路由表(S,G)/(*,G)做三层转发,二层只是透传,不需要二层组播表项。
结论:普通单机环境,源侧只需要三层 PIM,二层组播可以不配置。
2、M‑LAG 系统的本质矛盾(为什么必须同时开二层 + 三层组播)
M‑LAG 是两台物理设备虚拟成一台逻辑设备,控制面分离,表项不完全实时同步;peer‑link 只负责部分表项同步,三层组播 PIM 表项不会完整跨设备同步。
场景:上行设备双归 M‑LAG 两台设备(A、B),组播流量负载分担,一部分报文进 A,一部分进 B。
如果只开启三层 PIM,不开启二层 IGMP‑Snooping:
组播报文从 M‑LAG 聚合口进来,A 收到一部分组播报文,生成 (S,G) 表项;B 收到另一部分报文,生成 (S,G) 表项。
PIM 三层组播路由表不会通过 peer‑link 同步。A 的组播表项不会同步给 B,B 的不会同步给 A。
当接收者只挂在 A 设备上:B 收到的那一份组播报文,B 本地三层组播表虽然存在,但 B 不知道本 M‑LAG 系统内接收者在 A;B 无法把流量交给 A 转发。
后果:部分组播流量丢弃、时通时断、丢包、部分组播组不通。
开启二层 IGMP‑Snooping(二层组播)之后:
IGMP‑Snooping 的组播二层表项,会通过 peer‑link 在 M‑LAG 两台设备之间完成同步。
不管组播报文是从 A 还是从 B 的 M‑LAG 接口进入 M‑LAG 系统;
二层 Snooping 表项知道:该组播组的接收成员在A 设备的某个端口;
B 收到的组播副本,依靠二层组播转发表,把流量通过 peer‑link 转发给 A,再由 A 转发给接收主机;
A 收到的组播报文本地直接转发给接收主机。
✅关键点:
M‑LAG 三层组播模式下,三层 PIM 负责生成 (S,G)/(*,G) 组播路由表,完成 PIM 协议邻居、RPF、RP、Join 报文处理;二层 IGMP‑Snooping 负责跨设备把组播流量副本送到 M‑LAG 系统内真正有接收者的那台物理设备。
二者分工:
三层 PIM:处理 PIM 协议、生成组播路由、和外部 PIM 域交互;
二层 IGMP‑Snooping:M‑LAG 两台设备之间,同步组播出端口信息,把流量副本跨 peer‑link 送到成员所在设备。
文档原话:“需要同时使能二层组播和三层组播功能,三层组播支持 M‑LAG 功能才能生效”,本质就是:
PIM 三层负责路由协议;IGMP‑Snooping 二层表项解决 M‑LAG 双设备之间组播流量副本投递问题。只开三层 PIM,两台 M‑LAG 设备之间不知道接收者在哪台,流量丢包。
3、容易混淆的两个点
不是在 Vlan‑if 接口下配置igmp enable(三层 IGMP);而是VLAN 视图下igmp‑snooping enable(二层窥探)。
源侧 M‑LAG 网关 Vlan‑if 不需要igmp enable,但是对应 VLAN 必须开启 igmp‑snooping。
M‑LAG 单向隔离机制(peer‑link 收到 BUM 报文不再回 M‑LAG 成员口),但不阻止 peer‑link 向对端转发组播给对端本地端口,这正是 M‑LAG 组播依赖的行为。
4、补充两种典型 M‑LAG 三层组播场景
场景 A:接收者在 M‑LAG 系统下(最后一跳 M‑LAG)
Vlan‑if(接收网关):pim sm + igmp enable(三层 IGMP,处理主机 report)
VLAN 视图:igmp‑snooping enable(二层组播,M‑LAG 跨设备同步端口)
场景 B:组播源接入 M‑LAG 系统(源侧 M‑LAG)
Vlan‑if(源网关):pim sm,不需要 igmp enable(没有接收主机)
VLAN 视图:必须配置 igmp‑snooping enable(M‑LAG 跨设备流量副本投递,否则部分流量丢弃)
这就解释用户疑问:传统单机源侧不需要任何二层组播;但 M‑LAG 源侧,哪怕没有接收主机,对应 VLAN 也要开启 igmp‑snooping,服务 M‑LAG 跨设备转发逻辑。
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论