Friday, February 24, 2012


MSDP - Multicast Source Discovery Protocol

The purpose of an MSDP topology is to enable discovery of multicast sources in other domains

Each PIM-SM domain uses its own RPs.  RPs run MSDP over TCP to discover multicast sources (generators) in other domains. Following MSDP peering a list of sources sending to multicast groups is exchanged.  

SA (Source Addresses) are sent to the neighboring RP over MSDP. By default an RP does not ask for  SA  messages i.e. it generally operates as a PUSH not a PULL!  RPs generally wait to get regular source announcements from any RP msdp peers.  This means there may be some latency for hosts trying to join groups that are not current but reduces router memory requirements.  (this behaviour can be changed with ip msdp sa-request command) 

An RP will periodically send (PUSH) SA messages about registered sources to its MSDP peers.  By default, any source that registers with an RP will be advertised. However there are two control mechanisms available for these exchanges.  For example you can control the source information that the router originates as per the following examples

example 1

The router here is configured to send only SA messages for a subset of the possible sources that might send PIM-SM Register messages to it. It is allowing the whole multicast range. The ip msdp redistribute statement references access list 122, which in turn permits source prefixes of and group address prefixes of (all multicast groups). Any source can still register with the RP but only those sources whose first 8 address bits are are advertised in SA messages.
ip msdp redistribute  {acl}

ip msdp redistribute list 122  

access-list 122 permit ip


example 2

The router is using the ip msd sa-filter command to control SA messages received 
and sent to the specified peers. Again the ACL denotes an S,G pairing.
ip msdp sa-filter in list 101

ip msdp sa-filter out list 103