MSDP实现域间组播
MSDP对等体
MSDP实现域间组播解决了不同PIM-SM域之间RP(Rendezvous Point)信息隔离、需要共享不同域内组播源信息的问题,实现了PIM-SM域间的RP之间的通信,共享组播源信息,保证域间组播业务正常运行。
按如下两种场景配置对等体关系:
在属于同一AS(Autonomous System),但属于不同PIM-SM域的RP之间建立MSDP对等体。
在跨AS的RP之间建立MSDP对等体。
跨AS域需要建立BGP对等体(如果配置了MBGP(Multicast Border Gateway Protocol),就是MBGP对等体),此BGP(或MBGP)对等体必须和MSDP对等体建立在相同的接口上,否则RPF(Reverse Path Forwarding)检查不通过。
基本原理
通过配置MSDP Peer使各个PIM-SM域的RP之间建立MSDP对等体关系,各MSDP Peer之间彼此首尾相连,形成一张“MSDP连通图”,连接各PIM-SM域的RP。
MSDP对等体之间交互SA(Source Active)消息,SA消息中携带组播源DR(Designated Router)在RP上注册时的(S,G)信息。通过这些MSDP对等体之间的信息传递,任意一个RP发出的SA消息能够被其他所有的RP收到。
如图5-1所示,PIM-SM网络被划分为4个PIM-SM域。PIM-SM1域内的组播源Source向组G发送数据。PIM-SM3域内的Receiver为组G成员,RP3和Receiver之间维护了一棵关于组G的RPT(Rendezvous Point Tree)。
如图5-1所示,通过在RP1、RP2和RP3之间建立MSDP对等体关系,可以使Receiver接收到Source发出的组播数据,具体过程如下:
Source向组G发送组播数据。DR1将组播数据封装在Register消息中,发给RP1。
RP1作为源端RP,创建SA消息,携带Source的IP地址、组G地址和RP1地址,发送给对等体RP2。
RP2接收到该SA消息后,执行RPF检查。检查通过,向RP3转发。
RP3接收到该SA消息后,执行RPF检查,检查通过。RP3上存在(*,G)表项,表示本域内存在组G成员。RP3创建(S,G)表项,向Source逐跳发送(S,G)加入消息,创建一条从Source到RP3的组播路径(源树)。
组播数据沿源树到达RP3后,再沿RPT向接收者转发。
接收者接收到组播数据后,自行决定是否发起SPT(Shortest Path Tree)切换。