Multicast Source Discovery Protocol (MSDP);

  • MSDP has been designed for interdomain usage
  • Creates a web of communicating RPs to exchange information about active multicast sources
  • Each RP knows about the sources that are registered to it and this information is flooded to all MDSP peers using source-active (SA) message
  • MSDP can also be used inside a single domain if it has multiple RPs
  • Each RP serves a certain area of leaf routers and each is aware of the registered sources and receivers from that area
  • Once the active sources are known to each RP, the RP can join the interarea source tree for sources that are sending to groups for which the RP has receivers.
  • This activity is possible because the RP is the root of the shared tree which has branches to the points in the area where there are active receivers
  • If the RP either has no shared tree for a particular group or shared tree whose outgoing interface list is Null it does not send a join to the source in another domain.
  • Once a last-hop router learns of a new source it can send a join toward the source and join the source tree.
  • The last-hop router learns a new source via the arrival of a multicast packet from the source down the shared tree
  • MSDP can only work with PIM-SM as it needs to be aware of all source and receivers in its local domain
  • As first-hop routers inform RPs of when sources go active via PIM register messages and (S,G) states kept alive in the RP by standard PIM-SM mechanisms the RP can inform other RPs in other domains of the existence of active sources (SA messages).
  • An RP also knows about all receivers in its area so when an RP receives an SA message announcing an active source for a group in another domain it can send (S,G) joins towards the source in the other domain. This is because if the RP does not have an active source it will have (*,G) entry with the OIL not with Null in it.
  • MSDP depends on BGP or MBGP for interdomain operation


MSDP peers;

  • MSDP peers (typically RPs) connect via TCP port 639
  • The peer with the lowest IP takes the active role of opening the TCP connection (while the highest waits in a listening state)
  • MSDP peers send keepalives every 60 seconds, if no keepalive is received for 75 seconds the TCP connection is reset and reopened.
  • RPs periodically originate SA messages for active sources in their domain
  • These Messages are sent to all active MSDP peers
  • MSDP speakers may cache SA messages, this allows other MSDP speakers to query for active sources reducing join latency


ip msdp peer {peer-name | peer-address} [connect-source ] [remote-as ]

show ip msdp summary

clear ip msdp peer peer-address

Lab Examples


  • Implementing Cisco Multicast (MCAST 2.0)
  • Routing TCP/IP Volume II – Jeff Doyle
  • Developing IP Multicast Networks, Volume I – Beau Williamson

DOCCD – Cisco IOS>12.4T Configuration Guides>IP>Cisco IOS IP Multicast Guide, Release 14.4T>Using MSDP to Interconnect Multi