PIM-SM简介

技术背景

PIM-DM(PIM Dense Mode)适用于组播接收者较为密集的网络。

它采用一种“粗犷”地方式将组播流量先扩散到全网(初始时,会假设全网的每一个组播分发树(SPT)分支都存在组播接收者,发送组播流量时,流量会扩散至全网),不需要组播流量的分支而是通过剪枝的方式将自己从SPT上剪除。这个特点使得PIM-DM只适用于一些规模较小、接收者较为密集的网络。

解决方法

与PIM-DM不同,PIM-SM (PIM Sparse Mode,PIM稀疏模式))则适用于组播接收者较为分散、规模较大的网络。

初始过程中,PIM-SM并不会像PIM-DM那样主动向网络中扩散组播流量,而是那些需要组播流量的分支必须主动通过朝着RP的方向发送PIM加入报文,将自己拉到RPT上,从而形成RPT的一个分支,然后才能从RPT上接收组播流量。

RP ( Rendezvous Point )

  • 在PIM-SM组网环境时,有一个关键设备需要格外关注,那就是RP ( Rendezvous Point ),这是一个类似于组播流量汇聚点的概念,通常是网络中某台性能较好的设备。
  • 和SPT不同,SPT以组播源做为树根;但是RPT以RP做为树根,以它为分界点,可以将组播网络划分为两部分:一部分是从RP到组播接收者,另一部分则是从组播源到RP。
  • RP的作用非常重要,一方面它从组播源接收组播流量;另一方面,需要组播流量的组播路由器朝着RP的方向发送PIM加入报文,从而在自己与RP之间构建 RPT的一段分支,随后RP负责将其从源接收的组播流量沿着RPT转发下去。
  • 一个RP可以同时为多个组播组服务。

PIM-SM示例

如下图的拓扑网络中:

  1. R2被指定为组播组G的RP,网络中的所有组播路由器都知晓这个对应关系。(BSR选举+RP选举)

  2. 现在组播源Source开始向组播组G发送组播流量。

  3. 当第一跳路由器R1收到组播流量后,会将其封装在单播报文中发往RP,这个过程被称为组播源注册过程。

  4. 如果组播报文持续以这种方式从R1发往RP显然是非常低效的,因此如果RP需要这些组播流量(假设已经有组播路由器向其申请组播流量),那么接下来它会在自己与第一跳路由器之间构建一棵 SPT,以便从后者直接接收组播流量(而不是被封装在单播报文中的组播流量)。SPT构建完成后,从Source发出的组播流量直接沿着SPT转发到RP。
    在这里插入图片描述

  5. RP收到组播流量后,如果网络中没有任何接收者,那么这些流量将直接被丢弃。

  6. 假如现在PC1宣布加入组播组G,R6发现该组成员后,开始朝着RP的方向构建RPT的分支。

  7. R6会向上游邻居R4发送(* , G) PIM加入报文,之所以向R4发送这个报文,是因为R6通过查询自己的单播路由表发现到达RP的下一跳是R4,所以R6试图通过R4将自己拉入到RPT。

  8. R4收到这个加入报文后,也会向自己的上游邻居R2发送(* , G) PIM加入报文(如下图所示),

  9. R2本身就是RP,如此一来,RPT的一段分支就构建好了。
    在这里插入图片描述

  10. 如果Source发出的组播流量到达RP后,RP将它们沿着RPT转发下去,直至流量到达接收者。

协议报文类型

在这里插入图片描述

发布了17 篇原创文章 · 获赞 1 · 访问量 219

猜你喜欢

转载自blog.csdn.net/mn3321/article/details/105673461
PIM