PIM-SM--RP选举与切换
拓扑
![ca9766ea0150daadcdb740fac842a844.png](https://i-blog.csdnimg.cn/blog_migrate/dc32fe880d842b2fdec39a64ea090624.png)
![d1085d446fae84e1391a2a533326e8c8.png](https://i-blog.csdnimg.cn/blog_migrate/fdf9ea396bb70c70d2163a9844588141.jpeg)
R1(config)#int f0/0
R1(config-if)#ip address 192.168.10.10 255.255.255.0
R1(config-if)#no shut
R1(config-if)#ip igmp join-group 239.1.1.1
R1(config-if)#ip igmp join-group 239.1.1.2
R1(config-if)#no shut
R1(config-if)#ip route 0.0.0.0 0.0.0.0 192.168.10.1
[AR-12]multicast routing-enable //开启此设备的组播转发功能
[AR-12]int g0/0/1
[AR-12-GigabitEthernet0/0/1]pim sm //选择此接口的PIM模式为SM---稀疏模式
[AR-12-GigabitEthernet0/0/1]int g0/0/2
[AR-12-GigabitEthernet0/0/2]pim sm
[AR-12-GigabitEthernet0/0/2]
[AR-12-GigabitEthernet0/0/2]int g0/0/0
[AR-12-GigabitEthernet0/0/0]pim sm
AR-3,
![66740ca17d92fd25952af3771aeb1c62.png](https://i-blog.csdnimg.cn/blog_migrate/5349c0358b9fd4f6c8df20913814b01b.png)
AR-4 C-BSR:
前提是C-BSR的环回口能Ping通
[P-1]interface LoopBack 0
[P-1-LoopBack0]pim sm
[P-1-LoopBack0]pim
[P-1-pim]c-bsr LoopBack 0
![687c55d504815762dc7b67759925c9b4.png](https://i-blog.csdnimg.cn/blog_migrate/130bf2f6231a3776b76d8ff93524d80b.png)
BSR由C-BSR之间自动选举产生。选举开始时,每个C-BSR都认为自己是本PIM域的BSR,向域内所有PIM设备发送Bootstrap报文(以下称自举报文)。C-BSR在接收到其他C-BSR发来的自举报文后,首先比较二者的优先级,优先级较高者获胜;若优先级相同,则再比较二者IP地址,IP地址较大者获胜。获胜者将成为域内的BSR,它会将自己的IP地址和RP-Set信息封装在自举报文中向域内发送。自举报文还携带哈希掩码信息,在C-RP竞选中如果要进行哈希计算时需要。
AR-4胜出。
AR-4接口g0/0/0 抓包
![42a358dcc5e3f67ae00dae7229e1b490.png](https://i-blog.csdnimg.cn/blog_migrate/8188fcd8590b16e1259c9b5199a98c03.png)
AR-5
[ASBR-1]int LoopBack 1
[ASBR-1-LoopBack1]pim sm
[ASBR-1-LoopBack1]pim
[ASBR-1-pim]c-rp LoopBack 1
![2b26759a93d224513feb49b9e26e55dc.png](https://i-blog.csdnimg.cn/blog_migrate/3351d0a8eb496ee090ad7d9206d12036.png)
动态选举RP,成功
![f38cd6eb5e375c78089fd9d2a12a64bc.png](https://i-blog.csdnimg.cn/blog_migrate/ac26d567754e845b45d17c00c18020a4.png)
组播数据与单播数据在源与接收者直接互通
一----基础配置
1---依照拓扑图配置IS-IS的邻居类型与链路开销
2---此组播域,采用PIM-SM模式,RP通过动态选举实现冗余备份
3---请合理配置IGP,确保组播域的正常工作,组播数据与单播数据在源与接收者直接互通
R2 ping 239.1.1.1 239.1.1.2
![1ae5429283b45f0497e1055939f00229.png](https://i-blog.csdnimg.cn/blog_migrate/a283ce860e227a6bb26b133474d6c371.png)
Dis pim routing-table
![52ac837069b7ef0018ee3999c69058ea.png](https://i-blog.csdnimg.cn/blog_migrate/7b23654da56d9f0d0541a5565ebbc57c.png)
二---策略与观察
1---合理配置策略
(1)使得AR-5作为239.1.1.1此组播组的首选RP节点,当AR-5故障后,AR-6自动接替;确保AR-5为其他所有组播组提供RP节点服务
[ASBR-1]pim
[ASBR-1-pim]c-rp LoopBack 0 //指定本设备的环回扣0作为竞选者的BSR地址
[ASBR-2]acl number 2000
[ASBR-2-acl-basic-2000]rule 5 permit source 239.1.1.1 0.0.0.0
[ASBR-2-acl-basic-2000]quit
[ASBR-2]pim
[ASBR-2-pim]c-rp LoopBack 0 group-policy 2000
loopback0需要使能pim,组播范围为ACl2000限制(239.1.1.1/32)
- 使得AR-6作为239.1.1.2此组播组的首选RP节点,当AR-6故障后,AR-5自动接替;确保AR-6为其他所有组播组提供RP节点服务
[ASBR-1]pim
[ASBR-1-pim]c-rp LoopBack 0
[ASBR-1]acl 2005
[ASBR-1-acl-basic-2005]rule 10 permit source 239.1.1.2 0.0.0.0
[ASBR-1-acl-basic-2005]quit
[ASBR-1]pim
[ASBR-1-pim]c-rp LoopBack 0 group-policy 2005
- --上述配置完成后在“叶子”路由器--AR-12连接AR-1与AR-2的链路同时开启抓包,观察组播包和PIM数据包
PIM-SM RPT是一棵以RP为根,以存在组成员关系的PIM路由器为叶子的组播分发树。
当网络中出现组成员(用户主机通过IGMP加入某组播组G)时,组成员端DR向RP发送Join报文,在通向RP的路径上逐跳创建(*,G)表项,生成一棵以RP为根的RPT。
在RPT构建过程中,PIM路由器在发送Join报文时,会进行RPF检查:查找到达RP的单播路由,单播路由的出接口为上游接口,下一跳为RPF邻居。Join报文从组成员端DR开始逐跳发送,直至到RP。
AR-2 接口g4/0/2
![c447ef058b8775a01bbd1c75a00c2ff6.png](https://i-blog.csdnimg.cn/blog_migrate/31c83054dfe873334fcf3526511e8d6e.png)
![038dc38fd8037b6c66ef81365967bb59.png](https://i-blog.csdnimg.cn/blog_migrate/48318b2cecbeff83844ebabe8f47dbcf.png)
![a178b4d4fb1a49ee482a276271793d97.png](https://i-blog.csdnimg.cn/blog_migrate/712b3d40a9d622207520858383d698e3.png)
- 首份组播数据的来源线路,使用的组播树是RPT还是SPT?;后续组播包的来源线路,使用的组播树是RPT还是SPT?
SPT;RPT;
- 通过查看PIM包的与各路由器的组播路由表判断,针对239.1.1.1的数据转发是否进行RPT向SPT的切换?请分析切换的原因
是
发送组播源注册,针对组播数据, 去往源的时候为等价路径,选择接口地址比较大的作为上行,上游接口为剪枝;叶子节点路由器,把上游给剪枝掉,剪枝报文把172.168.10.10的源给剪枝掉,剪枝后,不再转发。
3---为充分利用现有网络链路,
请确保奇数组播组的组播数据通过奇数路由器所在的线路转发,偶数组播组的数据通过偶数路由器转发,不用考虑单播回程包的路径
239.1.1.2 数据下行链路,路径走AR2、AR4、AR6,
RPT树本身为这路径,优选AR-6路由器,
路由12的接口g0/0/2为239.1.1.2源的最优,
SPT,RPT为同一路径,所以不用修剪.
239.1.1.1 走AR1、AR3、AR5
在路由器12上,把RPT向STP切换关闭,这样保证路径向上走;
![732caa1e041f1ef07525225734185d4a.png](https://i-blog.csdnimg.cn/blog_migrate/b7e1772cc42f2d4d4d4400ec753a3913.png)
[AR-12]pim
[AR-12-pim]spt-switch-threshold infinity //关闭本设备的RPT向SPT的切换功能
缺省情况下,PIM-SM路由器会在收到第一个组播数据包后立即进行从RPT到SPT的切换。如果不希望发生切换,则可使用配置命令来禁止切换。另外,也可以设定切换闽值,实现有条件的切换。在用户端DR上配置了切换阈值后,只有当组播报文的速率超过阈值时,用户端DR才会发起切换。