MSDP协议可能会有不少同学感到陌生,因为这个协议已经从华为的官方PPT中删除了不在作为考试内容出现了,那么今天我就来给大家来补充这个协议。
MSDP协议全称为组播源发现协议,它是为了解决多个pim-sm域之间互连而开发的一种域间组播解决方案,用来发现其他PIM-SM域内的组播源信息
目前MSDP只支持ipv4的组播网络,并且域内组播路由协议必须是pim-sm。而且MSDP也仅仅对ASM的组播网络模型有意义。
一般在大型的组播网络环境中往往都会配置多个PIM-SM域,此时各个域中的RP无法了解其他域中的组播源信息。那么此时MSDP就可以解决这个问题,MSDP通过在不同的pim-sm域的汇聚点RP上之间建立MSDP对等体,而这些对等体之间通过交互SA消息来共享组播源信息,最终可以使一个域内的组播用户接收到其他域的组播源发送来的组播数据。
接下来我们通过一个案例来给大家详细讲解
上面的拓扑图可以发现组播的客户端PC1和组播源MCS1不在同一个pim域中,那么我们如何让PC1可以接收到和他不在同一组播域的MCS1的组播数据呢?那么此时MSDP就来解决这个问题。
实验思路说明:
1.所有的路由器都开启了ospf协议,但是R2和R3之间没有开启ospf协议
2.所有路由器的接口都开启了pim sm协议,并且R6的接口G0/0/1也开启了IGMP协议
3.在AS100中通过静态方式指定R2为RP,而在AS200中通过动态RP选举机制选举出R5为RP
4.在R2的接口G0/0/1和R3的接口G0/0/0上必须配置pim bsr-boundary,这个命令就是将AS100和AS200划分成了两个PIM-SM域,如果不设置该命令,那么此时AS100和AS200就是属于同一个pim-sm域。
5.R2和R3之间,R3和R5之间建立BGP邻居关系,并且为了保证AS间单播路由畅通,必须在AS之间将BGP和OSPF相互引入
6.分别将作为AS100的pim-sm域的RP即R2和作为AS200的pim-sm域的RP即R5之间建立MSDP对等体。具体建立MSDP对等体命令如下:
最终通过display msdp brief查看MSDP对等体的简要信息发现对等体建立成功了
此时我们在R2的接口G0/0/1上抓包
根据抓包分析:R2将自己所在的pim-sm域中的组播源通过sa消息告诉了R5,既然R5知道了组播源信息那么其所在的组播设备都知道了这个组播源信息,那么此时R5所在的pim域只要有接收者并加入该组播组中,则就可以接收到这个组播源发来的组播数据信息了
此时我们也在R5上抓包,发现其所在pim域中有接收者,即R3想R2发送了join消息即(172.16.0.0.239.1.1.1)join
最终我们下组播接收者PC1上看到了组播源MCS1的组播视频了