pimd - 密集模式独立组播


BSD
Linux
C/C++

软件简介

pimd 是一个 Protocol Independent Multicast 路由守护进程,支持 PIMv2-SM .

PIM-DM:密集模式独立组播协议(Protocol Independent Multicast-Dense Mode)

独立组播协议(PIM)有两种模式:稀疏模式和密集模式。本文主要讲述密集模式独立组播协议 (PIM-DM)。

PIM-DM 主要被设计用于组播局域网应用程序,而 PIM-SM 主要用于一个大范围内的域间网络(WAN 和域间)。PIM-DM 使用了和 DVMRP
及其它密集模式一样的溢出和修剪机制。DVMRP 和 PIM-DM 之间的主要不同在于 PIM-DM 主要引入协议独立的观念。PIM-DM
可以使用由任意底层单播路由协议产生的路由表执行反向路径转发(RPF)检查。

ISP 特别需要 PIM-DM 所具有的能使用任意底层单播路由协议的能力,因为它不需要为 RPF
检查引入和管理一个独立的路由协议。单播路由协议扩展为多协议边界网关协议(MBGP)和 IS-IS 多协议路由(M-ISIS)后就被用来建立指定表完成 RPF
检查,但是 PIM-DM 不需要它们。

PIM-DM 能够使用由 OSPF、IS-IS、BGP 等产生的单播路由表。同时在执行 RPF 检查时,PIM-DM 也能够通过配置使用由 MBGP 或
M-ISIS 产生的的指定组播 RPF 表。

协议结构

PIM-DM 协议格式与 PIM-SM 相同:

PIM version Type Reserved (Address length) Checksum
  • PIM version ― 当前 PIM 版本号为2。
  • Type ― 特定 PIM 信息类型。
  • Address length ― 地址大小(二进制形式)。
  • Reserved ― 该字段值设为0,在接收端忽略。
  • Checksum ― 16位字段是整个 PIM 信息的补充总和。