Jun 27 2011
Multicast VPN
PIM-SM, PIM-SSM, and PIM-BIDIR are all supported inside the provider core for MVPN.
PIM-SM or PIM-SSM is the recommended PIM option in the provider core, because PIM-BIDIR is not yet supported by all platforms, PIM-SM, PIM-SSM, PIM-BIDIR and PIM-DENSE-MODE are supported inside the MVPN.
MVPN has the concepts of Multicast Distribution Trees (MDT). An MDT is sourced by a PE router and has a multicast destination address. PE routers that have sites for the same MVPN will all source to a Default-MDT and also join to receive traffic on it.
There is a distinction between Default-MDTs and Data-MDTs. A Default-MDT is a tree that is `always-on’ and will transport PIM control-traffic, dense-mode traffic and rp-tree (*,G) traffic. All PE routers configured with the same default-MDT will receive this traffic.
Data-MDTs are trees that are created on demand and will only be joined by the PE routers that have interested receivers for the traffic. They can be created either by a traffic rate threshold and/or source-group pair.
Default-MDTs must have the same group address for all VRFs that comprise a MVPN. Data-MDTs may have the same group address if PIM-SSM is used. If PIM-SM is used, they should have a different group address, as providing the same one could result in the PE router receiving unwanted traffic. This is a PIM-SM protocol issue, not an implementation issue.
show ip pim mdt bgp
show ip bgp vpnv4 all
show ip mroute
show ip pim neighbors
show ip pim vrf catalunya neighbors
show ip pim vrf catalunya rp mapping
PE_BARCELONA#show ip pim mdt bgp
Peer (Route Distinguisher + IPv4) Next Hop
MDT group 239.232.0.0
2:1:1:10.0.0.2 10.0.0.2
2:1:1:10.0.0.3 10.0.0.3
2:1:1:10.0.0.4 10.0.0.4
2:1:1 indicates the RD-type (2) and RD (1:1) associated with this update.
The remaining part is the address used to source the BGP session.
Alternatively, `show ip bgp vpnv4 all’ can be used.
PE_BARCELONA#show ip bgp vpnv4 all
BGP table version is 24, local router ID is 10.0.0.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
Route Distinguisher: 1:1 (default for vrf catalunya)
*> 20.0.1.0/24 0.0.0.0 0 32768 ?
*>i20.0.2.0/24 10.0.0.2 0 100 0 ?
*>i20.0.3.0/24 10.0.0.3 0 100 0 ?
*> 20.1.0.0/22 20.0.1.2 0 32768 ?
*> 20.1.0.0/16 20.0.1.2 0 32768 ?
*>i20.2.0.0/24 10.0.0.2 1 100 0 ?
*>i20.3.0.0/24 10.0.0.3 1 100 0 ?
*>i20.4.0.0/24 10.0.0.4 0 100 0 ?
*> 20.5.5.5/32 20.0.1.2 1 32768 ?
Route Distinguisher: 2:1:1
*> 10.0.0.1/32 0.0.0.0 0 ?
*>i10.0.0.2/32 10.0.0.2 0 100 0 ?
*>i10.0.0.3/32 10.0.0.3 0 100 0 ?
*>i10.0.0.4/32 10.0.0.4 0 100 0 ?
Step 2.
Verify the global mroute table
Use `show ip mroute <mdt-group-address>’ to verify that there is a (Source,Group) entry for each PE router. As PIM-SSM is used, the source is the loopback address used to source the BGP session and the Group is the MDT address configured. Without traffic, only default-MDT entries will be visible.
PE_BARCELONA#show ip mroute 239.232.0.0
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,
Y - Joined MDT-data group, y - Sending to MDT-data group
Outgoing interface flags: H - Hardware switched
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode
(10.0.0.1, 239.232.0.0), 00:18:40/00:03:14, flags: sTZ
Incoming interface: Loopback0, RPF nbr 0.0.0.0
Outgoing interface list:
Serial 1/0, Forward/Sparse, 00:17:53/00:02:31
(10.0.0.2, 239.232.0.0), 00:17:52/00:02:44, flags: sTIZ
Incoming interface: Ethernet0/0, RPF nbr 10.1.0.2
Outgoing interface list:
MVRF catalunya, Forward/Sparse, 00:17:52/00:00:00
(10.0.0.3, 239.232.0.0), 00:17:47/00:02:44, flags: sTIZ
Incoming interface: Ethernet0/0, RPF nbr 10.1.0.2
Outgoing interface list:
MVRF catalunya, Forward/Sparse, 00:17:47/00:00:00
(10.0.0.4, 239.232.0.0), 00:17:46/00:02:44, flags: sTIZ
Incoming interface: Ethernet0/0, RPF nbr 10.1.0.2
Outgoing interface list:
MVRF catalunya, Forward/Sparse, 00:17:46/00:00:00
Verify that the `s’ flag is set on each (S,G) entry, which indicates that this group is used in ssm mode. Verify that the `Z’ flag is set indicating that this PE router is a leaf of the multicast tunnel. When the router is a `leaf’ of a multicast tunnel, it has to do additional lookups to determine which MVRF to forward this traffic to, as it is basically a receiver for this traffic.
Verify the I flag is set for the remote PE(S,G) entry. This flag indicates that the router understands it is joining an SSM group. It is as though an IGMPv3 host had requested to join that particular channel.
Step 3.
Verify PIM neighbors in the global table
Use the `show ip pim neighbors’ command on all PE and P routers to verify that the pim neighbors are setup properly in the global table.
PE_BARCELONA#show ip pim neighbor
PIM Neighbor Table
Neighbor Interface Uptime/Expires Ver DR
Address Priority/Mode
10.1.0.2 Serial 1/0 00:18:36/00:01:21 v2 1 / S
The example above shows that PE_BARCELONA has correctly setup a PIM neighborship in the global table with the P router.
Step 4.
Verify PIM neighbors inside the VPN
Use `show ip pim vrf catalunya neighbors’ on all PE routers to verify that the CE router is seen as a PIM neighbor and the remote-PE routers are seen as a pim neighbor over the tunnel.
PE_BARCELONA#show ip pim vrf catalunya neighbor
PIM Neighbor Table
Neighbor Interface Uptime/Expires Ver DR
Address Priority/Mode
20.0.1.2 Ethernet0/0 00:18:30/00:01:27 v2 1 / DR
10.0.0.3 Tunnel0 00:17:40/00:01:18 v2 1 /
10.0.0.4 Tunnel0 00:17:40/00:01:19 v2 1 / DR
10.0.0.2 Tunnel0 00:17:40/00:01:19 v2 1 /
There is correctly a PIM neighbor with the CE router on interface Ethernet 1/0, and all remote PE routers are also seen as PIM neighbors over the tunnel.
Step 5.
Verify the VPN Group to RP mapping
Use `show ip pim vrf catalunya rp mapping’ to verify that the PE router correctly learned the Group to RP mapping information from the VPN.
PE_BARCELONA#show ip pim vrf catalunya rp map
PIM Group-to-RP Mappings
Group(s) 224.0.0.0/4
RP 20.5.5.5 (?), v2v1
Info source: 20.5.5.5 (?), elected via Auto-RP
Uptime: 00:10:34, expires: 00:02:24
The PE router has correctly learned the Group to RP mapping, which is used inside the VPN. Auto-RP is used here inside the VPN.
When all the above has been successfully verified, Figure 2 presents a conceptual overview showing the default-MDT reaching all PE routers with the multicast replication being done in the core of the provider network.
With only a default-MDT configured, traffic will go to all PE routers, regardless of whether they want to receive the traffic.