PIM SM模式下BSR与RP选举机制

PIM SM模式下BSR与RP选举机制

BSR作用:

BSR:bootstarp router 管理动态选举RP。选举出BSR,BSR然后向整个网络通告自己的存在。PIM-SM路由器侦听BSR洪泛的通过,并保存BSR信息。而C-RP(候选RP)则向BSR发送候选通告。BSR收集所有的C-RP信息,将汇总的信息进行全网洪泛。PIM-SM路由器会收到BSR洪泛的信息,根据相同的算法计算出组播组和RP的映射关系。

BSR通过多个C-BSR(候选BSR)通过PIM自举(bootstarp)选举而出,根据优先级、最大IP作为条件依次选举。

RP作用:

RP:rendezvous point 组播流量汇聚点。1、组播源以单播的形式向RP注册,从组播源接收流量,构建组播源到RP的SPT。2、组播路由器向RP发起PIM加入报文,构建自己与RP之间的RPT。最后一条路由器接收到组播流量后,RFC检查通过后,会自动触发RPT向SPT切换机制。RP可以通过静态指定,也可以通过动态选举。

实验如下图:

R1-R6之间使用OSPF协议,接口建立PIM-SM 邻居,各个接口之间为30位掩码IP互联。

R2:为C-RP,组播范围为239.0.0.0/24,优先级为100;R3:为C-RP,优先级为0,组播范围为默认224.0.0.0/4。

R4:为C-BSR,哈希掩码长度默认为30,优先级为100;R5:为C-BSR,哈希掩码长度默认为30,优先级为0。

MSC1:239.0.0.10;MSC2:238.0.0.10,PC1:192.168.1.2,PC2:192.168.1.3

配置如下:

R1:
#
multicast routing-enable
#

#
interface Ethernet0/0/0
 description MSC1
 ip address 192.168.0.1 255.255.255.252
 pim sm
#
interface Ethernet0/0/1
 description to-r2
 ip address 192.168.0.9 255.255.255.252
 pim sm
#
interface GigabitEthernet0/0/0
 description to-r3
 ip address 192.168.0.13 255.255.255.252
 pim sm
#
interface GigabitEthernet0/0/1
 description MCS2
 ip address 192.168.0.5 255.255.255.252
 pim sm
#
interface LoopBack0
 ip address 1.1.1.1 255.255.255.255
#
ospf 1
 area 0.0.0.0
  network 192.168.0.0 0.0.0.3
  network 192.168.0.8 0.0.0.3
  network 192.168.0.12 0.0.0.3
  network 192.168.0.4 0.0.0.3
#
-----------------------------------------------
R2:
#
multicast routing-enable
#
acl number 2000
 rule 5 permit source 239.0.0.0 0.0.0.255
#
#
interface Ethernet0/0/0
 description to-r1
 ip address 192.168.0.10 255.255.255.252
 pim sm
#
interface Ethernet0/0/1
 description to-r3
 ip address 192.168.0.18 255.255.255.252
 pim sm
#
interface GigabitEthernet0/0/0
 description to-r4
 ip address 192.168.0.21 255.255.255.252
 pim sm
#
#
interface LoopBack0
 ip address 2.2.2.2 255.255.255.255
 pim sm
#
ospf 1
 area 0.0.0.0
  network 192.168.0.8 0.0.0.3
  network 192.168.0.16 0.0.0.3
  network 192.168.0.20 0.0.0.3
  network 2.2.2.2 0.0.0.0
#
pim
 c-rp LoopBack0 group-policy 2000 priority 100 ///loopback0需要使能pim,优先级100,组播范围为ACl2000限制(239.0.0.0/24)
#
----------------------------------
R3:
#
multicast routing-enable
#
interface Ethernet0/0/0
 description to-r1
 ip address 192.168.0.14 255.255.255.252
 pim sm
#
interface Ethernet0/0/1
 description to-r2
 ip address 192.168.0.17 255.255.255.252
 pim sm
#
interface GigabitEthernet0/0/0
 description to-r5
 ip address 192.168.0.25 255.255.255.252
 pim sm
#
#
interface LoopBack0
 ip address 3.3.3.3 255.255.255.255
 pim sm
#
ospf 1
 area 0.0.0.0
  network 192.168.0.12 0.0.0.3
  network 192.168.0.16 0.0.0.3
  network 192.168.0.24 0.0.0.3
  network 3.3.3.3 0.0.0.0
#
pim
 c-rp LoopBack0 ////优先级默认为0,组播组默认范围224.0.0.0/4
#
---------------------------------
R4:
#
multicast routing-enable
#
interface Ethernet0/0/0
 description to-r2
 ip address 192.168.0.22 255.255.255.252
 pim sm
#
interface Ethernet0/0/1
 description to-r5
 ip address 192.168.0.29 255.255.255.252
 pim sm
#
interface GigabitEthernet0/0/0
 description to-r6
 ip address 192.168.0.33 255.255.255.252
 pim sm
#
#
interface LoopBack0
 ip address 4.4.4.4 255.255.255.255
 pim sm
#
ospf 1
 area 0.0.0.0
  network 192.168.0.20 0.0.0.3
  network 192.168.0.28 0.0.0.3
  network 192.168.0.32 0.0.0.3
  network 4.4.4.4 0.0.0.0
#
pim
 c-bsr priority 100 ////BSR优先级为100,哈希掩码长度默认30
 c-bsr LoopBack0 ////loopbackp0必须使能pim sm
#
----------------------------------------
R5:
#
multicast routing-enable
#
#
interface Ethernet0/0/0
 description to-r4
 ip address 192.168.0.30 255.255.255.252
 pim sm
#
interface Ethernet0/0/1
 description to-r3
 ip address 192.168.0.26 255.255.255.252
 pim sm
#
#
interface GigabitEthernet0/0/0
 description to-r6
 ip address 192.168.0.37 255.255.255.252
 pim sm
#
#
interface LoopBack0
 ip address 5.5.5.5 255.255.255.255
 pim sm
#
ospf 1
 area 0.0.0.0
  network 192.168.0.24 0.0.0.3
  network 192.168.0.28 0.0.0.3
  network 192.168.0.36 0.0.0.3
  network 5.5.5.5 0.0.0.0
#
pim
 c-bsr LoopBack0 ////BSR优先级为默认值0,哈希掩码长度默认30,loopbackp0必须使能pim sm
#
---------------------------------
R6:
#
multicast routing-enable
#
interface Ethernet0/0/0
 description to-r5
 ip address 192.168.0.38 255.255.255.252
 pim sm
#
interface Ethernet0/0/1
 description to-r4
 ip address 192.168.0.34 255.255.255.252
 pim sm
#
interface GigabitEthernet0/0/0
 description to-user
 ip address 192.168.1.1 255.255.255.0
 pim sm
 igmp enable  ////最后一跳路由器,使能igmp。
#
interface LoopBack0
 ip address 6.6.6.6 255.255.255.255
 pim sm
#
ospf 1
 area 0.0.0.0
  network 192.168.0.36 0.0.0.3
  network 192.168.0.32 0.0.0.3
  network 192.168.1.0 0.0.0.255
#

PC1加入238.0.0.10;PC2加入239.0.0.10时:

在R6已经由RPT切换到SPT,其中SPT ACT标志。针对与238.0.0.10的RP为3.3.3.3,239.0.0.10的RP为2.2.2.2。

RP以及BSR选举结果如下:

组播组与RP的映射关系

1、BSR选举机制

C-BSR以组播(239.0.0.13)洪泛PIM自举报文。1、C-BSR优先级,值大者优选;2、C-BSR的IP(均配置为loopback地址),IP大者优选。

2、动态RP选举机制

    2.1、C-RP所服务的组播组范围与该组播组地址匹配度最长的C-RP胜出。即239.0.0.0的RP为2.2.2.2

    2.2、组播组范围相同,C-RP优先级最小的胜出。

    2.3、C-RP优先级相同,将组播组地址、BSR哈希掩码、C-RP地址作为哈希函数参数,得出哈希值最大的胜出。

    2.4、如果哈希值相等,则C-RP的Ip地址最大的胜出。

3、DR选举后,断言机制

R6会收到R4和R5相同的组播源的组播报文,此时触发断言机制,选举出DR,由DR负责组播报文转发。选举出R5作为DR。这样就避免了收到重复发报文。组成员所在的网段中的DR负责向RP发起RPT加入。同时,组播源所在的网段中方的DR负责向RP发起组播源注册过程。

选举机制:

  3.1、DR优先级 pim hello-option dr-priority 

  3.2、优先级相同,比IP大的胜出。

  3.3、对方若不支持hello携带DR优先级,就比IP大的胜出。

3、RPT与SPT切换

组播源向R1发送组播报文,R1(DR)通过单播报文向RP发起组播源注册(register),此单播报文封装了源、组播组;

RP通过解封注册报文,得到组播源。RP与组播源建立起SPT。SPT构建完成后,RP收到组播流量,此时向R1发送PIM注册停止报文,R1停止发送注册报文.

PC1宣告加入组播组,发送组成员关系查询报告宣布加入组播组,R6收到IGMP的组成员关系查询报文后,在PIM路由表中创建(*,238.0.0.10)表项。R6向RP(R3)发起加入RPT,R4和R5通过DR选举,R5胜出。R5作为RPT进行组播报文转发。R6与R3之间构成RPT。当R6收到第一个组播报文后,会立即触发RPT切换SPT,以达到最优路径问题。

即:MSC2-R1-R3-R5-R6-PC2。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章