ESM IPv4: Multicast with SRRP

This chapter describes ESM IPv4 multicast with SRRP configurations.

Topics in this chapter include:

Applicability

This chapter applies to SR OS routers, and was originally written for Release 11.0.R1. The CLI is updated to Release 15.0.R3. It covers multicast with Subscriber Routed Redundancy Protocol (SRRP) for IPoE and PPPoE subscribers.

Overview

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

  • Enhanced Subscriber Management (ESM) multicast baseline configuration

    • IGMP configuration on ESM group interface

    • ESM IGMP-policy configuration

  • IPoE ESM multicast walkthrough

  • PPPoE ESM multicast walkthrough

  • IGMP Subscriber Router Redundancy Protocol (SRRP)

    • Multi-Chassis Synchronization (MCS) walkthrough

  • IGMP Debugging

  • IGMP Control Plane Filters

  • IGMP Data Plane Filters

The network topology displayed in Network Topology Overview shows a typical TPSDA setup. It consists of three 7750s and a single 7450. Two 7750s are configured as Broadband Network Gateways (BNGs) and the third 7750 is configured as a P router. The 7450 is used as an aggregation switch to aggregate all subscribers.

Figure 1. Network Topology Overview

Both BNGs are configured with SRRP to provide redundancy. SRRP is only used for redundancy purposes. SRRP is not required for supporting multicast. The P router is connected to the multicast source and to the network side of both BNGs. The connections between the BNGs and the P router are also running PIM to provide multicast delivery. On the access side, the two BNGs are connected to an aggregation switch which aggregates the traffic originating from both PPPoE and IPoE subscribers. The BNGs are IGMP capable and will respond to subscribers’ IGMP requests.

There are two requirements to enable multicast delivery using ESM. First, the ESM group interface must have IGMP enabled. Second, the ESM subscribers must be configured with an IGMP-policy to receive multicast. When both requirements are met, the BNG will process the subscribers’ IGMP messages, otherwise, IGMP messages are simply ignored and dropped. All customer premise equipment (CPE) IGMP messages are aggregated via the 7450 and passed to the BNGs. Because the BNGs are running SRRP, the SRRP master is the only BNG processing and answering the IGMP messages. Protocol Independent Multicasting (PIM) is then used between the BNG and the P router to request the multicast stream. If PIM is successful in retrieving the multicast group, the multicast stream is forwarded toward the subscribers. This is the typical multicast delivery model for TPSDA.

Configuration

This section expects a basic knowledge of ESM.

ESM SRRP Baseline Configuration

Example Topology shows the addressing scheme used in the setup. The example uses numbered SRRP subscriber interfaces with static SAPs serving both IPoE and PPPoE subscribers. The configuration of the RADIUS server is out of the scope of this example.

Figure 2. Example Topology

The baseline configuration for BNG-1 follows, excluding the IGMP configuration. In this example, the subscriber-interface is configured in an IES, although it is possible to configure the subscriber-interface in a VPRN. OSPF and PIM are provisioned to provide routing and multicast capabilities. The SRRP configuration with priority 200 ensures BNG-1 is the master when both BNGs are active because the SRRP priority for BNG-2 is lower.

# BNG-1
configure
    service
        ies 1 customer 1 create
            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
            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
                        option
                            action replace
                            circuit-id
                            no remote-id
                        exit
                        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 1/1/4: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 1/1/4:5 create
                    exit
                    srrp 1 create
                        message-path 1/1/4:5
                        priority 200
                        no preempt
                        no shutdown
                    exit
                    pppoe
                        no shutdown
                    exit
                exit
            exit
            no shutdown
        exit
    exit
exit
configure
    router
        ospf
            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
            exit
            no shutdown
        exit
        pim
            interface "int-BNG-1-P-1"
            exit
            no shutdown
        exit
    exit
exit

The baseline configuration for BNG-2 follows, excluding the IGMP configuration. The SRRP priority for BNG-2 is lower than the SRRP priority for BNG-1, thus BNG-2 will be in standby mode.

# BNG-2
configure
    service
        ies 1 customer 1 create
            no shutdown
            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
            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
                        option
                            action replace
                            circuit-id
                            no remote-id
                        exit
                        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 1/1/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 1/1/1:5 create
                    exit
                    srrp 1 create
                        message-path 1/1/1:5
                        priority 150
                        no preempt
                        no shutdown
                    exit
                    pppoe
                        no shutdown
                    exit
                exit
            exit
            no shutdown
        exit
    exit
exit
configure
    router
        ospf
            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
            exit
            no shutdown
        exit
        pim
            interface "int-BNG-2-P-1"
            exit
            no shutdown
        exit
    exit
exit

The baseline configuration for the aggregation switch AGG-1 follows. Two VPLS services are configured. VPLS 5 is responsible for passing SRRP control traffic over VLAN 5. VPLS 4 is responsible for passing all subscriber data traffic over VLAN 4.

# AGG-1
configure
    service
        vpls 4 customer 1 create
            description "for user traffic"
            stp
                shutdown
            exit
            sap 1/1/6:4 create
                no shutdown
            exit
            sap 2/1/1:4 create
                no shutdown
            exit
            sap 2/1/2:4 create
                no shutdown
            exit
            no shutdown
        exit
        vpls 5 customer 1 create
            description "for SRRP/redundancy"
            stp
                shutdown
            exit
            sap 2/1/1:5 create
                no shutdown
            exit
            sap 2/1/2:5 create
                no shutdown
            exit
            no shutdown
        exit
    exit
exit

The baseline configuration on the P router is as follows. The P router has a local DHCP server configured and performs the DHCP address assignment. The P router also is attached to the multicast source and uses PIM to deliver multicast streams.

# P-1
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 "int-P-1-BNG-1"
            address 192.168.24.2/30
            port 1/1/1:4094
            no shutdown
        exit
        interface "int-P-1-BNG-2"
            address 192.168.34.2/30
            port 1/1/2:4094
            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 Interfaces

The configuration below adds the group interface to IGMP. If the subscriber-interface is configured in a VPRN, each VPRN will have its individual IGMP instance. Add the group-interface to the IGMP instance.

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

Placing the group-interface into IGMP is the first step required to deliver multicast streams. The options available in this IGMP context can be classified into two categories:

  1. Bandwidth and multicast group management

  2. Interoperability

 [no] disable-router* - Enable/disable the IGMP router alert check option
 [no] import          - Import a policy to filter IGMP packets
 [no] max-groups      - Configure the maximum number of groups for this group-interface
 [no] max-grp-sources - Configure the maximum number of group sources for this 
                        group-interface
 [no] max-sources     - Configure the maximum number of sources for this group-interface
      mcac            + Configure multicast CAC policy and constraints for this interface
 [no] query-interval  - Configure the frequency at which Host-Query packets are
                        transmitted
 [no] query-last-mem* - Configure the frequency at which Group-Specific-Query packets
                        are transmitted
 [no] query-response* - Configure the time to wait to receive a response to the 
                        Host-Query message from the host
 [no] query-src-ip    - Configure the IP source address used in IGMP queries for this
                        group interface
 [no] shutdown        - Administratively enable/disable the interface
 [no] sub-hosts-only  - Enable/disable the IGMP traffic from known hosts only
 [no] subnet-check    - Enable/disable local subnet checking for IGMP
 [no] version         - Configure the version of IGMP

The bandwidth and multicast group management options are:

  • Import — Used for white-listing or black-listing multicast groups in the IGMP control plane. More configuration detail is offered in a later section.

  • Max-groups — Controls the maximum number of groups (channels) allowed on the group interface.

  • Max-sources — Controls the maximum number of sources of the multicast streams on a group interface.

  • Max-grp-sources — Specifies the maximum number of multicast group and source pairs for a group-interface.

  • MCAC — Multicast Connection Admission Control (MCAC) is a bandwidth management feature to control the amount of multicast streams a group interface is allowed to receive. It can also be applied at subscriber level to offer a hierarchical control. Multicast bandwidth can be controlled on a per subscriber basis.

  • query-interval — defines the frequency at which general host-query messages are sent out by the querier.

  • query-last-member-interval — defines the frequency at which the querier sends group-specific queries including messages sent in response to leave-group messages.

  • query-response-interval — defines how long the querier waits to receive a response to a host-query message from a host.

  • query-src-ip — defines the query source IP address for the group interface.

The interoperability options available are:

  • Router alert — enable or disable router alert processing.

  • Sub-hosts-only — Only subscriber originated IGMP messages are accepted and anything else is ignored. Sometimes, IGMP message might not arrive directly from the subscriber. For example, an aggregation switch or DSLAM residing between the CPE and the BNG might perform IGMP proxy. The switch/DSLAM will insert its own source IP-address in place of the subscriber.

    It should be noted that, when an IGMP proxy is used, the identity of the subscriber is lost (because the original source IP of the IGMP message is replaced).

  • Subnet-check — IGMP messages will be checked against the group interface subnet. All IGMP messages with a source address that is not in the local subnet are dropped.

  • Version — The RFCs define three versions of IGMP, all of them are supported by SR OS.

    It must be noted that when subscribers are sending IGMPv1 or v2 in a bridged LAN, suppression of IGMP messages can occur. If an IGMP host detects the presence of another host reporting for the same multicast group, it will suppress its own IGMP report message and silently receive the multicast stream. When IGMP messages are suppressed, the BNG might not be able to account for the real multicast bandwidth consumption of each subscriber. IGMPv3, on the other hand, forces all hosts to send IGMP reports. This guarantees that the BNG identifies each subscriber’s IGMP request.

ESM IGMP Policy

In addition to enabling IGMP on the group interface, the subscriber must be allowed to receive multicast streams through an IGMP policy. For this purpose, the IGMP-policy is associated with the subscriber’s subscriber-profile. Therefore during authentication, either RADIUS, the local user database (LUDB), or the default-sub-profile should return a sub-profile with an IGMP policy. The provisioning requires two steps:

First create the IGMP policy, as follows:

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

Then add the IGMP policy to a subscriber-profile, as follows:

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

The above configuration is the minimum requirement for a subscriber to receive multicast streams. The different options inside an IGMP policy are:

 [no] description     - Description for the policy
 [no] disable-router* - Enable/disable the router alert check option
 [no] egress-rate-mo* - Configure the egress rate modification
 [no] fast-leave      - Enable/disable fast-leave processing
 [no] import          - Specify the import policy to filter packets
 [no] max-num-groups  - Configure the max number of multicast groups
 [no] max-num-grp-so* - Configure the max number of multicast group sources
 [no] max-num-sources - Configure the max number of multicast sources
 [no] mcast-reporting + Configure the mcast reporting
 [no] per-host-repli* - Enable/disable per-host-replication processing
 [no] query-interval  - Configure the frequency at which Host-Query packets are
                        transmitted
 [no] query-last-mem* - Configure the frequency at which Group-Specific-Query packets
                        are transmitted
 [no] query-response* - Configure the time to wait to receive a response to the 
                        Host-Query message from the host
 [no] redirection-po* - Specify the redirection policy
      static          + Add/remove static group membership
 [no] version         - Configure the version

Again, two groups of options are available: the bandwidth and multicast group management options, and the interoperability options.

Bandwidth and multicast group management options:

  • Import — Used for white-listing and black-listing multicast groups. This allows the import policy to be defined per subscriber.

  • Max-num-group — Limits the maximum multicast groups for the group interface. This limits the groups per subscriber.

  • Max-num-sources — Limits the maximum multicast sources for the group interface. This limits the sources per subscriber.

  • Max-num-grp-sources — Limits the maximum multicast group and source pairs for the group interface.

  • Egress-rate-modify — This feature adjusts the subscriber queue bandwidth according to multicast consumption. It is used in conjunction with MCAC. An MCAC policy defines the bandwidth consumption per multicast group. As a subscriber joins a multicast group, the bandwidth of the multicast channel is subtracted from the subscriber queue bandwidth. The remaining bandwidth is what the subscriber can use for all other services.

  • query-interval — defines the frequency at which general host-query messages are sent out by the querier.

  • query-last-member-interval — defines the frequency at which the querier sends group-specific queries including messages sent in response to leave-group messages.

  • query-response-interval — defines how long the querier waits to receive a response to a host-query message from a host.

Interoperability options:

  • Fast-leave — Enables the router to withdraw the multicast group quickly when receiving an IGMP leave message without any last query. This should be used in a subscriber per SAP (dot1q or qinq) model.

  • Static — This allows the provisioning of static multicast groups that the subscriber will receive regardless of any IGMP report. The static multicast group can be Source Specific Multicast (SSM) based.

  • Per-host-replication — SR OS has the capability to replicate a multicast source per subscriber. For example, if 10 subscribers are requesting the same multicast group, then 10 multicast streams are replicated and delivered individually to each subscriber. PPPoE requires service delivery to be point to point. To achieve this, the Ethernet header destination address for the multicast stream is the subscriber’s source MAC. The IP layer destination is the same as the multicast group that the subscriber requested. For IPoE, without per-host replication, the standard multicast MAC representing the multicast group is used as the destination MAC address when delivering the multicast streams to the subscribers. When per-host replication is used for IPoE subscribers, the destination MAC address will be the host’s own MAC address and the IP destination will be the same as the multicast group that the subscriber is interested in. The multicast stream is then delivered to the subscriber via MAC learning as a unicast stream.

    When per-host-replication is enabled, all multicast streams will be using the subscriber queues. It is no longer necessary to use egress-rate-modify as mentioned before.

  • Redirection-policy — Another popular model for multicast deployment is to redirect all multicast streams to another interface instead of sending the content directly to the subscriber. All subscribers use a common VLAN to receive the multicast streams.

ESM IGMP IPoE Walkthrough

With the baseline configuration applied, the BNG is ready to process IGMP messages and deliver multicast. IPoE Subscriber Multicast Flow shows a flow for IPoE subscribers requesting and receiving multicast traffic. The key items are highlighted in dotted box:

  1. The ESM group-interface must have IGMP enabled

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

The subscriber sends an IGMPv3 report using (192.168.4.2, 239.255.1.1).

Figure 3. IPoE Subscriber Multicast Flow

To verify that the group interface is ready for multicast, use the following show command. Remember that the IES service id is 1 and the group-interface name is grp-int-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:4                          3/3                  0
       1/1/4:5                          3/3                  0
-------------------------------------------------------------------------------
Group-Interfaces = 1, SAPs = 2
===============================================================================
*A:BNG-1#

Ensure the subscriber is associated with an IGMP-policy. Since the IGMP-policy is associated with a subscriber-profile, verifying the IGMP-policy is done through the subscriber profile, as follows:

*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/21/2017 11:58:50
===============================================================================
* 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.

First, initiate an IGMP report from a subscriber requesting a multicast channel. In this example, IGMPv3 SSM is used. IPoE by default replicates per-SAP. If the IGMP message was successfully received and processed, an (S,G) binding will be associated with the subscriber SAP.

In this case, the IGMPv3 SSM message requests (192.168.4.2, 239.255.1.1). The subscriber host is assigned an IP address of 10.0.0.11. To verify the IGMP message was successfully processed, check that the (S,G) is learned on the IGMP instance. The following example shows a successful IGMP message processed by the BNG, the (S,G) is registered against the subscriber SAP and the host.

*A:BNG-1# show router igmp group
===============================================================================
IGMP Interface Groups
===============================================================================
No Matching Entries
===============================================================================
IGMP Host Groups
===============================================================================
(192.168.4.2,239.255.1.1)
    Fwd List  : 10.0.0.11                                 UpTime: 0d 00:05:27
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
IGMP SAP Groups
===============================================================================
(192.168.4.2,239.255.1.1)
    Fwd List  : 1/1/4:4                                   UpTime: 0d 00:05:27
-------------------------------------------------------------------------------
Entries : 1
===============================================================================
*A:BNG-1#

For more IGMP details on the group interface, including maximum multicast groups and bandwidth management, use the following command:

*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               : 1/1/4:4
 Admin/Oper version: 3/3                Num Groups         : 1
 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
-------------------------------------------------------------------------------
  Group-Address    : 239.255.1.1        Up Time            : 0d 00:05:54
  Expires          : N/A                Mode               : include
  V1 Host Timer    : Not running        Type               : dynamic
  V2 Host Timer    : Not running        Compat Mode        : IGMP Version 3
   ------------------------------------------------------------------
   GrpSrc-Address    Expires            Type                 Fwd/Blk
   ------------------------------------------------------------------
   192.168.4.2       0d 00:04:18        dynamic              Fwd
-------------------------------------------------------------------------------
 SAP               : 1/1/4: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#

If the subscriber fails to receive multicast traffic, check if the subscriber has an associated IGMP policy with the following command. If the subscriber entry is missing, make sure the subscriber has a sub-profile that is tied to an IGMP-policy.

*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
-------------------------------------------------------------------------------
subscr-1                         igmp-policy-1
  10.0.0.11                      grp-int-1                        1
    239.255.1.1                  Dynamic         0d 00:08:50      Include
      192.168.4.2                Dynamic                          Fwd
-------------------------------------------------------------------------------
Number of Subscribers : 1
===============================================================================
*A:BNG-1#

Another possibility for failing to receive multicast traffic could be due to the control mechanisms inside the IGMP-policy such as: bandwidth control, multicast groups restrictions, and interoperability options. Use the following command to view the IGMP policy configured control parameters.

*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                    :
Per Host Replication                  : no
Egress Rate Modify                    : no
Mcast Reporting Destination Name      :
Mcast Reporting Admin State           : Disabled
===============================================================================
*A:BNG-1#

The command to view the (S,G)s that all subscribers are requesting is as follows. Since the system has only one subscriber, this example only shows one host.

*A:BNG-1# show router igmp hosts detail
 
===============================================================================
IGMP Host 10.0.0.11
===============================================================================
Oper Status      : Up         MacAddress     : 00:10:94:00:00:13
Oper version     : 3          Subscriber     : subscr-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:01:29
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:10:30
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 : N/A
-----------------------------------------------------------
Source Address     Expires        Type         Fwd/Blk
-----------------------------------------------------------
192.168.4.2        0d 00:03:46    Dynamic      Fwd
-------------------------------------------------------------------------------
Hosts : 1
===============================================================================
* indicates that the corresponding row element may have been truncated.
*A:BNG-1#

To check for an individual subscriber and its requested (S,G)s, the following command can be used.

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

ESM IGMP PPPoE Walkthrough

IGMP message processing and delivery of multicast streams to PPPoE subscribers is considered next. PPPoE Multicast Flow shows the message flow for multicast stream delivery to PPPoE subscribers.

Figure 4. PPPoE Multicast Flow

As stated earlier, the important configuration aspects are highlighted in the dotted box. The main difference between IPoE subscribers and PPPoE subscribers is the encapsulation on the last stretch of the multicast data path. PPPoE subscribers receive multicast streams via Ethernet unicast while IPoE subscribers receive multicast streams via Ethernet multicast. PPPoE natively does not have a multicast mechanism and requires all data traffic to be unicasted. Even if the subscribers are on the same SAP, multicast streams are replicated per subscriber. To achieve this, the IP header indicates a multicast address while the Ethernet header destination MAC address is changed to the subscriber’s MAC address.

Verify the group interface. It is very similar to the output for the IPoE 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:
Bonding connection : N/A
-------------------------------------------------------------------------------
 SAP               : 1/1/4: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               : 1/1/4: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#

Next an IGMPv3 message is sent toward the BNG. The (S,G) is (192.168.4.2, 239.255.1.1). The PPPoE subscriber is assigned an IP address of 10.0.0.15.

The following output shows the key difference between a PPPoE subscriber and an IPoE subscriber. A PPPoE multicast stream is replicated per host and not per SAP. This output shows this clearly because the multicast group is associated with the host and not with the SAP.

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

The next command shows all of the subscribers and all the (S,G)s joined. In this case there is only one PPPoE subscriber.

*A:BNG-1# show router igmp hosts detail
  
===============================================================================
IGMP Host 10.0.0.15
===============================================================================
Oper Status      : Up         MacAddress     : 00:10:94:00:00:14
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:01:02
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:05:03
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 : N/A
-----------------------------------------------------------
Source Address     Expires        Type         Fwd/Blk
-----------------------------------------------------------
192.168.4.2        0d 00:03:22    Dynamic      Fwd
-------------------------------------------------------------------------------
Hosts : 1
===============================================================================
* indicates that the corresponding row element may have been truncated.
*A:BNG-1#

To view each individual subscriber and their respective (S,G)s, 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.15                      grp-int-1                        1
    239.255.1.1                  Dynamic         0d 00:07:31      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 master BNG will be the only one processing and answering IGMP messages. The standby BNG does not perform any IGMP processing and receives updates through MCS for all subscribers in real time. In the event of a failure, the standby will become active and starts processing all IGMP messages. The standby will also immediately trigger PIM joins for all of the subscribers’s (S,G)s. This is all possible because the standby is always synchronized with the master BNG prior to the failover. Restoration of all multicast channels should happen quickly after the failover and depends on both the PIM configuration and the underlying routing infrastructure.

The key parameters for MCS for ESM multicast are: syncing of subscribers (ipoe, pppoe), SRRP and IGMP. The redundancy configuration for BNG-1 is as follows. The configuration for BNG-2 is similar.

configure
    redundancy
        multi-chassis
            peer 192.0.2.3 create
                sync
                    igmp
                    srrp
                    sub-mgmt ipoe pppoe
                    port 1/1/4 create
                        range 4-4 sync-tag "sub"
                        range 5-5 sync-tag "srrp"
                    exit
                    no shutdown
                exit
                no shutdown
            exit
        exit
    exit
exit

The following command displays the number of entries being synced across the BNGs.

*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             : 29
Lcl Deleted Entries     : 0
Alarm Entries           : 0
OMCR Standby Entries    : 0
OMCR Alarm Entries      : 0
Rem Num Entries         : 29
Rem Lcl Deleted Entries : 0
Rem Alarm Entries       : 0
Rem OMCR Standby Entries: 0
Rem OMCR Alarm Entries  : 0
 
===============================================================================
MCS Application Stats
===============================================================================
Application             : igmp
Num Entries             : 2
Lcl Deleted Entries     : 0
Alarm Entries           : 0
OMCR Standby Entries    : 0
OMCR Alarm Entries      : 0
-------------------------------------------------------------------------------
Rem Num Entries         : 2
Rem Lcl Deleted Entries : 0
Rem Alarm Entries       : 0
Rem OMCR Standby Entries: 0
Rem OMCR Alarm Entries  : 0
-------------------------------------------------------------------------------
Application             : igmpSnooping
Num Entries             : 0
Lcl Deleted Entries     : 0
Alarm Entries           : 0
OMCR Standby Entries    : 0
OMCR Alarm Entries      : 0
-------------------------------------------------------------------------------
Rem Num Entries         : 0
Rem Lcl Deleted Entries : 0
Rem Alarm Entries       : 0
Rem OMCR Standby Entries: 0
Rem OMCR Alarm Entries  : 0
-------------------------------------------------------------------------------
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---
 
*A:BNG-1#

To check the details of the synchronized data across the BNGs, use the following command. It provides a detailed description of the IGMP information synced across MCS.

*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
-------------------------------------------------------------------------------
1/1/4:4            SapGroup=239.255.1.1, 0.0.0.0
 sub                              20    -- -- -- --- --- 06/22/2017 12:42:51
  0x0                                                 0
1/1/4:4            Host=10.0.0.16, HostGroup=239.255.1.1
 sub                              20    -- -- -- --- --- 06/22/2017 12:42:51
  0x0                                                 0
 
The following totals are for:
 peer ip ALL, port/lag/sdp ALL, sync-tag ALL, application IGMP
Valid Entries:                   2
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

There are many debug features for ESM multicast. Debug allows real-time monitoring of all events happening on the system and can assist operators with troubleshooting. First enable debug on the system, then send an IGMP message to join a multicast group (S,G). Again the IGMP message used in this case is IGMPv3 with SSM. The following is the debug information for ESM IGMP at packet level.

debug
    router 
        igmp
            packet mode egr-ingr-and-dropped
        exit
    exit
exit
1050 2017/06/22 15:58:25.90 CEST MINOR: DEBUG #2001 Base IGMP[1]
"IGMP[1]: RX-PKT
[001 02:05:49.110] IGMP host 10.0.0.17 V3 PDU: 10.0.0.17 -> 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
"

Below is the debug information for ESM IGMP at host level and the associated IGMP events.

debug
    router 
        igmp
            host "10.0.0.17"
        exit
    exit
exit
1055 2017/06/22 16:00:37.72 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.17 database"
 
1056 2017/06/22 16:00:37.72 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.17 for group 239.255.1.1
in mode INCLUDE. Num srcs 1"
 
1057 2017/06/22 16:00:37.72 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfSrcAdd
Adding i/f source entry for host 10.0.0.17 (192.168.4.2,239.255.1.1) to IGMP fwd
List Database, redir if sap 1/1/4:4"

Below is the debug information for ESM IGMP if MCS synchronization is enabled.

debug
    router 
        igmp
            mcs "grp-int-1"
        exit
    exit
exit
1109 2017/06/22 16:17:24.49 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpMcsAddIfGroup
Building MCS entry for host 10.0.0.17, group 239.255.1.1"
lear screen

The same debug commands can be used for viewing subscribers IGMP leave messages. The following is the debug information for ESM IGMP at packet level.

debug
    router 
        igmp
            packet mode egr-ingr-and-dropped
        exit
    exit
exit
1091 2017/06/22 16:11:49.53 CEST MINOR: DEBUG #2001 Base IGMP[1]
"IGMP[1]: RX-PKT
[001 02:19:12.740] IGMP host 10.0.0.18 V3 PDU: 10.0.0.18 -> 224.0.0.22 pduLen 20
    Type: V3 REPORT maxrespCode 0x0 checkSum 0x2251
    Num Group Records: 1
        Group Record 0
        Type: BLK_OLD_SRCS, AuxDataLen 0, Num Sources 1
        Mcast Addr: 239.255.1.2
        Source Address List
            192.168.4.2
"

The following is the debug information for ESM IGMP at host level and the associated IGMP events.

debug
    router 
        igmp
            host "10.0.0.17"
        exit
    exit
exit
1113 2017/06/22 16:21:04.08 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.17 for group 239.255.1.1
in mode INCLUDE. Num srcs 1"
 
1114 2017/06/22 16:21:04.08 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpProcessIfSrcTimerExp
Source Timer expired for IGMP host 10.0.0.17 (192.168.4.2,239.255.1.1)"
 
1115 2017/06/22 16:21:04.08 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpIfSrcDel
Deleting i/f source entry for host 10.0.0.17 (192.168.4.2,239.255.1.1) from IGMP
 Database. DeleteFromAvl: 1 Redir 0"
 
1116 2017/06/22 16:21:04.08 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.17 database"

The following debug information is seen when MCS removes the entry on the standby BNG.

debug
    router 
        igmp
            mcs "grp-int-1"
        exit
    exit
exit
1117 2017/06/22 16:21:04.08 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpMcsDelIfGroup
Building MCS entry for host 10.0.0.17, group 239.255.1.1"
 
1118 2017/06/22 16:21:04.08 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpMcsDelIfGroup
Deleting MCS entry for host 10.0.0.17, group 239.255.1.1, Glb"

IGMP Control Plane Filters

IGMP control plane filtering can be applied at the router level and/or subscriber level (IGMP-policy). The filter list contains multicast groups (S,G) and is provisioned at the router level in the policy-options context. The filter can be applied either as a black-list or a white-list.

Provision a prefix list for the multicast group (G). The following configuration is an example showing the various options possible for the prefix list. The only one used in this configuration is the prefix 239.255.1.1/32.

configure
    router
        policy-options
            begin
            prefix-list "igmp-prefix-list-1"
                prefix 239.255.1.1/32 exact
                prefix 239.255.2.0/24 longer
                prefix 239.255.3.0/24 prefix-length-range 24-25
                prefix 239.255.4.0/24 through 25
            exit
            commit
        exit
    exit
exit

A white-list router policy is configured as follows, allowing only the prefix list specified and rejecting everything else. Source-address configuration is also possible for IGMP v3 (S,G). The white-list is used for the demonstration later in this chapter.

configure
    router
        policy-options
            begin
            policy-statement "igmp-white-list-1"
                entry 10
                    from
                        group-address "igmp-prefix-list-1"
                        source-address 192.168.4.2
                    exit
                    action accept
                    exit
                exit
                default-action reject
            exit
            commit
        exit
    exit
exit

An example black-list router policy is configured as follows, denying the prefix list and accepting everything else. Again, source-address configuration is possible for IGMP v3 (S,G). The use of this black-list is not demonstrated.

configure
    router
        policy-options
            begin
            policy-statement "igmp-black-list-1"
                entry 10
                    from
                        group-address "igmp-prefix-list-1"
                        source-address 192.168.4.2
                    exit
                    action reject
                exit
                default-action accept
                exit
            exit
            commit
        exit
    exit
exit

Hierarchical filter

The filter can be applied in two places. First, at router/group-interface level, this will apply to all subscribers connected to the group interface.

configure
    router
        igmp
            group-interface "grp-int-1"
                import "igmp-white-list-1"
                no shutdown
            exit
            no shutdown
        exit
    exit
exit

The group-interface filter takes precedence over the subscriber level filter. After the group-interface applies its filter against the incoming IGMP messages, the individual subscriber defined IGMP filters will be applied to the remaining IGMP messages.

configure
    subscriber-mgmt
        igmp-policy "igmp-policy-1" create
            import "igmp-white-list-1"
        exit
    exit
exit

Use the debug command to verify that the policy is working correctly for the host. Group 239.255.1.2 is not in the white-list and so is dropped.

debug
    router "Base"
        igmp
            group-interface "grp-int-1"
            host "10.0.0.16"
            packet mode egr-ingr-and-dropped
        exit
    exit
exit
390 2017/06/22 13:15:27.83 CEST MINOR: DEBUG #2001 Base IGMP[1]
"IGMP[1]: RX-PKT
[000 23:22:51.040] IGMP host 10.0.0.16 V3 PDU: 10.0.0.16 -> 224.0.0.22 pduLen 20
    Type: V3 REPORT maxrespCode 0x0 checkSum 0x2751
    Num Group Records: 1
        Group Record 0
        Type: MODE_IS_INCL, AuxDataLen 0, Num Sources 1
        Mcast Addr: 239.255.1.2
        Source Address List
            192.168.4.2
"
  
391 2017/06/22 13:15:27.83 CEST MINOR: DEBUG #2001 Base IGMP[Base inst 1]
"IGMP[Base inst 1]: igmpParseV3Report
IGMP V3 policy DROP on host 10.0.0.16, from host 10.0.0.16, grpAddr 239.255.1.2,
 srcAddr 192.168.4.2"
"

IGMP Data Plane Filters

IGMP data plane filter utilize the ip-filter defined in the sla-profile. Again the filter can be used as a black-list or a white-list.

Configure an ip-filter. The following is an example of a black-list filter.

configure
    filter
        ip-filter 1 create
            default-action forward
            entry 1 create
                match
                    dst-ip 239.255.1.1/32
                exit
                action
                    drop
                exit
            exit
        exit
    exit
exit

Apply the configured ip filter into an sla-profile. Because multicast content is sent toward the subscriber, it is applied to the sla-profile egress.

configure
    subscriber-mgmt
        sla-profile "sla-profile-1" create
            egress
                ip-filter 1
            exit
        exit
    exit
exit

To view the statistics of the filter applied to the subscribers, use the following command.

*A:BNG-1# show filter ip 1 counters
 
===============================================================================
IP Filter
===============================================================================
Filter Id           : 1                            Applied        : Yes
Scope               : Template                     Def. Action    : Forward
System filter       : Unchained
Radius Ins Pt       : n/a
CrCtl. Ins Pt       : n/a
RadSh. Ins Pt       : n/a
PccRl. Ins Pt       : n/a
Entries             : 1
Description         : (Not Specified)
-------------------------------------------------------------------------------
Filter Match Criteria : IP
-------------------------------------------------------------------------------
Entry               : 1
Ing. Matches        : 0 pkts
Egr. Matches        : 18103 pkts (1918918 bytes)
  
===============================================================================
*A:BNG-1#

Conclusion

Multicast is an essential part of Triple Play Services. The TPSDA solution offers much more than a baseline multicast delivery, it includes individual subscriber awareness and a full state redundancy option. Subscriber awareness allows for the fine tuning of each subscriber’s multicast experience and also for troubleshooting on a per subscriber basis. Full state redundancy reduces failover time and ensures high availability of the services offered. This example provides a complete configuration walkthrough of both the IPoE and PPPoE SRRP models.

For operators wanting to further control and restrict individual subscriber’s multicast content, ESM has a comprehensive set of both control path filtering and data path filtering.