Tags

,

Usually MSDP (Multicast Source Discovery Protocol) is used for inter-domain (different BGP Autonomous Systems) multicast deployments. We can use this even within an IGP environment to provide resiliency for multicast deployment combine with Anycast.

In anycast, same IP address (as RP) is advertised by multiple network devices into the network.Therefore when receivers join to particular multicast group, they will connected to close by RP based on the IGP metric advertised. Since all RPs advertizing same IP address sources can join to  a different RP where as receivers join another RP (as all advertise same IP). MSDP comes into play in this situation to establish MSDP mesh between each RP. In this way even sources & receivers join into different RP, RPs talk to each other via MSDP they can establish Shortest Path Tree (SPT) between multicast source & receivers.

So here is my test set up. I have changed the link bandwidth in order to create different IGP metric to RPs from source & receivers. Also I have configured the same IP address on Loopback 99 interface in both CME & WAN router which will act as RP. PIM sparse mode configured on given interfaces & EIGRP configured for IGP routing.

Anycast-MSDP-01

First we will configure loopback interface in both routers (CME & WAN) & assign same IP address. You need to advertise this into your IGP domain.

CME#
interface FastEthernet0/0
 description 100Mbps LINK to CAT2
 bandwidth 100000
interface FastEthernet2/1
 description 10Mbps LINK to CAT4
 bandwidth 10000
!
interface Loopback99
 ip address 10.10.99.1 255.255.255.255
 ip pim sparse-mode
router eigrp 1
 network 10.10.99.1 0.0.0.0

WAN#
interface FastEthernet0/0
 description 100 Mbps LINK TO CAT4
 bandwidth 100000
interface FastEthernet0/1
 description 10 Mbps LINK to CAT2
 bandwidth 10000
!
interface Loopback99
 ip address 10.10.99.1 255.255.255.255
 ip pim sparse-mode
router eigrp 1
 network 10.10.99.1 0.0.0.0

CAT2#
interface FastEthernet1/0/4
 description 100Mbps LINK to CME
 bandwidth 100000
interface FastEthernet1/0/22
 description 10Mbps LINK to WAN
 bandwidth 10000

CAT4#
interface FastEthernet1/0/23
 description 10 Mbps to CME 
 bandwidth 10000
interface FastEthernet1/0/22
 description 100 Mbps to WAN
 bandwidth 100000

Now if you look at  IGP metric from Source & Receiver to RP address (10.10.99.1) you would see multicast source connected switch (CAT2) goes to CME where as from receiver connected layer 3 switch (CAT4) prefer WAN router. You can simply verify this by telnet to 10.10.99.1 IP from these two switches.

CAT2#telnet 10.10.99.1
Trying 10.10.99.1 ... Open
CME>

CAT4#telnet 10.10.99.1
Trying 10.10.99.1 ... Open
User Access Verification
Password: 
WAN>

Now you have to configure RP address for your network devices. for the simplicity I will use static RP configuration (you can use any other methods like Auto-RP, BSR as well). Therefore “ip pim rp-address 10.10.99.1” needs to be configured on CAT2, CME, WAN, CAT4. Now if you source multicast traffic for a particular multicast group (226.6.6.6)  from the source you should see (S,G) entry on CME as CAT2 preferred that over WAN for RP address.  You won’t see any entry on WAN router.

CAT2#ping
Protocol [ip]: 
Target IP address: 226.6.6.6
Repeat count [1]: 5
Datagram size [100]: 
Timeout in seconds [2]: 
Extended commands [n]: y
Interface [All]: Vlan200
Time to live [255]: 
Source address: 
Type of service [0]: 
Set DF bit in IP header? [no]: 
Validate reply data? [no]: 
Data pattern [0xABCD]: 
Loose, Strict, Record, Timestamp, Verbose[none]: 
Sweep range of sizes [n]: 
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 226.6.6.6, timeout is 2 seconds:
.....
CME#sh ip mroute 226.6.6.6
IP Multicast Routing Table
(*, 226.6.6.6), 00:00:50/stopped, RP 10.10.99.1, flags: SP
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list: Null

(192.168.200.254, 226.6.6.6), 00:00:50/00:02:09, flags: P
  Incoming interface: FastEthernet0/0, RPF nbr 172.16.99.6
  Outgoing interface list: Null

WAN#sh ip mroute 226.6.6.6
Group 226.6.6.6 not found

In this case receiver join to this group address from CAT4 that request goes to WAN as CAT4 preferred that as RP because of lower IGP metric.

CAT4#
interface Vlan23
 ip igmp join-group 226.6.6.6

WAN#sh ip mroute 226.6.6.6
IP Multicast Routing Table
(*, 226.6.6.6), 00:00:46/00:02:43, RP 10.10.99.1, flags: S
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:

since there are no communication between two RP (WAN & CME ) they cannot establish source to receiver multicast tree. Therefore you have to configure MDSP peers between two RP like below

WAN(config)#ip msdp peer 10.10.205.20 connect-source l0
!
CME(config)#ip msdp peer 10.10.105.20 connect-source l0

Now if you look at mroute for 226.6.6.6 while you are sending traffic to this group address you can see (S,G) entry at WAN. Flag M indicating source information known via MSDP.

WAN#sh ip mroute 226.6.6.6
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,
       L - Local, P - Pruned, R - RP-bit set, F - Register flag,
       T - SPT-bit set, J - Join SPT, M - MSDP created entry,
       X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,
       U - URD, I - Received Source Specific Host Report,
       Z - Multicast Tunnel, z - MDT-data group sender,
       Y - Joined MDT-data group, y - Sending to MDT-data group
Outgoing interface flags: H - Hardware switched, A - Assert winner
 Timers: Uptime/Expires
 Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 226.6.6.6), 00:08:44/00:02:43, RP 10.10.99.1, flags: S
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    FastEthernet0/0, Forward/Sparse, 00:08:44/00:02:43

(192.168.200.254, 226.6.6.6), 00:01:09/00:01:50, flags: M
  Incoming interface: FastEthernet0/1, RPF nbr 172.16.99.2
  Outgoing interface list:
    FastEthernet0/0, Forward/Sparse, 00:01:09/00:03:20

Now even if one of your RP went down, IGP will re-converge quickly & all network devices goes to next nearest RP. Still RP address will be same for them & no need to learn another RP address. This is how you can achieve faster fail over with Anycast MSDP multicast deployment.

Related Posts

1. Test Yourself- Basic Multicast
2. Configuring Multicast on WLC
3. Wireless Multicast is not working – Why ?
4. Understanding “VideoStream” feature
5. IGMP Basics
6. Multicast Address Allocation
7. Multicast Deployment Types
8. PIM-SM Static RP Configurations
9. PIM-SM Auto-RP configurations
10. PIM-BSR Bootstrap Router Configurations
11. PIM-SSM Source Specific Multicast