NG-MVPN Source Redundancy

This chapter provides information about MVPN source redundancy.

Topics in this chapter include:

Applicability

The chapter was initially written for Release 12.0.R1, using multicast LDP as the provider tunnel signaling mechanism for IPv4 multi-casting. The customer multicast signaling protocol within the VPN must be BGP. The CLI in the current edition corresponds to 15.0.R5.

Summary

Multicast source redundancy allows operators to provide multiple geo-redundant sources for the same multicast group in a multicast virtual private network (MVPN). For instance, in an IPTV environment where a TV channel maps to a multicast group, the same TV channel can be provided from sources in a geographically diverse manner where a national broadcaster can have multiple sources from two or more regional distribution centers.

Knowledge of Multi-Protocol BGP (MP-BGP) and RFC 4364, BGP/MPLS IP Virtual Private Networks (VPNs), is assumed throughout this chapter, as well as Protocol Independent Multicast (PIM), RFC 6513, Multicast in MPLS/BGP IP VPNs, and RFC 6514, BGP Encodings and Procedures for Multicast in MPLS/BGP IP VPNs.

Overview

Hosts connected to receiver PEs can receive TV channels from a specific source, with a regional backup source available in case of a failure.

Figure 1. Source Redundancy Example.

Source Redundancy Example. shows the concept of source redundancy. PE-1 and PE-3 have directly connected multicast sources. For clarity, consider a single multicast group with two separate sources connected at different sites. The content of each group is identical at a given time (allowing for transmission delay), as is expected for an IPTV channel. PE-1 and PE-3 are referred to as sender PEs because they are closer to the source; PE-2 and PE-4 are referred to as receiver PEs because they are closer to hosts H-2 and H-4.

A multicast group, group 1 (G-1) has two sources: Source 1 (S-1) in the east region and Source 3 (S-3) in the west region which are connected to PE-1 and PE-3 respectively. Receivers connected to PE-2 in the east region will join group (S-1,G-1) and receivers connected to PE-4 in the west region will join group (S-3,G-1). The presence of each source is declared within the multicast VPN by the sender PE. When a multicast group becomes active, a BGP Source Active auto-discovery (SA) route is advertised to all PEs within the multicast VPN. This must occur even if no receiver indicates that it wishes to become a member of this group. In other words, the SA must be persistently present in the receiver PEs when the source is available.

Should either source fail or become unavailable, then the sender PE will notify the receiver PEs by sending an NLRI unreachable BGP SA Route that declares the absence of the source. All hosts that are members of this group will then switch to receive traffic from the remaining active source. Only customer multicast joins received as IGMP (*,G) queries or PIM (*,G) joins at the receiver PE are valid, because the source address is not specified.

Source redundancy is achieved by:

  • Configuring a list of redundant sources within each receiver PE.

  • Configuring the sender PEs to originate a BGP Source Active Auto Discovery for each detected active multicast source, regardless of whether a receiver is joined to the multicast group or not. As a result, a Source Active route is originated on a per (S,G) basis.

    For multiple SAs to be persistently present in the receiver PEs, one of the following two conditions must be configured within the sender PEs:

    • Either disable inter-site shared trees on the sender PEs, such that there is no c-tree with root at the RP. Any active source will announce its presence using a BGP SA to all receiver PEs so no shared joins are sent by receiver PEs to RP, or

    • Leave inter-site shared trees as enabled, but configured so that the SA AD route for each multicast group is persistently present in the receiver PEs, even in the absence of requesting hosts for each group. Shared and Source Joins are sent by the receiver PEs.

    Both of the preceding options are supported. The default behavior has inter-site shared trees enabled without persistency. In this example, inter-site shared trees at the sender PEs are enabled with Source Active routes set to be persistent.

  • Ensuring that the preferred source is IP reachable within the VPRN from the receiver PE. This must be a remote source advertised from a remote PE within the VPRN.

  • Receiver PEs will accept the Source Active route(s) into the appropriate Multicast VRF.

  • Ensuring the preferred active source should have a higher BGP Local Preference. This is achieved using a route policy. Any other sources from the redundant list should exist as suppressed standby sources, but the (S,G) state should exist if the source is active – when a valid BGP MVPN Source Active route for that source has been received.

All of these conditions are achieved by configuration.

In order to allow each receiver PE to choose a preferred source, each SA route advertised by the sender PE will be tagged with a community value. Each receiver PE can then use the community value contained within each SA route update received to set the Local Preference BGP attribute to a value such that the receiver PE can choose the most preferred active source.

The objectives are:

  • To configure multicast in a VPRN on PE-1 to PE-4 with inter-site-shared trees enabled on the receiver PEs and Source Active routes persistently present, for reasons previously described.

  • To connect redundant sources to the sender PE-1 and PE-3, with each multicast source having the same group address. For ease of configuration, a single redundant source is used.

  • To advertise each source to the receiver PEs (PE-2 and PE-4), using appropriate route policies for adding community strings to the BGP Source Active Auto-Discovery routes.

  • To configure appropriate route policies that allow each BGP SA route to have the correct Local Preference set, based on the community strings present.

  • To allow receivers to connect to the appropriate source, using (*,G) joins.

The following configuration tasks should be completed as a pre-requisite:

  • Full mesh IS-IS or OSPF between each of the PE routers and the route reflector.

  • Link-layer LDP between all PEs. RSVP could also be used.

  • Multicast LDP is used as the provider tunnel signaling protocol. This is enabled by default when link layer LDP is enabled. RSVP and PIM SSM are also supported as provider tunnel signaling mechanisms and could be used.

Configuration

The example topology is shown in Schematic Topology, containing the four PEs plus the route reflector at P-5.

Figure 2. Schematic Topology

Global BGP Configuration

The first step is to configure an iBGP session between each of the PEs and the route reflector (RR) seen in Schematic Topology. The address families negotiated between the iBGP peers are vpn-ipv4 (unicast routing) and mvpn-ipv4 (multicast routing).The BGP configuration for all PE nodes is identical:

# on PE-1
configure
    router 
        bgp
            group "INTERNAL"
                family vpn-ipv4 mvpn-ipv4
                type internal
                neighbor 192.0.2.5
                exit
            exit
            no shutdown
        exit

The configuration for the Route Reflector at P-5 is:

# on P-5
configure
    router
        bgp
            group "RRclients"
                family vpn-ipv4 mvpn-ipv4
                type internal
                cluster 1.1.1.1
                neighbor 192.0.2.1
                exit
                neighbor 192.0.2.2
                exit
                neighbor 192.0.2.3
                exit
                neighbor 192.0.2.4
                exit
            exit
            no shutdown
        exit

On PE-1, verify that the BGP session with RR at P-5 is established with address families ‟vpn-ipv4” and ‟mvpn-ipv4” capabilities negotiated:

*A:PE-1# show router bgp summary 
===============================================================================
 BGP Router ID:192.0.2.1        AS:64496       Local AS:64496      
===============================================================================
BGP Admin State         : Up          BGP Oper State              : Up
Total Peer Groups       : 1           Total Peers                 : 1         
Total VPN Peer Groups   : 0           Total VPN Peers             : 0         
Total BGP Paths         : 12          Total Path Memory           : 3168      
  
---snip--- 
 
===============================================================================
BGP Summary
===============================================================================
Legend : D - Dynamic Neighbor
===============================================================================
Neighbor
Description
                   AS PktRcvd InQ  Up/Down   State|Rcv/Act/Sent (Addr Family)
                      PktSent OutQ
-------------------------------------------------------------------------------
192.0.2.5
               64496        3    0 00h00m18s 0/0/0 (VpnIPv4)
                            3    0           0/0/0 (MvpnIPv4)
-------------------------------------------------------------------------------
*A:PE-1#

The same command can be used on the other PEs to verify their BGP sessions to the RR.

Configuring VPRN on PEs

The following outputs show the VPRN configurations for each PE. The specific MVPN configuration is shown later.

PE-1

The VPRN configuration for PE-1 is as follows:

# on PE-1
configure 
    service 
        vprn 1 customer 1 create
            route-distinguisher 64496:1
            auto-bind-tunnel
                resolution-filter
                    ldp
                exit
                resolution filter
            exit
            vrf-target target:64496:1
            interface "int-PE-1-S-1" create
                address 172.16.1.1/24
                sap 1/1/3 create
                exit
            exit
            interface "RP" create
                address 10.10.10.1/32
                loopback
            exit
            pim
                apply-to all
                rp
                    static
                        address 10.10.10.1
                            group-prefix 239.0.0.0/8
                        exit
                    exit
                exit
                no shutdown
            exit
        exit

There is a single interface toward S-1 from which the multicast group is generated.

If the customer signaling uses PIM ASM, then the customer Rendezvous Point (RP) must be positioned on the sender PE because registration of the source with the RP causes the SA to be sent to the remote source PEs.

A loopback interface called ‟RP” acts as the RP for all group prefixes in the 239.0.0.0/8 range. This will be the RP for the East groups.

PE-2

PE-2 has a receiver attached, and a single interface is configured to accommodate this. The RP configured is that of the East region and has a configuration as follows:

# on PE-2
configure service 
        vprn 1 customer 1 create
            route-distinguisher 64496:1
            auto-bind-tunnel
                resolution-filter
                    ldp
                exit
                resolution filter
            exit
            vrf-target target:64496:1
            interface "int-PE-2-H-2" create
                address 172.16.2.1/24
                sap 1/1/3 create
                exit
            exit
            igmp
                interface "int-PE-2-H-2"
                exit
            exit
            pim
                apply-to all
                rp
                    static
                        address 10.10.10.1
                            group-prefix 239.0.0.0/8
                        exit
                    exit
                exit
                no shutdown
            exit
        exit

PE-3

PE-3 serves as the RP for the West region and uses a different IP address for the Rendezvous Point interface.

# on PE-3
configure service 
        vprn 1 customer 1 create
            route-distinguisher 64496:1
            auto-bind-tunnel
                resolution-filter
                    ldp
                exit
                resolution filter
            exit
            vrf-target target:64496:1
            interface "int-PE-3-S-3" create
                address 172.16.3.1/24
                sap 1/1/3 create
                exit
            exit
            interface "RP" create
                address 10.10.10.3/32
                loopback
            exit
            pim
                apply-to all
                rp
                    static
                        address 10.10.10.3
                            group-prefix 239.0.0.0/8
                        exit
                    exit
                exit
                no shutdown
            exit
        exit

PE-4

PE-4 also has a receiver, and uses the West sender PE (PE-3) as the Rendezvous Point.

# on PE-4
configure service
        vprn 1 customer 1 create
            route-distinguisher 64496:1
            auto-bind-tunnel
                resolution-filter
                    ldp
                exit
                resolution filter
            exit
            vrf-target target:64496:1
            interface "int-PE-4-H-4" create
                address 172.16.2.1/24
                sap 1/1/3 create
                exit
            exit
            igmp
                interface "int-PE-4-H-4"
                exit
            exit
            pim
                apply-to all
                rp
                    static
                        address 10.10.10.3
                            group-prefix 239.0.0.0/8
                        exit
                    exit
                exit
                no shutdown
            exit
        exit

MVPN Configuration for Source PEs

At the PEs closest to the sources (PE-1 and PE-3), Source Active auto-discovery BGP routes are generated when the source is active.

This applies for PIM-ASM (*,G) joins only, or IGMP (*,G) membership queries received by the provider domain. These are received by all PEs.

Inter-site trees must be disabled for this to occur. Alternatively, inter-site trees can be enabled such that when a source is discovered, a Source Active is advertised to each other PE in the MVPN. This occurs regardless of whether any receivers wish to become members of the multicast groups.

As previously stated, the presence of the SA in the receiver PEs means that no shared joins routes are generated toward the C-RPs.

The MVPN configuration enables BGP as both auto-discovery mechanism and the customer multicast signaling protocol across the VPRN. The provider tunnel between PEs within the MVPN is signaled using Multicast LDP.

The MVPN configuration for each PE should be as follows:

# on PE-1
configure
    service
        vprn 1
            mvpn
                auto-discovery default
                c-mcast-signaling bgp
                provider-tunnel
                    inclusive
                        mldp
                            no shutdown
                        exit
                    exit
                exit
            exit

The VPRN MVPN configuration for PE-2, PE-3, and PE-4 is identical.

Sender PE Route Policies

The choice of active and standby sources by the receiver PEs is determined by the ‟best route” policy. PE-1 and PE-3 advertise BGP Source Active Auto Discovery routes when a source is active. This is received by all PEs within the MVPN. As two different sources advertise the same group, it is necessary to differentiate between them.

Assuming that receiver PE-2 prefers the source from PE-1, and PE-4 prefers the source active on PE-3, then the export policy for MVPN routes on PE-1 requires the following steps:

  1. Set a community value at PE-1 for the (S,G) multicast group – call this ‟blue” with value 64496:11.

  2. Set the route target community for the VPRN – 64496:1.

  3. Create a policy statement that becomes the export policy for MVPN routes within PE-1.

  4. Create a policy statement entry (entry 10) that adds the community value ‟blue” along with the route target for Source Active AD BGP routes. Source Active AD routes are MVPN type 5 routes.

  5. Create a policy statement entry default-action that adds the route target for all other MVPN AD BGP routes (such as Intra-AD (type 1)) that are exported to the MVPN PEs.

    # on PE-1
    configure
        router 
            policy-options
                begin
                community "blue" members "64496:11"
                community "MVPN1_RT" members "target:64496:1"
                policy-statement "MVPN1_export"
                    entry 10
                        description "match MVPN routes - type 5 Source AD - 
                                     add RT and 'blue' community"
                        from
                            mvpn-type 5
                            family mvpn-ipv4
                        exit
                        action accept
                            community add "blue" "MVPN1_RT"
                        exit
                    exit
                    default-action accept
                        community add "MVPN1_RT"
                    exit
                exit
                commit
            exit
    
  6. Apply as an export policy within the MVPN context.

The import policy requires that all imported MVPN BGP routes have the correct route target extended community value, specifically ‟target:64496:1”.

  1. Create a policy statement that becomes the import policy for PE-1.

  2. Create a policy statement entry (entry 10) that matches the community of the route target extended community for all MVPN BGP routes. These include the Intra-AD and Source-Join routes.

    # on PE-1
    configure
        router 
            policy-options
                begin
                    policy-statement "MVPN1_import"
                        entry 10
                            from
                                community "MVPN1_RT"
                            exit
                            action accept
                            exit
                        exit
                    exit
                commit
            exit 
    

Enable the inter-site-shared type 5 advertisement persistency so that source ADs are advertised when multicast sources are active. Alternatively, inter-site shared trees can be disabled using the no intersite shared command. In this example, only inter-site shared MVPN type 5 persistency is shown.

The additional configuration in the MVPN context is as follows, where the PIM instance must be shut down when the intersite-shared configuration is modified.

# on PE-1
configure
    service 
        vprn 1
            mvpn
                intersite-shared persistent-type5-adv
                vrf-import "MVPN1_import"
                vrf-export "MVPN1_export"
            exit

For PE-3 (the other sender PE), similar import and export policies are required. In this case, the community will be called ‟red” and is added to the Source Active AD route generated when the source is active.

The requirements for the export policy for PE-3 are as follows:

# on PE-3
configure
    router
        policy-options
            begin
            community "red" members "64496:33"
            community "MVPN1_RT" members "target:64496:1"
            policy-statement "MVPN1_export"
                entry 10
                    description "match MVPN routes - type 5 Source AD -
                                 add RT and 'red' community"
                    from
                        mvpn-type 5
                        family mvpn-ipv4
                    exit
                    action accept
                        community add "red" "MVPN1_RT"
                    exit
                exit
                default-action accept
                    community add "MVPN1_RT"
                exit
            exit
            commit
        exit 

The import policy is exactly the same as for PE-1.

Apply the import and export policies to the MVPN context of the sender PE (PE-3) and enable inter-site-shared type 5 advertisement persistency with the same command as on PE-1.

Receiver PE Configuration

PE-2 and PE-4 are the receiver PEs. These will receive the Source Active AD routes and initiate Joins toward the preferred source.

When a Source-Active AD route is received, the community value is examined and the Local Preference value of the route is set using a Route Policy. The preferred source is determined by the SA AD route with the highest Local Preference value.

In the case of PE-2, the preferred source is that advertised by PE-1, the ‟blue” source as previously referenced. PE-2 sets the Local Preference to 200. The SA AD tagged with the ‟red” community has the Local Preference set to 50.

For PE-4, the reverse applies: SA AD routes tagged with the ‟red” community have the Local Preference set to 200, and ‟blue” SA AD routes have the Local Preference set to 50.

Once again, assuming that the PE-2 receiver prefers the source from PE-1 and PE-4 prefers the source active on PE-3, the import policy for MVPN routes on PE-2 requires the following steps:

  1. Set a community value at PE-2 for the (S,G), call this ‟blue” with value 64496:11.

  2. Set the route target community for the VPRN to 64496:1.

  3. Create a prefix list that matches the multicast group address, in this case 239.255.0.0/24.

  4. Create a policy statement that becomes the import policy for MVPN routes within PE-1.

  5. Create a policy statement entry (entry 10) that matches the following attributes:

    • Source Active AD BGP routes type. Source Active AD routes are classed as MVPN type 5 routes, and

    • Community value ‟blue” AND Route Target extended community, and

    • Group address prefix 239.255.0.0/24

    If the BGP route matches all three conditions, then set the Local Preference to 200.

  6. Create a policy statement default-action that accepts all other MVPN BGP routes, including SA routes tagged with the ‟red” community value.

    The import policy statement looks like:

    # on PE-2
    configure
        router
            policy-options
                begin
                prefix-list "group_239.255.x.y"
                    prefix 239.255.0.0/16 longer
                exit
                community "red" members "64496:33"
                community "blue" members "64496:11"
                community "MVPN1_RT" members "target:64496:1"
                policy-statement "MVPN1_import"
                    entry 10
                        description "allow MVPN source-ad - set LP to 200 for 'blue'"
                        from
                            community expression "[blue] AND [MVPN1_RT]"
                            mvpn-type 5
                            group-address "group_239.255.x.y"
                        exit
                        action accept
                            local-preference 200
                        exit
                    exit
                    entry 20
                        description "allow MVPN source-ad - set LP to 50 for 'red'"
                        from
                            community expression "[red] AND [MVPN1_RT]"
                            mvpn-type 5
                            group-address "group_239.255.x.y"
                        exit
                        action accept
                            local-preference 50
                        exit              
                    exit
                    default-action accept
                    exit
                exit
                commit 
    

    The export policy for PE-2 MVPN routes requires each MVPN route to be tagged with the route target extended community for VPRN 1. The following policy statement is created:

    # on PE-2
    configure
        router
            policy-options
                begin
                policy-statement "MVPN1_export"
                    entry 10
                        from
                            family mvpn-ipv4
                        exit
                        action accept
                            community add "MVPN1_RT"
                        exit
                    exit
                exit
                commit 
    
  7. Create a list of redundant sources. This is a list of prefixes that match the source addresses of redundant multicast groups. This is an important parameter because the receiver PEs only create active and standby (S,G) states for groups with source address prefixes that are contained in this list.

  8. Before any hosts attempt to join the multicast groups, the decision must be made to enable or disable inter-site shared trees at the receiver PEs. In this example, only the Inter-site shared trees disabled option will be considered. In order to make this configuration change, it is necessary to shut the PIM protocol down before and re-enable when completed.

The additional MVPN configuration for PE-2 is shown in the following output, where the redundant source prefix list is included, and inter-site shared trees are disabled.

# on PE-2
configure
    service
        vprn 1
            mvpn 
                no intersite-shared
                red-source-list
                    src-prefix 172.16.1.0/24
                    src-prefix 172.16.3.0/24
                exit
                vrf-import "MVPN1_import"
                vrf-export "MVPN1_export"
            exit 

PE-4 requires a similar set of import and export policies. In this case, the ‟red” sources have the highest Local Preference value, based on the community string added by the export policy of PE-3.

# on PE-4
configure
    router 
        policy-options
            begin
            prefix-list "group_239.255.x.y"
                prefix 239.255.0.0/16 longer
            exit
            community "red" members "64496:33"
            community "blue" members "64496:11"
            community "MVPN1_RT" members "target:64496:1"
            policy-statement "MVPN1_import"
                entry 10
                    description "allow MVPN source-ad - set LP to 200 for 'red'"
                    from
                        community expression "[red] AND [MVPN1_RT]"
                        mvpn-type 5
                        group-address "group_239.255.x.y"
                    exit
                    action accept
                        local-preference 200
                    exit
                exit
                entry 20
                    description "allow MVPN source-ad - set LP to 50 for 'blue'"
                    from
                        community expression "[blue] AND [MVPN1_RT]"
                        mvpn-type 5
                        group-address "group_239.255.x.y"
                    exit
                    action accept
                        local-preference 50
                    exit
                exit
                default-action accept
                exit
            exit
            commit

The export policy for MVPN routes adds the route target extended community. It is exactly the same export policy as for PE-2.

The additional MVPN configuration for VPRN 1 on PE-4 is identically the same as for PE-2.

Each PE within the MVPN originates an Intra-AD BGP route. This notifies the other PEs within the VPRN. This is used to create a set of Inclusive Provider Multicast Service Interfaces (I-PMSI) between each PE. In this case, I-PMSIs are signaled using mLDP.

Using PE-1 as an example, the set of Intra-AD routes can be seen using the following command:

*A:PE-1# show router bgp routes mvpn-ipv4 
===============================================================================
 BGP Router ID:192.0.2.1        AS:64496       Local AS:64496      
===============================================================================
 Legend -
 Status codes  : u - used, s - suppressed, h - history, d - decayed, * - valid
                 l - leaked, x - stale, > - best, b - backup, p - purge
 Origin codes  : i - IGP, e - EGP, ? - incomplete
 
===============================================================================
BGP MVPN-IPv4 Routes
===============================================================================
Flag  RouteType                   OriginatorIP           LocalPref   MED
      RD                          SourceAS               Path-Id     Label
      Nexthop                     SourceIP                           
      As-Path                     GroupIP                            
-------------------------------------------------------------------------------
i     Intra-Ad                    192.0.2.1              100         0
      64496:1                     -                      None        -
      192.0.2.1                   -                                   
      No As-Path                  -                                   
u*>i  Intra-Ad                    192.0.2.2              100         0
      64496:1                     -                      None        -
      192.0.2.2                   -                                   
      No As-Path                  -                                   
u*>i  Intra-Ad                    192.0.2.3              100         0
      64496:1                     -                      None        -
      192.0.2.3                   -                                   
      No As-Path                  -                                   
u*>i  Intra-Ad                    192.0.2.4              100         0
      64496:1                     -                      None        -
      192.0.2.4                   -                                   
      No As-Path                  -                                   
-------------------------------------------------------------------------------
Routes : 4
===============================================================================
*A:PE-1#

At this moment, there are no connected sources detected and no receivers wishing to join any multicast sources.

Each I-PMSI is seen as a PIM tunnel interface. As there are four routers in the MVPN, there are four I-PMSIs.

*A:PE-1# show router 1 pim tunnel-interface 
 
===============================================================================
PIM Interfaces ipv4
===============================================================================
Interface                        Originator Address   Adm  Opr  Transport Type
-------------------------------------------------------------------------------
mpls-if-73729                    192.0.2.1            Up   Up   Tx-IPMSI
mpls-if-73730                    192.0.2.3            Up   Up   Rx-IPMSI
mpls-if-73731                    192.0.2.2            Up   Up   Rx-IPMSI
mpls-if-73732                    192.0.2.4            Up   Up   Rx-IPMSI
-------------------------------------------------------------------------------
Interfaces : 4
===============================================================================
*A:PE-1#

In order to be able to reach the source, a route for each source is included in the VRF for VPRN 1.

For PE-2, this looks as follows:

*A:PE-2# show router 1 route-table 
 
===============================================================================
Route Table (Service: 1)
===============================================================================
Dest Prefix[Flags]                            Type    Proto     Age        Pref
      Next Hop[Interface Name]                                    Metric   
-------------------------------------------------------------------------------
10.10.10.1/32                                 Remote  BGP VPN   00h04m38s  170
       192.0.2.1 (tunneled)                                         0
10.10.10.3/32                                 Remote  BGP VPN   00h04m38s  170
       192.0.2.3 (tunneled)                                         0
172.16.1.0/24                                 Remote  BGP VPN   00h04m38s  170
       192.0.2.1 (tunneled)                                         0
172.16.2.0/24                                 Local   Local     00h07m00s  0
       int-PE-2-H-2                                                 0
172.16.3.0/24                                 Remote  BGP VPN   00h04m38s  170
       192.0.2.3 (tunneled)                                         0
172.16.4.0/24                                 Remote  BGP VPN   00h03m08s  170
       192.0.2.4 (tunneled)                                         0
-------------------------------------------------------------------------------
No. of Routes: 6
Flags: n = Number of times nexthop is repeated
       B = BGP backup route available
       L = LFA nexthop available
       S = Sticky ECMP requested
===============================================================================
*A:PE-2#

The sources at 172.16.1.0/24 and 172.16.3.0/24 are learned as BGP VPN routes.

The following output shows the BGP routes for these prefixes, for example for prefix 172.16.1.0/24 on PE-2:

*A:PE-2# show router bgp routes 172.16.1.0/24 vpn-ipv4 hunt 
===============================================================================
 BGP Router ID:192.0.2.2        AS:64496       Local AS:64496      
===============================================================================
 Legend -
 Status codes  : u - used, s - suppressed, h - history, d - decayed, * - valid
                 l - leaked, x - stale, > - best, b - backup, p - purge
 Origin codes  : i - IGP, e - EGP, ? - incomplete
 
===============================================================================
BGP VPN-IPv4 Routes
===============================================================================
-------------------------------------------------------------------------------
RIB In Entries
-------------------------------------------------------------------------------
Network        : 172.16.1.0/24
Nexthop        : 192.0.2.1
Route Dist.    : 64496:1                VPN Label      : 262138
Path Id        : None                   
From           : 192.0.2.5
Res. Nexthop   : n/a
Local Pref.    : 100                    Interface Name : int-PE-2-P-5
Aggregator AS  : None                   Aggregator     : None
Atomic Aggr.   : Not Atomic             MED            : None
AIGP Metric    : None                   
Connector      : None
Community      : target:64496:1 l2-vpn/vrf-imp:192.0.2.1:2
                 source-as:64496:0
Cluster        : 1.1.1.1
Originator Id  : 192.0.2.1              Peer Router Id : 192.0.2.5
Fwd Class      : None                   Priority       : None
Flags          : Used  Valid  Best  IGP  
Route Source   : Internal
AS-Path        : No As-Path
Route Tag      : 0                      
Neighbor-AS    : N/A
Orig Validation: N/A                    
Source Class   : 0                      Dest Class     : 0
Add Paths Send : Default                
Last Modified  : 00h08m43s              
VPRN Imported  :  1
  
-------------------------------------------------------------------------------
RIB Out Entries
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 1
===============================================================================
*A:PE-2#

This prefix is advertised with three communities:

  • A route target extended community

  • An l2-vpn/vrf-import extended community.

  • A source-AS extended community (not used in Intra-AS context).

The l2-vpn/vrf-import extended community is significant as it is a unique value. It represents a specific MVPN on a specific PE and is comprised of a 32 bit value that identifies the PE plus an index identifying the VRF. The 32 bit value is the system address. The index (3) can be derived from the command:

*A:PE-2# admin display-config index | match vprn1 
        virtual-router "vprn1" 2 0
*A:PE-2#

Therefore, the l2-vpn/vrf-import community for VPRN 1 on PE-1 is 192.0.2.1:2

This community attribute is included within the source-join BGP route that is sent in a BGP update by a receiver PE as it tries to join a multicast group with a source address that matches the 172.16.1.0/24 prefix. This ensures that the source-join route is only accepted as a valid route and imported by the PE that originated the source address prefix. This is explained in the following section.

Enable Redundant Sources

The redundant sources are now enabled so that multicast traffic flows into both PE-1 and PE-3, using groups (S-1,G-1) and (S-3,G-1), respectively.

On each of these PEs, a source active AD route is generated. By examining each receiver PE, these can be clearly seen.

For PE-2, the source active AD routes can be seen using the following command.

*A:PE-2# show router bgp routes mvpn-ipv4 type source-ad 
===============================================================================
 BGP Router ID:192.0.2.2        AS:64496       Local AS:64496      
===============================================================================
 Legend -
 Status codes  : u - used, s - suppressed, h - history, d - decayed, * - valid
                 l - leaked, x - stale, > - best, b - backup, p - purge
 Origin codes  : i - IGP, e - EGP, ? - incomplete
 
===============================================================================
BGP MVPN-IPv4 Routes
===============================================================================
Flag  RouteType                   OriginatorIP           LocalPref   MED
      RD                          SourceAS               Path-Id     Label
      Nexthop                     SourceIP                           
      As-Path                     GroupIP                            
-------------------------------------------------------------------------------
u*>i  Source-Ad                   -                      200         0
      64496:1                     -                      None        -
      192.0.2.1                   172.16.1.11                         
      No As-Path                  239.255.0.1                         
u*>i  Source-Ad                   -                      50          0
      64496:1                     -                      None        -
      192.0.2.3                   172.16.3.33                         
      No As-Path                  239.255.0.1                         
-------------------------------------------------------------------------------
Routes : 2
===============================================================================
*A:PE-2#

There are two routes present, one from each source for the same group from PE-1 and PE-3.

The PIM groups can now be seen on PE-1 as follows:

*A:PE-1# show router 1 pim group 
 
===============================================================================
Legend:  A = Active   S = Standby
===============================================================================
PIM Groups ipv4
===============================================================================
Group Address               Type                Spt Bit  Inc Intf       No.Oifs
   Source Address              RP                  State    Inc Intf(S) 
-------------------------------------------------------------------------------
239.255.0.1                 (S,G)                        int-PE-1-S-1   0
   172.16.1.11                 10.10.10.1                                  
239.255.0.1                 (S,G)                        mpls-if-73730  0
   172.16.3.33                 10.10.10.1                                  
-------------------------------------------------------------------------------
Groups : 2
===============================================================================
*A:PE-1#

There are two groups at PE-1. In addition to its locally connected source, PE-1 has also received a source active from PE-3 which has an incoming interface of the I-PMSI toward PE-3. The outgoing interface list is empty as there is no host wishing to become a group member.

Similarly, on the other sender, PE-3.

*A:PE-3# show router 1 pim group
 
===============================================================================
Legend:  A = Active   S = Standby
===============================================================================
PIM Groups ipv4
===============================================================================
Group Address               Type                Spt Bit  Inc Intf       No.Oifs
   Source Address              RP                  State    Inc Intf(S) 
-------------------------------------------------------------------------------
239.255.0.1                 (S,G)                        mpls-if-73730  0
   172.16.1.11                 10.10.10.3                                  
239.255.0.1                 (S,G)                        int-PE-3-S-3   0
   172.16.3.33                 10.10.10.3                                  
-------------------------------------------------------------------------------
Groups : 2
===============================================================================
*A:PE-3# 

By examining the receiver PE-2, it can be seen that the Source AD route for (S,G) (172.16.1.2, 239.255.0.1) from PE-1 has a higher local preference so it is chosen as the preferred (active) source. Examining these routes in more detail shows that each route is tagged with two communities: the route target extended community and the ‟red” or ‟blue” community, as seen in the following output.

*A:PE-2# show router bgp routes mvpn-ipv4 type source-ad hunt 
===============================================================================
 BGP Router ID:192.0.2.2        AS:64496       Local AS:64496      
===============================================================================
 Legend -
 Status codes  : u - used, s - suppressed, h - history, d - decayed, * - valid
                 l - leaked, x - stale, > - best, b - backup, p - purge
 Origin codes  : i - IGP, e - EGP, ? - incomplete
 
===============================================================================
BGP MVPN-IPv4 Routes
===============================================================================
-------------------------------------------------------------------------------
RIB In Entries
-------------------------------------------------------------------------------
Route Type     : Source-Ad              
Route Dist.    : 64496:1
Source IP      : 172.16.1.11
Group IP       : 239.255.0.1
Nexthop        : 192.0.2.1
Path Id        : None                   
From           : 192.0.2.5
Res. Nexthop   : 0.0.0.0
Local Pref.    : 200                    Interface Name : NotAvailable
Aggregator AS  : None                   Aggregator     : None
Atomic Aggr.   : Not Atomic             MED            : 0
AIGP Metric    : None                   
Connector      : None
Community      : 64496:11 no-export target:64496:1
Cluster        : 1.1.1.1
Originator Id  : 192.0.2.1              Peer Router Id : 192.0.2.5
Flags          : Used  Valid  Best  IGP  
---snip---
VPRN Imported  :  1
  
Route Type     : Source-Ad              
Route Dist.    : 64496:1
Source IP      : 172.16.3.33
Group IP       : 239.255.0.1
Nexthop        : 192.0.2.3
Path Id        : None                   
From           : 192.0.2.5
Res. Nexthop   : 0.0.0.0
Local Pref.    : 50                     Interface Name : NotAvailable
Aggregator AS  : None                   Aggregator     : None
Atomic Aggr.   : Not Atomic             MED            : 0
AIGP Metric    : None                   
Connector      : None
Community      : 64496:33 no-export target:64496:1
Cluster        : 1.1.1.1
Originator Id  : 192.0.2.3              Peer Router Id : 192.0.2.5
Flags          : Used  Valid  Best  IGP  
---snip---
VPRN Imported  :  1
  
-------------------------------------------------------------------------------
RIB Out Entries
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 2
===============================================================================
*A:PE-2#

The local preference is set based on these community values.

A debug of the received BGP Source AD routes is as follows for PE-2:

1 2017/10/12 09:54:47.907 UTC MINOR: DEBUG #2001 Base Peer 1: 192.0.2.5
"Peer 1: 192.0.2.5: UPDATE
Peer 1: 192.0.2.5 - Received BGP UPDATE:
    Withdrawn Length = 0
    Total Path Attr Length = 90
    Flag: 0x90 Type: 14 Len: 29 Multiprotocol Reachable NLRI:
        Address Family MVPN_IPV4
        NextHop len 4 NextHop 192.0.2.1
        Type: Source-AD Len: 18 RD: 64496:1 Src: 172.16.1.11 Grp: 239.255.0.1
    Flag: 0x40 Type: 1 Len: 1 Origin: 0
    Flag: 0x40 Type: 2 Len: 0 AS Path:
    Flag: 0x80 Type: 4 Len: 4 MED: 0
    Flag: 0x40 Type: 5 Len: 4 Local Preference: 100
    Flag: 0xc0 Type: 8 Len: 8 Community:
        64496:11
        no-export
    Flag: 0x80 Type: 9 Len: 4 Originator ID: 192.0.2.1
    Flag: 0x80 Type: 10 Len: 4 Cluster ID:
        1.1.1.1
    Flag: 0xc0 Type: 16 Len: 8 Extended Community:
        target:64496:1
"
2 2017/10/12 09:55:51.907 UTC MINOR: DEBUG #2001 Base Peer 1: 192.0.2.5
"Peer 1: 192.0.2.5: UPDATE
Peer 1: 192.0.2.5 - Received BGP UPDATE:
    Withdrawn Length = 0
    Total Path Attr Length = 90
    Flag: 0x90 Type: 14 Len: 29 Multiprotocol Reachable NLRI:
        Address Family MVPN_IPV4
        NextHop len 4 NextHop 192.0.2.3
        Type: Source-AD Len: 18 RD: 64496:1 Src: 172.16.3.33 Grp: 239.255.0.1
    Flag: 0x40 Type: 1 Len: 1 Origin: 0
    Flag: 0x40 Type: 2 Len: 0 AS Path:
    Flag: 0x80 Type: 4 Len: 4 MED: 0
    Flag: 0x40 Type: 5 Len: 4 Local Preference: 100
    Flag: 0xc0 Type: 8 Len: 8 Community:
        64496:33
        no-export
    Flag: 0x80 Type: 9 Len: 4 Originator ID: 192.0.2.3
    Flag: 0x80 Type: 10 Len: 4 Cluster ID:
        1.1.1.1
    Flag: 0xc0 Type: 16 Len: 8 Extended Community:
        target:64496:1
"

Similarly, the Source Active routes on receiver PE-4 show that the highest local preference value of 200 is set for the SA route received from PE-3 with an originator ID of 192.0.2.3, as follows:

*A:PE-4# show router bgp routes mvpn-ipv4 type source-ad hunt 
===============================================================================
 BGP Router ID:192.0.2.4        AS:64496       Local AS:64496      
===============================================================================
 Legend -
 Status codes  : u - used, s - suppressed, h - history, d - decayed, * - valid
                 l - leaked, x - stale, > - best, b - backup, p - purge
 Origin codes  : i - IGP, e - EGP, ? - incomplete
 
===============================================================================
BGP MVPN-IPv4 Routes
===============================================================================
-------------------------------------------------------------------------------
RIB In Entries
-------------------------------------------------------------------------------
Route Type     : Source-Ad              
Route Dist.    : 64496:1
Source IP      : 172.16.1.11
Group IP       : 239.255.0.1
Nexthop        : 192.0.2.1
Path Id        : None                   
From           : 192.0.2.5
Res. Nexthop   : 0.0.0.0
Local Pref.    : 50                     Interface Name : NotAvailable
Aggregator AS  : None                   Aggregator     : None
Atomic Aggr.   : Not Atomic             MED            : 0
AIGP Metric    : None                   
Connector      : None
Community      : 64496:11 no-export target:64496:1
Cluster        : 1.1.1.1
Originator Id  : 192.0.2.1              Peer Router Id : 192.0.2.5
Flags          : Used  Valid  Best  IGP  
---snip---
Last Modified  : 00h06m54s              
VPRN Imported  :  1
  
Route Type     : Source-Ad              
Route Dist.    : 64496:1
Source IP      : 172.16.3.33
Group IP       : 239.255.0.1
Nexthop        : 192.0.2.3
Path Id        : None                   
From           : 192.0.2.5
Res. Nexthop   : 0.0.0.0
Local Pref.    : 200                    Interface Name : NotAvailable
Aggregator AS  : None                   Aggregator     : None
Atomic Aggr.   : Not Atomic             MED            : 0
AIGP Metric    : None                   
Connector      : None
Community      : 64496:33 no-export target:64496:1
Cluster        : 1.1.1.1
Originator Id  : 192.0.2.3              Peer Router Id : 192.0.2.5
Flags          : Used  Valid  Best  IGP  
---snip---
Last Modified  : 00h06m54s              
VPRN Imported  :  1
  
-------------------------------------------------------------------------------
RIB Out Entries
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 2
===============================================================================
*A:PE-4#

Host Group Membership

If the hosts then send a (*,G) request to join the group, a source-join route is originated by each receiver PE toward the preferred source from the redundant list.

The following output shows a join originated by PE-2:

*A:PE-2# show debug 
debug
    router "Base"
        bgp
            update neighbor 192.0.2.5
        exit
    exit
exit
3 2017/10/12 10:08:34.595 UTC MINOR: DEBUG #2001 Base Peer 1: 192.0.2.5
"Peer 1: 192.0.2.5: UPDATE
Peer 1: 192.0.2.5 - Send BGP UPDATE:
    Withdrawn Length = 0
    Total Path Attr Length = 84
    Flag: 0x90 Type: 14 Len: 33 Multiprotocol Reachable NLRI:
        Address Family MVPN_IPV4
        NextHop len 4 NextHop 192.0.2.2
        Type: Source-Join Len:22 RD: 64496:1 SrcAS: 64496 Src: 172.16.1.11 
                                             Grp: 239.255.0.1
    Flag: 0x40 Type: 1 Len: 1 Origin: 0
    Flag: 0x40 Type: 2 Len: 0 AS Path:
    Flag: 0x80 Type: 4 Len: 4 MED: 0
    Flag: 0x40 Type: 5 Len: 4 Local Preference: 100
    Flag: 0xc0 Type: 8 Len: 4 Community:
        no-export
    Flag: 0xc0 Type: 16 Len: 16 Extended Community:
        target:64496:1
        target:192.0.2.1:2
"

When an active source AD route is present, there is no shared join sent to the RP. Because the source address is known, only a source-join needs to be sent. The source-join is trying to become a member of group 239.255.0.1 with a source address of 172.16.1.11. As this is sent as a BGP routing update, this must be accepted by the MVPN VRF at the PE that originated the unicast route that represents the c-multicast source. As previously mentioned, there are two extended community values. The second of these is the l2-vpn/vrf-import route target for 192.0.2.1 (PE-1), so only PE-1 will accept this route.

Examining the PIM state table for PE-2 shows the presence of a group with multiple sources.

*A:PE-2# show router 1 pim group 
  
===============================================================================
Legend:  A = Active   S = Standby
===============================================================================
PIM Groups ipv4
===============================================================================
Group Address               Type                Spt Bit  Inc Intf       No.Oifs
   Source Address              RP                  State    Inc Intf(S) 
-------------------------------------------------------------------------------
239.255.0.1                 (*,G)                        mpls-if-73730  1
   *                           10.10.10.1                                  
239.255.0.1                 (S,G)               spt      mpls-if-73730  1
   172.16.1.11                 10.10.10.1          A                       
239.255.0.1                 (S,G)                        mpls-if-73731  1
   172.16.3.33                 10.10.10.1          S                       
-------------------------------------------------------------------------------
Groups : 3
===============================================================================
*A:PE-2#

Each (S,G) has a state of either Active (A) or Standby (S), and the active group is chosen based on the Source Active AD with the highest local preference.

As a direct comparison, PE-4 also has the same two (S,G) states, but has a reversed active and standby source.

*A:PE-4# show router 1 pim group 
 
===============================================================================
Legend:  A = Active   S = Standby
===============================================================================
PIM Groups ipv4
===============================================================================
Group Address               Type                Spt Bit  Inc Intf       No.Oifs
   Source Address              RP                  State    Inc Intf(S) 
-------------------------------------------------------------------------------
239.255.0.1                 (*,G)                        mpls-if-73731  1
   *                           10.10.10.3                                  
239.255.0.1                 (S,G)                        mpls-if-73730  1
   172.16.1.11                 10.10.10.3          S                       
239.255.0.1                 (S,G)               spt      mpls-if-73731  1
   172.16.3.33                 10.10.10.3          A                       
-------------------------------------------------------------------------------
Groups : 3
===============================================================================
*A:PE-4#

The Source Active ADs received on PE-4 have their local preference values based on the community string value.

*A:PE-4# show router bgp routes mvpn-ipv4 type source-ad hunt 
===============================================================================
 BGP Router ID:192.0.2.4        AS:64496       Local AS:64496      
===============================================================================
 Legend -
 Status codes  : u - used, s - suppressed, h - history, d - decayed, * - valid
                 l - leaked, x - stale, > - best, b - backup, p - purge
 Origin codes  : i - IGP, e - EGP, ? - incomplete
 
===============================================================================
BGP MVPN-IPv4 Routes
===============================================================================
-------------------------------------------------------------------------------
RIB In Entries
-------------------------------------------------------------------------------
Route Type     : Source-Ad              
Route Dist.    : 64496:1
Source IP      : 172.16.1.11
Group IP       : 239.255.0.1
Nexthop        : 192.0.2.1
Path Id        : None                   
From           : 192.0.2.5
Res. Nexthop   : 0.0.0.0
Local Pref.    : 50                     Interface Name : NotAvailable
Aggregator AS  : None                   Aggregator     : None
Atomic Aggr.   : Not Atomic             MED            : 0
AIGP Metric    : None                   
Connector      : None
Community      : 64496:11 no-export target:64496:1
Cluster        : 1.1.1.1
Originator Id  : 192.0.2.1              Peer Router Id : 192.0.2.5
Flags          : Used  Valid  Best  IGP  
Route Source   : Internal
---snip---              
Last Modified  : 00h13m07s              
VPRN Imported  :  1
 
Route Type     : Source-Ad              
Route Dist.    : 64496:1
Source IP      : 172.16.3.33
Group IP       : 239.255.0.1
Nexthop        : 192.0.2.3
Path Id        : None                   
From           : 192.0.2.5
Res. Nexthop   : 0.0.0.0
Local Pref.    : 200                    Interface Name : NotAvailable
Aggregator AS  : None                   Aggregator     : None
Atomic Aggr.   : Not Atomic             MED            : 0
AIGP Metric    : None                   
Connector      : None
Community      : 64496:33 no-export target:64496:1
Cluster        : 1.1.1.1
Originator Id  : 192.0.2.3              Peer Router Id : 192.0.2.5
Flags          : Used  Valid  Best  IGP  
Route Source   : Internal
---snip---
Last Modified  : 00h13m07s              
VPRN Imported  :  1
  
-------------------------------------------------------------------------------
RIB Out Entries
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 2
===============================================================================
*A:PE-4# 

Sender PE MVPN Status

The MVPN status of the PE-1 sender PE is as follows:

*A:PE-1# show router 1 mvpn 
 
===============================================================================
MVPN 1 configuration data
===============================================================================
signaling          : Bgp                  auto-discovery     : Default
UMH Selection      : Highest-Ip           SA withdrawn       : Disabled
intersite-shared   : Enabled              Persist SA         : Enabled
vrf-import         : MVPN1_import
vrf-export         : MVPN1_export
vrf-target         : N/A                  
C-Mcast Import RT  : target:192.0.2.1:2
  
ipmsi              : ldp
i-pmsi P2MP AdmSt  : Up                   
i-pmsi Tunnel Name : mpls-if-73729        
Mdt-type           : sender-receiver      
  
BSR signalling     : none                 
Wildcard s-pmsi    : Disabled             
Multistream-SPMSI  : Disabled             
s-pmsi             : none                 
data-delay-interval: 3 seconds            
enable-asm-mdt     : N/A                  
  
===============================================================================
*A:PE-1#

The C-Mcast Import RT is set to <system-address>:<VPRN index>.

The VPRN index is derived from the following command:

*A:PE-1# admin display-config index | match vprn1 
        virtual-router "vprn1" 2 0
*A:PE-1#

Any Source Join received must include this attribute along with the route target extended community. As previously stated, this is advertised within the VPN-IPv4 routes as a BGP attribute.

A source join received from PE-2 to join (S,G) (172.16.1.2, 239.255.0.1) is as follows:

*A:PE-1# show router bgp routes mvpn-ipv4 type source-join hunt 
===============================================================================
 BGP Router ID:192.0.2.1        AS:64496       Local AS:64496      
===============================================================================
 Legend -
 Status codes  : u - used, s - suppressed, h - history, d - decayed, * - valid
                 l - leaked, x - stale, > - best, b - backup, p - purge
 Origin codes  : i - IGP, e - EGP, ? - incomplete
 
===============================================================================
BGP MVPN-IPv4 Routes
===============================================================================
-------------------------------------------------------------------------------
RIB In Entries
-------------------------------------------------------------------------------
Route Type     : Source-Join            
Route Dist.    : 64496:1
Source AS      : 64496
Source IP      : 172.16.1.11
Group IP       : 239.255.0.1
Nexthop        : 192.0.2.2
Path Id        : None                   
From           : 192.0.2.5
Res. Nexthop   : 0.0.0.0
Local Pref.    : 100                    Interface Name : NotAvailable
Aggregator AS  : None                   Aggregator     : None
Atomic Aggr.   : Not Atomic             MED            : 0
AIGP Metric    : None                   
Connector      : None
Community      : no-export target:64496:1 target:192.0.2.1:2
Cluster        : 1.1.1.1
Originator Id  : 192.0.2.2              Peer Router Id : 192.0.2.5
Flags          : Used  Valid  Best  IGP  
Route Source   : Internal
AS-Path        : No As-Path
Route Tag      : 0                      
Neighbor-AS    : N/A
Orig Validation: N/A                    
Source Class   : 0                      Dest Class     : 0
Add Paths Send : Default                
Last Modified  : 00h06m28s              
VPRN Imported  :  1
  
-------------------------------------------------------------------------------
RIB Out Entries
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 1
===============================================================================
*A:PE-1#

The PIM status for this group on sender PE-1 is as follows:

*A:PE-1# show router 1 pim group 239.255.0.1 source 172.16.1.11 detail
 
===============================================================================
PIM Source Group ipv4
===============================================================================
Group Address      : 239.255.0.1
Source Address     : 172.16.1.11
RP Address         : 10.10.10.1
Advt Router        : 192.0.2.1
Flags              : spt                Type               : (S,G)
Mode               : sparse             
MRIB Next Hop      : 172.16.1.11
MRIB Src Flags     : direct             
Keepalive Timer Exp: 0d 00:00:37        
Up Time            : 0d 00:19:42        Resolved By        : rtable-u
  
Up JP State        : Joined             Up JP Expiry       : 0d 00:00:00
Up JP Rpt          : Not Joined StarG   Up JP Rpt Override : 0d 00:00:00
  
Register State     : Pruned             Register Stop Exp  : 0d 00:00:45
Reg From Anycast RP: No                 
  
Rpf Neighbor       : 172.16.1.11
Incoming Intf      : int-PE-1-S-1
Outgoing Intf List : mpls-if-73729
  
Curr Fwding Rate   : 1048.6 kbps        
Forwarded Packets  : 102896             Discarded Packets  : 0
Forwarded Octets   : 154138208          RPF Mismatches     : 0
Spt threshold      : 0 kbps             ECMP opt threshold : 7
Admin bandwidth    : 1 kbps             
-------------------------------------------------------------------------------
Groups : 1
===============================================================================
*A:PE-1#

The outgoing interface list is the I-PMSI, and traffic is seen to be flowing because the current forwarding rate is non-zero.

Similarly for sender PE-3, the MVPN status is:

*A:PE-3# show router 1 mvpn 
 
===============================================================================
MVPN 1 configuration data
===============================================================================
signaling          : Bgp                  auto-discovery     : Default
UMH Selection      : Highest-Ip           SA withdrawn       : Disabled
intersite-shared   : Enabled              Persist SA         : Enabled
vrf-import         : MVPN1_import
vrf-export         : MVPN1_export
vrf-target         : N/A                  
C-Mcast Import RT  : target:192.0.2.3:2
  
ipmsi              : ldp
i-pmsi P2MP AdmSt  : Up                   
i-pmsi Tunnel Name : mpls-if-73729        
Mdt-type           : sender-receiver      
  
BSR signalling     : none                 
Wildcard s-pmsi    : Disabled             
Multistream-SPMSI  : Disabled             
s-pmsi             : none                 
data-delay-interval: 3 seconds            
enable-asm-mdt     : N/A                  
  
===============================================================================
*A:PE-3#

The Source-Join route on PE-3 for this multicast group is:

*A:PE-3# show router bgp routes mvpn-ipv4 type source-join hunt 
===============================================================================
 BGP Router ID:192.0.2.3        AS:64496       Local AS:64496      
===============================================================================
 Legend -
 Status codes  : u - used, s - suppressed, h - history, d - decayed, * - valid
                 l - leaked, x - stale, > - best, b - backup, p - purge
 Origin codes  : i - IGP, e - EGP, ? - incomplete
 
===============================================================================
BGP MVPN-IPv4 Routes
===============================================================================
-------------------------------------------------------------------------------
RIB In Entries
-------------------------------------------------------------------------------
Route Type     : Source-Join            
Route Dist.    : 64496:1
Source AS      : 64496
Source IP      : 172.16.3.33
Group IP       : 239.255.0.1
Nexthop        : 192.0.2.4
Path Id        : None                   
From           : 192.0.2.5
Res. Nexthop   : 0.0.0.0
Local Pref.    : 100                    Interface Name : NotAvailable
Aggregator AS  : None                   Aggregator     : None
Atomic Aggr.   : Not Atomic             MED            : 0
AIGP Metric    : None                   
Connector      : None
Community      : no-export target:64496:1 target:192.0.2.3:2
Cluster        : 1.1.1.1
Originator Id  : 192.0.2.4              Peer Router Id : 192.0.2.5
Flags          : Used  Valid  Best  IGP  
Route Source   : Internal
AS-Path        : No As-Path
Route Tag      : 0                      
Neighbor-AS    : N/A
Orig Validation: N/A                    
Source Class   : 0                      Dest Class     : 0
Add Paths Send : Default                
Last Modified  : 00h14m31s              
VPRN Imported  :  1
  
-------------------------------------------------------------------------------
RIB Out Entries
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 1
===============================================================================
*A:PE-3#

The PIM state for this group is as follows:

*A:PE-3# show router 1 pim group 239.255.0.1 source 172.16.3.33 detail 
 
===============================================================================
PIM Source Group ipv4
===============================================================================
Group Address      : 239.255.0.1
Source Address     : 172.16.3.33
RP Address         : 10.10.10.3
Advt Router        : 192.0.2.3
Flags              : spt                Type               : (S,G)
Mode               : sparse             
MRIB Next Hop      : 172.16.3.33
MRIB Src Flags     : direct             
Keepalive Timer Exp: 0d 00:01:10        
Up Time            : 0d 00:26:23        Resolved By        : rtable-u
  
Up JP State        : Joined             Up JP Expiry       : 0d 00:00:00
Up JP Rpt          : Not Joined StarG   Up JP Rpt Override : 0d 00:00:00
  
Register State     : Pruned             Register Stop Exp  : 0d 00:01:21
Reg From Anycast RP: No                 
  
Rpf Neighbor       : 172.16.3.33
Incoming Intf      : int-PE-3-S-3
Outgoing Intf List : mpls-if-73729
  
Curr Fwding Rate   : 1042.6 kbps        
Forwarded Packets  : 137847             Discarded Packets  : 0
Forwarded Octets   : 206494806          RPF Mismatches     : 0
Spt threshold      : 0 kbps             ECMP opt threshold : 7
Admin bandwidth    : 1 kbps             
-------------------------------------------------------------------------------
Groups : 1
===============================================================================
*A:PE-3#

The preferred source remains active unless:

  • The multicast source ceases to exist, the source PE withdraws the Source Active AD route

  • Or a Source Active AD is received with a higher local preference.

Conclusion

MVPN Source Redundancy provides an optimal solution for multicast routing in a VPRN. This protocol provides simple configuration, operation and guaranteed fast protection time. It could be utilized in a regionalized IPTV solution where multiple sources for the same TV channel are used.