组播网络构建:IGMP、PIM 原理及应用实践

IP组播基础

组播基本架构

组播IP地址

  • 一个组播IP地址并不是表示具体的某台主机,而是一组主机的集合,主机声明加入某组播组即标识自己需要接收目的地址为该组播地址的数据
  • IP组播常见模型分为ASM模型和SSM模型
  • ASM:成员接收任意源组播数据,主机仅需加入组播组,不关注数据源,适用于新闻公告发布等对数据源无要求的场景 。
  • SSM:成员指定接收特定源组播数据,需主机加入组时指定源地址,适用于视频会议等需明确数据源的场景。

组播MAC地址

组播MAC地址与单播MAC地址的区别:

IANA规定,IPv4组播MAC地址的高24位为0x01005e,第25位固定为0。

组播IP与MAC的映射

  • 需要组播IP地址与组播MAC地址的自动映射。
  • MAC地址的低23bit为组播IP地址的低23bit

映射导致的问题

组播IP地址映射成组播MAC地址时,会导致32个组播IP地址对应一个组播MAC的问题。

IGMP协议原理与配置(路由器与主机之间)

  • IGMP(Internet Group Management Protocol)因特网组管理协议,是TCP/IP协议族中负责IP组播成员管理的协议,它用来在接收者和与其直接相邻的组播路由器之间建立、维护组播组成员关系。
  • IGMP协议运行于主机与组播路由器之间
  • IGMP协议的作用:
    • 主机侧:通过IGMP协议向路由器通告组成员关系
    • 路由器侧:通过IGMP协议维护组成员关系。

IGMPv1的工作机制

  • 普遍组查询与响应
  • 响应抑制机制。

IGMPv1成员加入

  • 主机申请加组。

IGMPv1问题一:组成员离开

  • 静默离开。

IGMPv1问题二:查询器选举

  • 查询器选举依赖于组播路由协议

IGMPv2的工作机制

IGMPv2对IGMPv1的改进:组成员离开

IGMPv2对IGMPv1的改进:查询器选举

  • 独立的查询器选举机制。

IGMPv1和IGMPv2报文比较

SSM模型中的新需求

  • 只接收特定源发送的组播数据

IGMPv3的工作机制

IGMP各版本间的差异

IGMP Snooping的工作机制

  • 组播数据在二层被泛洪,造成:
    • 网络资源浪费。
    • 存在安全隐患。
  • 使能IGMPSnooping机制后,查询响应仅向路由器接口转发

PIM协议原理与配置 (路由器和路由器之间)

PIM(Protocol IndependentMulticast)直接利用单播路由表的路由信息进行组播报文RPF检查,创建组播路由表项,转发组播报文。

PIM-DM的工作机制

  • 采用"推(Push)模式"转发组播报文
  • PIM-DM的关键任务:
    • 建立SPT(Shortest Path Tree,最短路径树)
  • PIM-DM的工作机制:
    • 邻居发现。
    • 扩散与剪枝。
    • 状态刷新。
    • 嫁接。
    • 断言。

PIM-DM邻居发现

PIM-DM构建SPT

  • 扩散过程。
  • RPF检查。
  • 剪枝过程。

PIM-DM状态刷新

  • 周期性地刷新剪枝状态。

PIM-DM Graft机制 (嫁接)

  • 新的组成员加入组播组后,快速得到组播报文。

PIM-DM Assert机制 (断言)

  • 避免重复组播报文

PIM-DM的局限性

  • PIM-DM适用于组播成员分布较为密集的园区网络。
  • PIM-DM的局限性:
    • 在组播成员分布较为稀疏的网络中,组播流量的周期性扩散会给网络带来较大负担。

PIM-SM的工作机制

PIM-SM基本概述

  • 使用"(Pull)模式"转发组播报文
  • PIM-SM的关键任务:
    • 建立RPT(RendezvousPointTree,汇聚点树也称共享树),
    • 建立SPT(Shortest Path Tree,最短路径树)。
  • 适用于组播成员分布较为稀疏的网络环境。

汇聚点RP (Rendezvous Point)

  • 充当RPT树的根节点。
  • 共享树中的所有组播流量都经过RP转发给接收者。
  • 所有PIM路由器都要知道RP的位置。

RPT及其建立过程

组播接收者侧DR与组播源侧DR

SPT的建立过程

  • SPT建好之后,组播报文沿SPT到达RP

( * ,G)与(S,G)条目关系

PIM-SM的转发树

SPT和RPT构成组播报文的转发路径,存在哪些问题?

Switchover机制

与组播接收者相连的DR负责向RP发送单播join消息 ,与组播源相连的DR负责向RP发送单播Register消息

相关推荐
DianSan_ERP5 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅5 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
2501_946205525 天前
晶圆机器人双臂怎么选型?适配2-12寸晶圆的末端效应器有哪些?
服务器·网络·机器人
linux kernel5 天前
第七部分:高级IO
服务器·网络
数字护盾(和中)5 天前
BAS+ATT&CK:企业主动防御的黄金组合
服务器·网络·数据库
~远在太平洋~5 天前
Debian系统如何删除多余的kernel
linux·网络·debian
unfeeling_5 天前
Keepalived实验
linux·服务器·网络
坐吃山猪5 天前
OpenClaw04_Gateway常见问题
网络·gateway·openclaw
上海云盾商务经理杨杨5 天前
2025年重大网络安全事件回顾与趋势分析
网络·安全·web安全
kylezhao20195 天前
C# 的开闭原则(OCP)在工控上位机开发中的具体应用
网络·c#·开闭原则