ESM IPv4: Multicast with Redirection

This chapter describes ESM IPv4 multicast with redirection configurations.

Topics in this chapter include:

Applicability

The configuration in this chapter was initially based on SR OS Release 11.0.R1 and covers both IPoE and PPPoE subscribers. The CLI is updated to Release 15.0.R3.

Overview

Triple Play Service Delivery Architecture (TPSDA) allows operators to integrate High Speed Internet (HSI), voice, and video services within a single network. The goal of this chapter is to walk through a TPSDA multicast architecture with redirection. The topics are divided into the following sections:

  • Single BNG with redirection

  • SRRP BNG configuration with Multi Chassis Link Aggregation (MC-LAG) and redirection

  • IPoE ESM multicast walkthrough

  • PPPoE ESM multicast walkthrough

  • Subscriber Routed Redundancy Protocol (SRRP)

    • Multi-Chassis Synchronization (MCS) walkthrough

  • IGMP Debugging

In ESM IPv4: Multicast with SRRP, multicast is directly distributed to a subscriber through a subscriber SAP. This chapter walks through another popular model which redirects all multicast streams to a common routed interface for all subscribers. When multicast is put on the common routed interface, one single copy of a multicast stream is delivered to multiple subscribers. In this model, per-subscriber replication of multicast streams is done on an access node or on the aggregation network in order to minimize the bandwidth consumed by the multicast traffic in access/aggregation.

Network Topology Overview shows two BNGs configured with SRRP to provide redundancy. The P router is connected to the multicast source and is connected to both BNGs. The connections between the BNGs and the P router, and the multicast source and the P router, are running PIM to provide multicast delivery. On the access side, the two BNGs are connected to an aggregation switch via MC-LAG aggregating the traffic for both PPPoE and IPoE subscribers. The BNGs facing the subscriber side are IGMP aware and will respond to any subscribers’ IGMP requests.

Figure 1. Network Topology Overview

There are two requirements for a subscriber to receive multicast streams. First, the ESM group-interface must have IGMP enabled. Second, each subscriber’s subscriber profile must be customized to allow them to receive multicast streams. When both requirements are met, the BNG will process the subscribers’ IGMP messages, otherwise, IGMP messages are dropped. All customer premise equipment (CPE) IGMP messages are aggregated via the 7450 and passed onto the BNGs. Because the BNGs are running SRRP, the SRRP master is the only BNG processing and answering the IGMP messages. Protocol Independent Multicast (PIM) is used between the BNG and the P router to request the multicast streams. If PIM is successful in retrieving the multicast group, the multicast stream is forwarded toward the individual subscribers. This is the typical multicast delivery for TPSDA.

Configuration

This example builds on the ESM multicast foundation described in chapter ESM IPv4: Multicast with SRRP. It starts with a single BNG setup with redirection.

ESM Multicast Interface Redirection

Single BNG Setup with Multicast Redirection shows a popular ESM multicast model that redirects all multicast streams to a dedicated router interface. When configuring a redirected interface be aware that:

  1. Redirection between Global Routing Table (GRT) interfaces and VPRN interfaces is not supported

  2. GRT interfaces are interfaces that reside in the base router or in an IES.

  3. Redirection can be performed between interfaces in the GRT or between the interfaces in any VPRN (even different VPRNs).

The following scenario start with a simple ESM multicast configuration for BNG, without redirection.

Figure 2. Single BNG Setup with Multicast Redirection

The BNG-1 baseline configuration excluding multicast redirection is as follows. The local DHCP server is hosted on BNG-1, and is bound to interface int-DHCP-lb1.

configure
    router Base
        dhcp
            local-dhcp-server "dhcp-local-server" create
                use-gi-address scope pool
                pool "pool-1" create
                    subnet 10.0.0.0/8 create
                        options
                            subnet-mask 255.0.0.0
                            default-router 10.255.255.254
                        exit
                        address-range 10.0.0.10 10.0.0.254
                    exit
                exit
                no shutdown
            exit
        exit
        interface "int-DHCP-lb1"
            address 192.168.0.1/32
            loopback
            local-dhcp-server "dhcp-local-server"
            no shutdown
        exit
        interface "system"
            address 192.0.2.1/32
            no shutdown
        exit
    exit
exit

Subscribers are located in the 10.0.0.0/8 subnet. The multicast stream (S,G) is (192.168.4.2, 239.255.1.1).

configure
    service
        ies 1 customer 1 create
            description "BNG-1"
            interface "int-BNG-1-MCAST-S1" create
                address 192.168.4.1/30
                sap 1/1/5 create
                exit
            exit
            subscriber-interface "sub-int-1" create
                address 10.255.255.254/8
                group-interface "grp-int-1" create
                    srrp-enabled-routing
                    dhcp
                        server 192.168.0.1
                        trusted
                        lease-populate 10
                        client-applications dhcp ppp
                        gi-address 10.255.255.254
                        no shutdown
                    exit
                    authentication-policy "auth-1"
                    sap 1/1/4:1 create
                        sub-sla-mgmt
                            def-sub-profile "sub-profile-1"
                            def-sla-profile "sla-profile-1"
                            sub-ident-policy "sub-ident-1"
                            multi-sub-sap 10
                            no shutdown
                        exit
                    exit
                    pppoe
                        no shutdown
                    exit
                exit
            exit
            no shutdown
        exit
    exit
exit

To support multicast, group-interface grp-int-1 is IGMP enabled, and interface int-BNG-1-MCAST-S1 is PIM enabled.

configure
    router Base
        igmp
            group-interface "grp-int-1"
                no shutdown
            exit
            no shutdown
        exit
        pim
            interface "int-BNG-1-MCAST-S1"
            exit
            no shutdown
        exit
    exit
exit

The subscriber management profiles enabling multicast for ESM subsribers are defined as follows:

configure
    subscriber-mgmt
        igmp-policy "igmp-policy-1" create
        exit
        sub-profile "sub-profile-1" create
            igmp-policy "igmp-policy-1"
        exit
    exit
exit

A router interface is defined to redirect all multicast streams to, and added to the igmp context, as follows.

configure
    service
        ies 1 
            interface "int-REDIRECT" create
                address 192.168.10.1/30
                sap 1/1/2:1 create
                exit
            exit
        exit
    exit
exit
configure
    router
        igmp
            interface "int-REDIRECT"
                no shutdown
            exit
            no shutdown
        exit
    exit
exit

A router redirection policy is defined, redirecting every (S,G) toward the redirected interface, as follows:

configure
    router
        policy-options
            begin
            policy-statement "mcast-REDIR-IF"
                default-action accept
                    multicast-redirection fwd-service 1 "int-REDIRECT"
                exit
            exit
            commit
        exit
    exit
exit

The redirection policy then is applied to the igmp policy, which in turn is applied to the subscriber profile, as follows:

configure
    subscriber-mgmt 
        igmp-policy "igmp-policy-1"
            redirection-policy "mcast-REDIR-IF"
        exit
        sub-profile "sub-profile-1" create
            igmp-policy "igmp-policy-1"
        exit
    exit
exit

From this point on all multicast streams will be redirected to the int-REDIRECT interface.

Now send an IGMPv3 join message and then use the show router igmp group command to verify that all multicast streams are redirected. In this example, IGMPv3 is used with an (S,G) of (192.168.4.2, 239.255.1.1).

For PPPoE subscribers, the multicast (S,G) shows up on both the redirected interface and the host, as follows:

*A:BNG-1# show router igmp group
===============================================================================
IGMP Interface Groups
===============================================================================
 
(192.168.4.2,239.255.1.1)                                 UpTime: 0d 00:00:30
    Fwd List  : int-REDIRECT
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
IGMP Host Groups
===============================================================================
(192.168.4.2,239.255.1.1)
    Fwd List  : 10.0.0.10                                 UpTime: 0d 00:00:30
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
IGMP SAP Groups
===============================================================================
No Matching Entries
===============================================================================
*A:BNG-1#

For IPoE subscribers, the multicast (S,G) shows up on both the redirected interface and the SAP.

*A:BNG-1# show router igmp group
===============================================================================
IGMP Interface Groups
===============================================================================
 
(192.168.4.2,239.255.1.1)                                 UpTime: 0d 00:01:40
    Fwd List  : int-REDIRECT
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
IGMP Host Groups
===============================================================================
(192.168.4.2,239.255.1.1)
    Fwd List  : 10.0.0.12                                 UpTime: 0d 00:01:40
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
IGMP SAP Groups
===============================================================================
No Matching Entries
===============================================================================
*A:BNG-1#

Now the int-REDIRECT interface is the only interface sending out multicast streams. The first command shows that the group interface does not register any multicast group (Num-Groups=0). The second command shows that all multicast groups are registered against the redirected interface (Num-Groups=1).

*A:BNG-1# show router igmp group-interface
 
===============================================================================
IGMP Group-Interfaces
===============================================================================
FwdSvc Group-Interface                  Adm/Opr-State        Import-Policy
       SAP                              Adm/Opr-Version      Num-Groups
-------------------------------------------------------------------------------
1      grp-int-1                        Up/Up                none
       1/1/4:1                          3/3                  0
-------------------------------------------------------------------------------
Group-Interfaces = 1, SAPs = 1
===============================================================================
*A:BNG-1#
*A:BNG-1# show router igmp interface
  
===============================================================================
IGMP Interfaces
===============================================================================
Interface               Adm  Oper Querier         Cfg/Opr Num     Policy
                                                  Version Groups
-------------------------------------------------------------------------------
int-REDIRECT            Up   Up   192.168.10.1    3/3     1       none
-------------------------------------------------------------------------------
Interfaces : 1
===============================================================================
*A:BNG-1#

Debug facilities can be used to troubleshoot multicast redirection issues. The following output shows the multicast stream is redirected to a regular routed interface after an IGMP join.

74 2017/06/29 09:52:21.07 CEST MINOR: DEBUG #2001 Base IGMP[1]
"IGMP[1]: RX-PKT
[000 19:43:29.700] IGMP host 10.0.0.12 V3 PDU: 10.0.0.12 -> 224.0.0.22 pduLen 20
    Type: V3 REPORT maxrespCode 0x0 checkSum 0x2352
    Num Group Records: 1
        Group Record 0
        Type: ALW_NEW_SRCS, AuxDataLen 0, Num Sources 1
        Mcast Addr: 239.255.1.1
        Source Address List
            192.168.4.2
"
 
75 2017/06/29 09:52:21.07 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfGroupAdd
Adding 239.255.1.1 to IGMP host 10.0.0.12 database"
 
76 2017/06/29 09:52:21.07 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpProcessGroupRec
Process group rec ALW_NEW_SRCS received on host 10.0.0.12 for group 239.255.1.1
in mode INCLUDE. Num srcs 1"
 
77 2017/06/29 09:52:21.07 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfSrcAdd
Adding i/f source entry for host 10.0.0.12 (192.168.4.2,239.255.1.1) to IGMP fwd
List Database, redir if interface int-REDIRECT [ifIndex 6]"

The following output shows what happens when an IGMP leave message is sent so that the multicast stream is no longer being forwarded.

170 2017/06/29 10:05:22.07 CEST MINOR: DEBUG #2001 Base IGMP[1]
"IGMP[1]: RX-PKT 
[000 19:56:30.700] IGMP host 10.0.0.12 V3 PDU: 10.0.0.12 -> 224.0.0.22 pduLen 20
    Type: V3 REPORT maxrespCode 0x0 checkSum 0x2252
    Num Group Records: 1
        Group Record 0
        Type: BLK_OLD_SRCS, AuxDataLen 0, Num Sources 1
        Mcast Addr: 239.255.1.1
        Source Address List
            192.168.4.2
"
 
 
171 2017/06/29 10:05:22.07 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpProcessGroupRec
Process group rec BLK_OLD_SRCS received on host 10.0.0.12 for group 239.255.1.1 
in mode INCLUDE. Num srcs 1"
 
 
172 2017/06/29 10:05:22.07 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpProcessIfSrcTimerExp
Source Timer expired for IGMP host 10.0.0.12 (192.168.4.2,239.255.1.1)"
 
 
173 2017/06/29 10:05:22.07 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfSrcDel
Deleting i/f source entry for host 10.0.0.12 (192.168.4.2,239.255.1.1) from IGMP
 Database. DeleteFromAvl: 1 Redir 0"
 
 
174 2017/06/29 10:05:22.07 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfGroupDel
Deleting 239.255.1.1 from IGMP host 10.0.0.12 database"

ESM Multicast Redirection with SRRP and MC-LAG

Network Topology with MC-LAG shows a numbered SRRP setup with MC-LAG SAPs serving both IPoE and PPPoE subscribers. ESM IPv4: Multicast with SRRP covers the configuration of regular SRRP SAPs, consequently this example provides configuration guidelines to use a different type of SAP: SRRP MC-LAG SAPs. Note that redirection on SRRP SAPs without MC-LAG is also supported. The configuration of the RADIUS server is out of the scope of this example.

Figure 3. Network Topology with MC-LAG

The baseline configuration for BNG-1 excluding the IGMP configuration is as follows. The configuration begins with the MC-LAG configuration. ESM is configured in an IES service, but it is also possible to configure ESM in a VPRN. The redirection interface must be in the same routing instance as the group-interface, this applies to both regular SRRP SAPs and MC-LAG SAPs. In the following example, the MC-LAG is lag-1, customer data traffic is using VLAN 4, MC-LAG control traffic is using VLAN 5, and the redirected multicast streams are using VLAN 4094.

# Baseline for BNG-1
configure
    lag 1
        mode access
        encap-type dot1q
        port 1/1/4 priority 1
        lacp active administrative-key 32768
        no shutdown
    exit
exit
configure
    redundancy 
        multi-chassis
            peer 192.0.2.3 create
                mc-lag
                    lag 1 lacp-key 1 system-id 00:00:00:00:00:01 system-priority 100 
                    no shutdown
                exit
                sync
                    igmp
                    srrp
                    sub-mgmt ipoe pppoe
                    port lag-1 create
                        range 4-4 sync-tag "mclagdata"
                        range 5-5 sync-tag "mclagcontrol"
                    exit
                    no shutdown
                exit
                no shutdown
            exit 
        exit 
    exit 
exit
configure
    service
        ies 1 customer 1 create
            description "BNG-1"
            redundant-interface "mclink-BNG-1-BNG-2" create
                address 192.168.11.0/31 
                ip-mtu 1500
                spoke-sdp 23:1 create
                    no shutdown
                exit
            exit
            interface "int-LAG-REDIRECTED" create
                address 192.168.10.252/24 
                vrrp 1
                    backup 192.168.10.254
                exit
                sap lag-1:4094 create
                exit
            exit
            subscriber-interface "sub-int-1" create
                address 10.255.255.252/8 gw-ip-address 10.255.255.254 track-srrp 1
                group-interface "grp-int-1" create
                    srrp-enabled-routing
                    dhcp
                        server 192.168.0.1 
                        lease-populate 10
                        client-applications dhcp ppp
                        gi-address 10.255.255.252
                        no shutdown
                    exit
                    authentication-policy "auth-1"
                    redundant-interface "mclink-BNG-1-BNG-2"
                    sap lag-1:4 create
                        sub-sla-mgmt
                            def-sub-id use-sap-id
                            def-sub-profile "sub-profile-1"
                            def-sla-profile "sla-profile-1"
                            sub-ident-policy "sub-ident-1"
                            multi-sub-sap 10
                            no shutdown
                        exit
                    exit
                    sap lag-1:5 create
                    exit
                    srrp 1 create
                        message-path lag-1:5
                        priority 200
                        no preempt
                        no shutdown
                    exit
                    pppoe
                        no shutdown
                    exit
                exit
            exit
            no shutdown
        exit
    exit
exit
configure
    router Base
        interface "int-BNG-1-BNG-2"
            address 192.168.23.1/30
            port 1/1/3:4040
            no shutdown
        exit
        interface "int-BNG-1-P-1"
            address 192.168.24.1/30
            port 1/1/2:4040
            no shutdown
        exit
        interface "system"
            address 192.0.2.2/32
            bfd 100 receive 100 multiplier 3
            no shutdown
        exit
        ospf 0
            traffic-engineering
            area 0.0.0.0
                interface "system"
                    no shutdown
                exit
                interface "int-BNG-1-BNG-2"
                    interface-type point-to-point
                    metric 10000
                    no shutdown
                exit
                interface "int-BNG-1-P-1"
                    interface-type point-to-point
                    no shutdown
                exit
                interface "sub-int-1"
                    no shutdown
                exit
                interface "int-LAG-REDIRECTED"
                    no shutdown
                exit
            exit
            no shutdown
        exit
        pim
            interface "int-BNG-1-P-1"
            exit
        exit
    exit
exit

The baseline configuration for BNG-2 excluding the IGMP configuration is as follows. The default SRRP priority for BNG-2 is lower than the SRRP priority for BNG-1 and therefore BNG-2 will be in standby mode.

# Baseline for BNG-2
configure
    lag 1
        mode access
        encap-type dot1q
        port 1/1/1 priority 1
        lacp active administrative-key 32768 
        no shutdown
    exit 
exit
configure
    redundancy 
        multi-chassis
            peer 192.0.2.2 create
                mc-lag
                    lag 1 lacp-key 1 system-id 00:00:00:00:00:01 system-priority 100 
                    no shutdown
                exit
                sync
                    igmp
                    srrp
                    sub-mgmt ipoe pppoe
                    port lag-1 create
                        range 4-4 sync-tag "mclagdata"
                        range 5-5 sync-tag "mclagcontrol"
                    exit
                    no shutdown
                exit
                no shutdown
            exit 
        exit 
    exit 
exit
configure
    service
        ies 1 customer 1 create
            description "BNG-2, SRRP1"
            redundant-interface "mclink-BNG-2-BNG-1" create
                address 192.168.11.1/31 
                ip-mtu 1500
                spoke-sdp 32:1 create
                    no shutdown
                exit
            exit
            interface "int-LAG-REDIRECTED" create
                address 192.168.10.253/24
                vrrp 2
                    backup 192.168.10.254
                exit
                sap lag-1:4094 create
                exit
            exit
            subscriber-interface "sub-int-1" create
                address 10.255.255.253/8 gw-ip-address 10.255.255.254 track-srrp 1
                group-interface "grp-int-1" create
                    srrp-enabled-routing
                    dhcp
                        server 192.168.0.1 
                        lease-populate 10
                        client-applications dhcp ppp
                        gi-address 10.255.255.253
                        no shutdown
                    exit
                    authentication-policy "auth-1"
                    redundant-interface "mclink-BNG-2-BNG-1"
                    sap lag-1:4 create
                        sub-sla-mgmt
                            def-sub-id use-sap-id
                            def-sub-profile "sub-profile-1"
                            def-sla-profile "sla-profile-1"
                            sub-ident-policy "sub-ident-1"
                            multi-sub-sap 10
                            no shutdown
                        exit
                    exit
                    sap lag-1:5 create
                    exit
                    srrp 1 create
                        message-path lag-1:5
                        priority 150
                        no shutdown
                    exit
                    pppoe
                        no shutdown
                    exit
                exit
            exit
            no shutdown
        exit
    exit
exit
configure
    router Base
        interface "int-BNG-2-BNG-1"
            address 192.168.23.2/30
            port 1/1/3:4040
            no shutdown
        exit
        interface "int-BNG-2-P-1"
            address 192.168.34.1/30
            port 1/1/2:4040
            no shutdown
        exit
        interface "system"
            address 192.0.2.3/32
            bfd 100 receive 100 multiplier 3
            no shutdown
        exit
        ospf 0
            traffic-engineering
            area 0.0.0.0
                interface "system"
                    no shutdown
                exit
                interface "int-BNG-2-BNG-1"
                    interface-type point-to-point
                    metric 10000
                    no shutdown
                exit
                interface "int-BNG-2-P-1"
                    interface-type point-to-point
                    no shutdown
                exit
                interface "sub-int-1"
                    no shutdown
                exit
                interface "int-LAG-REDIRECTED"
                    no shutdown
                exit
            exit
            no shutdown
        exit
        igmp
            no shutdown
        exit
        pim
            interface "int-BNG-2-P-1"
            exit
            no shutdown
        exit
    exit
exit

The baseline configuration for the 7450 aggregation switch is as follows. It has a LAG interface configured. There are two VPLSs. The first is VPLS 1 which is used to receive all redirected multicast traffic on VLAN 4094. The second is VPLS 2 which is responsible for passing all subscriber traffic on VLAN 4.

# Baseline for AGG-1
configure
    lag 1
        mode access
        encap-type dot1q
        port 2/1/1
        port 2/1/2
        lacp active administrative-key 32768 
        no shutdown
    exit
exit
configure
    service
        vpls 4 customer 1 create
            description "for user traffic"
            stp
                shutdown
            exit
            sap 1/1/6:4 create
                description "to spirent"
                no shutdown
            exit
            sap lag-1:4 create
                no shutdown
            exit
            no shutdown
        exit
    exit
exit
configure
    service
        vpls 4094 customer 1 create
            description "for the multicast streams"
            stp
                shutdown
            exit
            sap lag-1:4094 create
                no shutdown
            exit
            sap 1/1/5:4094 create
                no shutdown
            exit
            no shutdown
        exit
    exit
exit

The baseline configuration for the P router is as follows. It is now responsible for DHCP address assignment (moved from BNG-1 in the previous configuration to allow for redundant operations in case of failure of either BNG-1 or BNG-2) and is also attached to the multicast source.

# Baseline for P-1
configure
    router
        dhcp
            local-dhcp-server "dhcp-local-server" create
                use-gi-address scope pool
                pool "pool-1" create
                    subnet 10.0.0.0/8 create
                        options
                            subnet-mask 255.0.0.0
                            default-router 10.255.255.254
                        exit
                        address-range 10.0.0.10 10.0.0.254
                    exit
                exit
                no shutdown
            exit
        exit
        interface "int-DHCP-lb1"
            address 192.168.0.1/32
            loopback
            local-dhcp-server "dhcp-local-server"
            no shutdown
        exit
        interface "int-P-1-BNG-1"
            address 192.168.24.2/30
            port 1/1/1:4040
            no shutdown
        exit
        interface "int-P-1-BNG-2"
            address 192.168.34.2/30
            port 1/1/2:4040
            no shutdown
        exit
        interface "int-P-1-mcast-source"
            address 192.168.4.1/30
            port 1/1/5:4092
            no shutdown
        exit
        interface "system"
            address 192.0.2.4/32
            no shutdown
        exit
        ospf 0
            traffic-engineering
            area 0.0.0.0
                interface "system"
                    no shutdown
                exit
                interface "int-DHCP-lb1"
                    no shutdown
                exit
                interface "int-P-1-BNG-1"
                    interface-type point-to-point
                    no shutdown
                exit
                interface "int-P-1-BNG-2"
                    interface-type point-to-point
                    no shutdown
                exit
                interface "int-P-1-mcast-source"
                    passive
                    no shutdown
                exit
            exit
            no shutdown
        exit
        pim
            interface "int-P-1-BNG-1"
            exit
            interface "int-P-1-BNG-2"
            exit
            interface "int-P-1-mcast-source"
            exit
            ---snip---
            no shutdown
        exit
    exit
exit

Enable IGMP on Group Interface and Redirect Interface

The following configuration shows how to add the group-interface and redirect interface to IGMP. If ESM is configured in a VPRN, each VPRN will have its own IGMP instance. Remember to apply the following configuration to both BNG-1 and BNG-2.

# on BNG-1 and BNG-2
configure
    router
        igmp
            group-interface "grp-int-1"
                no shutdown
            exit
            interface "int-LAG-REDIRECTED"
                no shutdown
            exit
            no shutdown
        exit
    exit
exit

Next, the IGMP policy is configured to redirect all multicast streams to a dedicated interface. The following configuration outlines the steps necessary to enable multicast redirection.

Define a router redirection policy. This will redirect every (S,G) toward the redirected interface.

configure
    router
        policy-options
            begin
            policy-statement "mcast-REDIR-IF"
                default-action accept
                    multicast-redirection fwd-service 1 "int-LAG-REDIRECTED"
                exit
            exit
            commit
        exit
    exit
exit

Apply the redirection policy to the IGMP policy, as follows:

configure
    subscriber-mgmt
        igmp-policy "igmp-policy-1" create
            redirection-policy "mcast-REDIR-IF""
        exit
    exit
exit

Add multi-chassis synchronization for the redirected interface on BNG-1. This will synchronize the IGMP state on this MC-LAG interface. A similar configuration is required on BNG-2.

# on BNG-1
configure
    redundancy 
        multi-chassis
            peer 192.0.2.3 create
                sync
                    igmp
                    srrp
                    sub-mgmt ipoe pppoe
                    port lag-1 create
                        range 4-4 sync-tag "mclagdata"
                        range 5-5 sync-tag "mclagcontrol"
                        range 4094-4094 sync-tag "mclagmulticast"
                    exit
                    no shutdown
                exit
                no shutdown
            exit 
        exit 
    exit
exit

ESM IGMP IPoE walkthrough

With the baseline configuration applied, the BNG is ready to process IGMP messages and deliver multicast streams to the subscribers through the redirected interface. Figure 4 shows the message flow for IPoE subscribers requesting and receiving multicast traffic.

  • The group-interface and redirect interface must have IGMP enabled.

  • The subscriber must be associated with an IGMP-policy via a sub-profile.

Figure 4. IPoE Multicast Message Flow

To verify the (ESM enabled) group-interface and the redirect interface are ready for multicast, use the following show commands. Remember the IES service ID is 1, the group-interface name is grp-int-1 and the interface name is int-LAG-REDIRECTED.

Verify if the group interface and redirected interface have IGMP enabled.

*A:BNG-1# show router igmp group-interface
 
===============================================================================
IGMP Group-Interfaces
===============================================================================
FwdSvc Group-Interface                  Adm/Opr-State        Import-Policy
       SAP                              Adm/Opr-Version      Num-Groups
-------------------------------------------------------------------------------
1      grp-int-1                        Up/Up                none
       lag-1:4                          3/3                  0
       lag-1:5                          3/3                  0
-------------------------------------------------------------------------------
Group-Interfaces = 1, SAPs = 2
===============================================================================
*A:BNG-1#
*A:BNG-1# show router igmp interface
  
===============================================================================
IGMP Interfaces
===============================================================================
Interface               Adm  Oper Querier         Cfg/Opr Num     Policy
                                                  Version Groups
-------------------------------------------------------------------------------
int-LAG-REDIRECTED      Up   Up   192.168.10.253  3/3     0       none
-------------------------------------------------------------------------------
Interfaces : 1
===============================================================================
*A:BNG-1#

Ensure the subscriber is associated with an IGMP-policy. Because the IGMP-policy is associated with a subscriber-profile, verification of an IGMP-policy is performed via the sub-profile.

*A:BNG-1# show subscriber-mgmt sub-profile "sub-profile-1"
 
===============================================================================
Subscriber Profile sub-profile-1
===============================================================================
Description      : (Not Specified)
I. Sched. Policy : N/A
E. Sched. Policy : N/A                              E. Agg Rate Limit: Max
I. Policer Ctrl. : N/A
E. Policer Ctrl. : N/A
I. vport-hashing : Disabled
I. sec-sh-hashing: Disabled
Q Frame-Based Ac*: Disabled
Acct. Policy     : N/A                              Collect Stats    : Disabled
ANCP Pol.        : N/A
Accu-stats-pol   : (Not Specified)
HostTrk Pol.     : N/A
IGMP Policy      : igmp-policy-1
MLD Policy       : N/A
PIM Policy       : N/A
Sub. MCAC Policy : N/A
NAT Policy       : N/A
Firewall Policy  : N/A
UPnP Policy      : N/A
NAT Prefix List  : N/A
Def. Encap Offset: none                             Encap Offset Mode: none
Avg Frame Size   : N/A
Vol stats type   : full
Preference       : 5
LAG hash class   : 1
LAG hash weight  : 1
-------------------------------------------------------------------------------
Radius Accounting
-------------------------------------------------------------------------------
Policy           : N/A
Session Opti.Stop: False
-------------------------------------------------------------------------------
HSMDA-2
-------------------------------------------------------------------------------
I. Qos Policy    : 1                                E. Qos Policy    : 1
                                                    E. Agg Rate Limit: Max
E. WRR Policy    : N/A                              Pkt Byte Offset  : add 0*
-------------------------------------------------------------------------------
Last Mgmt Change : 06/27/2017 12:01:27
===============================================================================
* indicates that the corresponding row element may have been truncated.
---snip---
*A:BNG-1#

After the verification, the BNGs are ready to deliver multicast streams. Next, initiate an IGMP report from a subscriber requesting a multicast channel. In this example, IGMPv3 with SSM is used. If the IPoE subscriber is receiving multicast through the subscriber SAP then the IGMP group will be associated with the SAP. Because redirection is used, the IGMP group is associated with the redirected interface instead. The following output shows that when an IGMP message is received and processed, an (S,G) binding is associated with the redirected interface. The example uses an IGMPv3 SSM message requesting (192.168.4.2, 239.255.1.1). The subscriber IP address is 10.0.0.11.

*A:BNG-1# show router igmp group
===============================================================================
IGMP Interface Groups
===============================================================================
 
(192.168.4.2,239.255.1.1)                                 UpTime: 0d 00:01:16
    Fwd List  : int-LAG-REDIRECTED
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
IGMP Host Groups
===============================================================================
(192.168.4.2,239.255.1.1)
    Fwd List  : 10.0.0.11                                 UpTime: 0d 00:01:16
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
IGMP SAP Groups
===============================================================================
No Matching Entries
===============================================================================
*A:BNG-1#

Next, verify the individual subscribers and their IGMP information. First verify the IGMP policy related to the subscriber.

*A:BNG-1# show service active-subscribers igmp detail
===============================================================================
Active Subscribers Detail
===============================================================================
Subscriber                       IGMP-Policy
  HostAddr                       GrpItf                           NumGroups
    GrpAddr                      Type            Up-Time          Mode
      SrcAddr                    Type                             Blk/Fwd
-------------------------------------------------------------------------------
ipoe-sub-1                       igmp-policy-1
  10.0.0.11                      grp-int-1                        1
    239.255.1.1                  Dynamic         0d 00:03:30      Include
      192.168.4.2                Dynamic                          Fwd
-------------------------------------------------------------------------------
Number of Subscribers : 1
===============================================================================
*A:BNG-1#

Because the IGMP-policy controls bandwidth, interoperability, and restricts multicast groups, it is useful to view what is defined in the IGMP-policy if the subscriber fails to receive multicast streams.

*A:BNG-1# show subscriber-mgmt igmp-policy "igmp-policy-1"
  
===============================================================================
IGMP Policy igmp-policy-1
===============================================================================
Import Policy                         :
Admin Version                         : 3
Num Subscribers                       : 1
Host Max Group                        : No Limit
Host Max Sources                      : No Limit
Host Max Group Sources                : No Limit
Query Interval                        : None
Query Last Member Interval            : None
Query Response Interval               : None
Router Alert Check                    : Enabled
Fast Leave                            : yes
Redirection Policy                    : mcast-REDIR-IF
Per Host Replication                  : no
Egress Rate Modify                    : no
Mcast Reporting Destination Name      :
Mcast Reporting Admin State           : Disabled
===============================================================================
*A:BNG-1#

The following command lists the (S,G)s that all subscribers are requesting. The operational status for the host is Up. The multicast stream is not delivered directly over the subscriber SAP, but over the int-LAG-REDIRECTED interface instead.

*A:BNG-1# show router igmp hosts detail
===============================================================================
IGMP Host 10.0.0.11
===============================================================================
Oper Status      : Up         MacAddress     : 00:10:94:00:00:02
Oper version     : 3          Subscriber     : ipoe-sub-1
Num Groups       : 1          GrpItf         : grp-int-1
Max Grps Till Now: 1          IGMP-Policy    : igmp-policy-1
PPPoE SessionId  : N/A        Next query time: 0d 00:00:32
FwdSvcId         : 1          Max Srcs Allow*: No Limit
Max Grps Allowed : No Limit   Max Grp Srcs A*: No Limit
Qry Interval     : 125        Qry Last Mbr I*: 1
Qry Resp Interval: 10         Router Alert C*: Enabled
 
-------------------------------------------------------------------------------
IGMP Group
-------------------------------------------------------------------------------
Group Address    : 239.255.1.1    Up Time    : 0d 00:06:33
Expires          : Not running    Mode       : Include
V1 Host Timer    : Not running    Type       : Dynamic
V2 Host Timer    : Not running    Compat Mode: IGMP Version 3
Redir.SvcId      : N/A            Redir.Intf : int-LAG-REDIRECTED
-----------------------------------------------------------
Source Address     Expires        Type         Fwd/Blk
-----------------------------------------------------------
192.168.4.2        0d 00:02:55    Dynamic      Fwd
-------------------------------------------------------------------------------
Hosts : 1
===============================================================================
* indicates that the corresponding row element may have been truncated.
*A:BNG-1#

ESM IGMP PPPoE Walkthrough

The same baseline configuration is used for PPPoE subscriber. PPPoE Multicast Flow shows the message flow for delivery of multicast streams to PPPoE subscribers.

Figure 5. PPPoE Multicast Flow

By default, PPPoE subscribers receive multicast streams via Ethernet unicast over subscriber SAPs. PPPoE does not have a multicast mechanism and requires all data traffic to be unicasted. However, because multicast streams are redirected, the streams are sent as multicast at both Layers 2 and 3 (the Layer 2 header will have a multicast destination MAC address and the Layer 3 header will have a multicast destination IP address).

Verify the IGMP on the group-interface. It shows very little difference from the IPoE group interface. No multicast streams are delivered directly over the subscriber SAP group interface.

*A:BNG-1# show router igmp group-interface detail
  
===============================================================================
IGMP Group-Interfaces
===============================================================================
FwdSvc/Grp-Intf    : 1/grp-int-1
Admin-Status       : Up                 Oper-Status        : Up
Import-Policy      : none               Subnet-Check       : Enabled
Router-Alert-Check : Enabled            Sub-Hosts-Only     : Enabled
MCAC Policy Name   :                    MCAC Const Adm St  : Enable
MCAC Max Unconst BW: no limit           MCAC Max Mand BW   : no limit
MCAC In use Mand BW: 0                  MCAC Avail Mand BW : unlimited
MCAC In use Opnl BW: 0                  MCAC Avail Opnl BW : unlimited
Qry Interval       : None               Qry Last Mbr Inter*: None
Qry Resp Interval  : None
MCAC If-Policy Name:
-------------------------------------------------------------------------------
 SAP               : lag-1:4
 Admin/Oper version: 3/3                Num Groups         : 0
 Max Groups Allowed: No Limit           Max Groups Till Now: 1
 Max Sources Allow*: No Limit
 Max Grp Srcs Allo*: No Limit
 Qry Interval      : 125                Qry Last Memb Inte*: 1
 Qry Resp Interval : 10
-------------------------------------------------------------------------------
 SAP               : lag-1:5
 Admin/Oper version: 3/3                Num Groups         : 0
 Max Groups Allowed: No Limit           Max Groups Till Now: 0
 Max Sources Allow*: No Limit
 Max Grp Srcs Allo*: No Limit
 Qry Interval      : 125                Qry Last Memb Inte*: 1
 Qry Resp Interval : 10
-------------------------------------------------------------------------------
Group-Interfaces = 1, SAPs = 2
===============================================================================
* indicates that the corresponding row element may have been truncated.
*A:BNG-1#

All multicast streams should be delivered over the redirected interface. The following output shows the IGMP group for a PPPoE subscriber and also that the multicast stream is associated with the int-LAG-REDIRECTED interface. The (S,G) is (192.168.4.2, 239.255.1.1) and the subscriber IP address is 10.0.0.12.

*A:BNG-1# show router igmp group
===============================================================================
IGMP Interface Groups
===============================================================================
  
(192.168.4.2,239.255.1.1)                                 UpTime: 0d 00:02:03
    Fwd List  : int-LAG-REDIRECTED
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
IGMP Host Groups
===============================================================================
(192.168.4.2,239.255.1.1)
    Fwd List  : 10.0.0.12                                 UpTime: 0d 00:02:03
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
IGMP SAP Groups
===============================================================================
No Matching Entries
===============================================================================
*A:BNG-1#

The following output shows all the subscribers and the (S,G)s they have joined. Note that there is only one PPPoE subscriber and the multicast stream is redirected.

*A:BNG-1# show router igmp hosts detail
  
===============================================================================
IGMP Host 10.0.0.12
===============================================================================
Oper Status      : Up         MacAddress     : 00:10:94:00:00:03
Oper version     : 3          Subscriber     : pppoe-sub-1
Num Groups       : 1          GrpItf         : grp-int-1
Max Grps Till Now: 1          IGMP-Policy    : igmp-policy-1
PPPoE SessionId  : 1          Next query time: 0d 00:00:23
FwdSvcId         : 1          Max Srcs Allow*: No Limit
Max Grps Allowed : No Limit   Max Grp Srcs A*: No Limit
Qry Interval     : 125        Qry Last Mbr I*: 1
Qry Resp Interval: 10         Router Alert C*: Enabled
  
-------------------------------------------------------------------------------
IGMP Group
-------------------------------------------------------------------------------
Group Address    : 239.255.1.1    Up Time    : 0d 00:02:50
Expires          : Not running    Mode       : Include
V1 Host Timer    : Not running    Type       : Dynamic
V2 Host Timer    : Not running    Compat Mode: IGMP Version 3
Redir.SvcId      : N/A            Redir.Intf : int-LAG-REDIRECTED
-----------------------------------------------------------
Source Address     Expires        Type         Fwd/Blk
-----------------------------------------------------------
192.168.4.2        0d 00:02:44    Dynamic      Fwd
-------------------------------------------------------------------------------
Hosts : 1
===============================================================================
* indicates that the corresponding row element may have been truncated.
*A:BNG-1#

To view the (S,G)s of a single subscriber, use the following command.

*A:BNG-1# show service active-subscribers igmp subscriber "pppoe-sub-1" detail
  
===============================================================================
Active Subscribers Detail
===============================================================================
Subscriber                       IGMP-Policy
  HostAddr                       GrpItf                           NumGroups
    GrpAddr                      Type            Up-Time          Mode
      SrcAddr                    Type                             Blk/Fwd
-------------------------------------------------------------------------------
pppoe-sub-1                      igmp-policy-1
  10.0.0.12                      grp-int-1                        1
    239.255.1.1                  Dynamic         0d 00:04:42      Include
      192.168.4.2                Dynamic                          Fwd
-------------------------------------------------------------------------------
Number of Subscribers : 1
===============================================================================
*A:BNG-1#

ESM IGMP MCS

The BNGs are configured with SRRP for both IPoE and PPPoE subscribers. This provides stateful redundancy when the master BNG fails. The SRRP master BNG will be the only BNG processing and answering IGMP messages, while the standby BNG synchronizes the state information of all subscribers via MCS in real time. In the event of a failure, the standby takes over and starts processing all IGMP messages. As the standby BNG has the full state information of all subscribers, including the (S,G)s they have joined, PIM starts sending joins for those (S,G)s immediately after failover. Restoration of all multicast streams happens quickly and relies on the PIM configuration and the underlying routing infrastructure. Note that the PIM command non-dr-attract-traffic can be used to reduce the failover outage by attracting multicast to the non designated PIM router.

The following output shows the items that are synchronized between the BNGs. To reduce the ESM multicast restoration time, it is important that all subscriber related data (IPoE, PPPoE, SRRP and IGMP) are kept in sync. BNG-1 has system IP address 192.0.2.2 and BNG-2 has system IP address 192.0.2.3.

*A:BNG-1# show redundancy multi-chassis sync peer 192.0.2.3 detail
 
===============================================================================
Multi-chassis Peer Table
===============================================================================
Peer
-------------------------------------------------------------------------------
Peer IP Address         : 192.0.2.3
Description             : (Not Specified)
Authentication          : Disabled
Source IP Address       : 192.0.2.2
Admin State             : Enabled
Warm standby            : No
Remote warm standby     : No
-------------------------------------------------------------------------------
Sync-status
-------------------------------------------------------------------------------
Client Applications     : IGMP SUBMGMT-IPOE SUBMGMT-PPPOE SRRP
Sync Admin State        : Up
Sync Oper State         : Up
Sync Oper Flags         :
DB Sync State           : inSync
Num Entries             : 31
Lcl Deleted Entries     : 0
Alarm Entries           : 0
OMCR Standby Entries    : 0
OMCR Alarm Entries      : 0
Rem Num Entries         : 31
Rem Lcl Deleted Entries : 2
Rem Alarm Entries       : 0
Rem OMCR Standby Entries: 0
Rem OMCR Alarm Entries  : 0
  
===============================================================================
MCS Application Stats
===============================================================================
Application             : igmp
Num Entries             : 3
Lcl Deleted Entries     : 0
Alarm Entries           : 0
OMCR Standby Entries    : 0
OMCR Alarm Entries      : 0
-------------------------------------------------------------------------------
Rem Num Entries         : 3
Rem Lcl Deleted Entries : 2
Rem Alarm Entries       : 0
Rem OMCR Standby Entries: 0
Rem OMCR Alarm Entries  : 0
-------------------------------------------------------------------------------
  
---snip---
  
-------------------------------------------------------------------------------
Application             : subMgmtIpoe
Num Entries             : 1
Lcl Deleted Entries     : 0
Alarm Entries           : 0
OMCR Standby Entries    : 0
OMCR Alarm Entries      : 0
-------------------------------------------------------------------------------
Rem Num Entries         : 1
Rem Lcl Deleted Entries : 0
Rem Alarm Entries       : 0
Rem OMCR Standby Entries: 0
Rem OMCR Alarm Entries  : 0
-------------------------------------------------------------------------------
Application             : srrp
Num Entries             : 26
Lcl Deleted Entries     : 0
Alarm Entries           : 0
OMCR Standby Entries    : 0
OMCR Alarm Entries      : 0
-------------------------------------------------------------------------------
Rem Num Entries         : 26
Rem Lcl Deleted Entries : 0
Rem Alarm Entries       : 0
Rem OMCR Standby Entries: 0
Rem OMCR Alarm Entries  : 0
-------------------------------------------------------------------------------
  
---snip---
  
-------------------------------------------------------------------------------
Application             : subMgmtPppoe
Num Entries             : 1
Lcl Deleted Entries     : 0
Alarm Entries           : 0
OMCR Standby Entries    : 0
OMCR Alarm Entries      : 0
-------------------------------------------------------------------------------
Rem Num Entries         : 1
Rem Lcl Deleted Entries : 0
Rem Alarm Entries       : 0
Rem OMCR Standby Entries: 0
Rem OMCR Alarm Entries  : 0
-------------------------------------------------------------------------------
 
---snip---
 
===============================================================================
Ports synced on peer 192.0.2.3
===============================================================================
Port/Encap                    Tag
-------------------------------------------------------------------------------
lag-1
  4-4                         mclagdata
  5-5                         mclagcontrol
  4094-4094                   mclagmulticast
===============================================================================
  
---snip---
  
*A:BNG-1#

To check the details of the sync data across the BNGs, a tools command giving a detailed description of the IGMP information synced across MCS can be used.

*A:BNG-1# tools dump redundancy multi-chassis sync-database application igmp detail
  
If no entries are present for an application, no detail will be displayed.
  
FLAGS LEGEND: ld - local delete; da - delete alarm; pd - pending global delete;
              oal - omcr alarmed; ost - omcr standby
  
Peer Ip 192.0.2.3
  
  
Application IGMP
Sap-id             Client Key
 SyncTag                          DLen  Flags            timeStamp
  deleteReason code and description                   #ShRec
-------------------------------------------------------------------------------
lag-1:4            Host=10.0.0.15, HostGroup=239.255.1.1
 mclagdata                        20    -- -- -- --- --- 06/28/2017 09:53:28
  0x0                                                 0
lag-1:4            Host=10.0.0.16, HostGroup=239.255.1.1
 mclagdata                        20    -- -- -- --- --- 06/28/2017 09:53:37
  0x0                                                 0
lag-1:4094         Group=239.255.1.1
 mclagmulticast                   20    -- -- -- --- --- 06/28/2017 09:53:28
  0x0                                                 0
  
The following totals are for:
 peer ip ALL, port/lag/sdp ALL, sync-tag ALL, application IGMP
Valid Entries:                   3
Locally Deleted Entries:         0
Locally Deleted Alarmed Entries: 0
Pending Global Delete Entries:   0
Omcr Alarmed Entries:            0
Omcr Standby Entries:            0
Associated Shared Records (ALL): 0
Associated Shared Records (LD):  0
*A:BNG-1#

ESM IGMP Debug

Debug facilities allow for real-time monitoring of events happening on the system. This includes tools for debugging ESM multicast streams.

First enable the required debug on the system, then send an IGMP message to join a multicast group (S,G). The message used in this example is an IGMPv3 message with SSM.

The following is the debug information for an ESM IGMP report message at packet level.

debug
    router 
        igmp
            packet mode egr-ingr-and-dropped
        exit
    exit
exit
13 2017/06/28 10:09:32.86 CEST MINOR: DEBUG #2001 Base IGMP[1]
"IGMP[1]: RX-PKT
[000 22:17:54.700] IGMP host 10.0.0.15 V3 PDU: 10.0.0.15 -> 224.0.0.22 pduLen 20
    Type: V3 REPORT maxrespCode 0x0 checkSum 0x2352
    Num Group Records: 1
        Group Record 0
        Type: ALW_NEW_SRCS, AuxDataLen 0, Num Sources 1
        Mcast Addr: 239.255.1.1
        Source Address List
            192.168.4.2
"

The following is the debug information for an ESM IGMP host. The multicast stream is redirected to the LAG interface and that an MCS entry is installed for the new IGMP group.

debug
    router 
        igmp
            host "10.0.0.15"
        exit
    exit
exit
22 2017/06/28 10:11:53.84 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfGroupAdd
Adding 239.255.1.1 to IGMP host 10.0.0.15 database"
 
23 2017/06/28 10:11:53.84 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpProcessGroupRec
Process group rec ALW_NEW_SRCS received on host 10.0.0.15 for group 239.255.1.1
in mode INCLUDE. Num srcs 1"
 
24 2017/06/28 10:11:53.84 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfSrcAdd
Adding i/f source entry for host 10.0.0.15 (192.168.4.2,239.255.1.1) to IGMP fwd
List Database, redir if interface int-LAG-REDIRECTED [ifIndex 7]"
 
25 2017/06/28 10:11:53.84 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpMcsAddIfGroup
Building MCS entry for host 10.0.0.15, group 239.255.1.1"
 
26 2017/06/28 10:11:56.31 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpProcessGroupRec
Process group rec ALW_NEW_SRCS received on host 10.0.0.15 for group 239.255.1.1
in mode INCLUDE. Num srcs 1"
 
27 2017/06/28 10:11:56.30 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpMcsAddIfGroup
Building MCS entry for host 10.0.0.15, group 239.255.1.1"

The following debug information is received for ESM IGMP when MCS sync is enabled. The MCS sends a sync message for the redirect interface.

debug
    router 
        igmp
            mcs "int-LAG-REDIRECTED"
        exit
    exit
exit
46 2017/06/28 10:19:06.23 CEST MINOR: DEBUG #2001 Base IGMP MCS[1]
"IGMP MCS[1]: TX-MCS Data
interface int-LAG-REDIRECTED [ifIndex 7]
Key Type: Group, Len: 9, Grp Addr: 239.255.1.1
Data Type: Group, Len: 20, Ver: 0, RecType: 1, Compat Mode: 3,
Num Fwd Srcs: 1, Num Blk Srcs: 0
Fwd Sources:
    192.168.4.2
"
 
47 2017/06/28 10:19:11.05 CEST MINOR: DEBUG #2001 Base IGMP MCS[1]
"IGMP MCS[1]: TX-MCS Data
interface int-LAG-REDIRECTED [ifIndex 7]
Key Type: Group, Len: 9, Grp Addr: 239.255.1.1
Data Type: Group, Len: 20, Ver: 0, RecType: 1, Compat Mode: 3,
Num Fwd Srcs: 1, Num Blk Srcs: 0
Fwd Sources:
    192.168.4.2
"

The corresponding debug information for ESM IGMP MCS sync on BNG-2 looks as follows:

1 2017/06/28 10:19:06.24 CEST MINOR: DEBUG #2001 Base IGMP MCS[1]
"IGMP MCS[1]: RX-MCS Data
interface int-LAG-REDIRECTED [ifIndex 8]
Key Type: Group, Len: 9, Grp Addr: 239.255.1.1
Data Type: Group, Len: 20, Ver: 0, RecType: 1, Compat Mode: 3,
Num Fwd Srcs: 1, Num Blk Srcs: 0
Fwd Sources:
    192.168.4.2
"

The same debug commands can be used for viewing IGMP leave messages. The following debug information is received for an ESM IGMP leave at the packet level. The leave report message received over the subscriber SAP results in the multicast stream being stopped on the redirected interface, after ensuring no other CPE devices still require the multicast streams (by means of a query).

debug
    router 
        igmp
            packet mode egr-ingr-and-dropped
        exit
    exit
exit
64 2017/06/28 10:26:25.31 CEST MINOR: DEBUG #2001 Base IGMP[1]
"IGMP[1]: RX-PKT
[000 22:34:47.160] IGMP host 10.0.0.15 V3 PDU: 10.0.0.15 -> 224.0.0.22 pduLen 20
    Type: V3 REPORT maxrespCode 0x0 checkSum 0x2252
    Num Group Records: 1
        Group Record 0
        Type: BLK_OLD_SRCS, AuxDataLen 0, Num Sources 1
        Mcast Addr: 239.255.1.1
        Source Address List
            192.168.4.2
"
 
65 2017/06/28 10:26:25.31 CEST MINOR: DEBUG #2001 Base IGMP[1]
"IGMP[1]: TX-PKT
[000 22:34:47.160] IGMP interface int-LAG-REDIRECTED [ifIndex 7] V3 PDU: 192.168
.10.253 -> 239.255.1.1 pduLen 16
    Type: QUERY maxrespCode 0xa checkSum 0x36cc
    GroupAddr: 239.255.1.1
        S bit 0, QRV 2, Encoded-QQIC 125, NumSources 1
        Source Address List:
            192.168.4.2
"
 
66 2017/06/28 10:26:26.86 CEST MINOR: DEBUG #2001 Base IGMP[1]
"IGMP[1]: TX-PKT
[000 22:34:48.710] IGMP interface int-LAG-REDIRECTED [ifIndex 7] V3 PDU: 192.168
.10.253 -> 239.255.1.1 pduLen 16
    Type: QUERY maxrespCode 0xa checkSum 0x36cc
    GroupAddr: 239.255.1.1
        S bit 0, QRV 2, Encoded-QQIC 125, NumSources 1
        Source Address List:
            192.168.4.2
"

The following debug information is received for an ESM IGMP host showing various IGMP events. The MCS also signals the removal of the IGMP entry in the database.

debug
    router 
        igmp
            host "10.0.0.15"
        exit
    exit
exit
73 2017/06/28 10:30:29.95 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpProcessGroupRec
Process group rec BLK_OLD_SRCS received on host 10.0.0.15 for group 239.255.1.1
in mode INCLUDE. Num srcs 1"
 
74 2017/06/28 10:30:29.95 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpProcessIfSrcTimerExp
Source Timer expired for IGMP host 10.0.0.15 (192.168.4.2,239.255.1.1)"
 
75 2017/06/28 10:30:29.95 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfSrcDel
Deleting i/f source entry for host 10.0.0.15 (192.168.4.2,239.255.1.1) from IGMP
 Database. DeleteFromAvl: 1 Redir 0"
 
76 2017/06/28 10:30:29.95 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfGroupDel
Deleting 239.255.1.1 from IGMP host 10.0.0.15 database"
 
77 2017/06/28 10:30:29.95 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpMcsDelIfGroup
Building MCS entry for host 10.0.0.15, group 239.255.1.1"
 
78 2017/06/28 10:30:29.95 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpMcsDelIfGroup
Deleting MCS entry for host 10.0.0.15, group 239.255.1.1, Glb"

The following debug information is received when MCS removes the entry on BNG-1. MCS also triggers the backup BNG to remove the multicast stream.

debug
    router 
        igmp
            mcs "int-LAG-REDIRECTED"
        exit
    exit
exit
84 2017/06/28 10:34:35.06 CEST MINOR: DEBUG #2001 Base IGMP MCS[1]
"IGMP MCS[1]: TX-MCS Data
interface int-LAG-REDIRECTED [ifIndex 7]
Key Type: Group, Len: 9, Grp Addr: 239.255.1.1
Data Type: Group, Len: 20, Ver: 0, RecType: 1, Compat Mode: 3,
Num Fwd Srcs: 1, Num Blk Srcs: 0
Fwd Sources:
    192.168.4.2
"
 
85 2017/06/28 10:34:36.86 CEST MINOR: DEBUG #2001 Base IGMP MCS[1]
"IGMP MCS[1]: TX-MCS Data (GlblDel)
interface int-LAG-REDIRECTED [ifIndex 7]
Key Type: Group, Len: 9, Grp Addr: 239.255.1.1
Data Type: Group, Len: 16, Ver: 0, RecType: 1, Compat Mode: 3,
Num Fwd Srcs: 0, Num Blk Srcs: 0
"

The debug information on BNG-2 shows the sync message received over MCS for the removal of the multicast (S,G).

9 2017/06/28 10:34:22.88 CEST MINOR: DEBUG #2001 Base IGMP MCS[1]
"IGMP MCS[1]: RX-MCS Data
interface int-LAG-REDIRECTED [ifIndex 8]
Key Type: Group, Len: 9, Grp Addr: 239.255.1.1
Data Type: Group, Len: 20, Ver: 0, RecType: 1, Compat Mode: 3,
Num Fwd Srcs: 1, Num Blk Srcs: 0
Fwd Sources:
    192.168.4.2
"

Conclusion

Multicast is an essential part of Triple Play Services. The SR OS TPSDA solution is much more than a baseline multicast delivery, it includes individual subscriber awareness and offers a full state redundancy option. Subscriber awareness allows for fine tuning of subscriber multicast settings and for troubleshooting on a per subscriber basis. Full state redundancy reduces failover time and ensures high availability of multicast services. This example provided a complete configuration walkthrough of both the IPoE and PPPoE SRRP model with redirection. All multicast streams can be redirected to a dedicated interface for all subscribers to receive.