Catalyst 6500 Series Software Configuration Guide, 7.6
Configuring Multicast Services

Table Of Contents

Configuring Multicast Services

Understanding How Multicasting Works

Multicasting and Multicast Services Overview

Understanding How IGMP Snooping Works

Joining a Multicast Group

Constraining Multicast Traffic

Leaving a Multicast Group

IGMP Fast-Leave Processing

IGMP Fast-Block Processing

Understanding How GMRP Works

Understanding How RGMP Works

Suppressing Multicast Traffic

Nonreverse Path Forwarding Multicast Fast Drop

Enabling Installation of Directly Connected Subnets

Understanding How the IGMP Querier Works

Configuring IGMP Snooping on the Switch

Default IGMP Snooping Configuration

IGMP Snooping Configuration Guidelines

Enabling IGMP Snooping

Specifying IGMP Snooping Mode

Enabling IGMP Fast-Leave Processing

Enabling IGMP Version 3 Snooping

Enabling IGMP Version 3 Fast-Block Processing

Enabling the IGMP Querier

Enabling IGMP Rate Limiting

Displaying Multicast Router Information

Displaying Multicast Group Information

Displaying IGMP Snooping Statistics

Disabling IGMP Fast-Leave Processing

Disabling IGMP Snooping

Configuring GMRP on the Switch

GMRP Software Requirements

Default GMRP Configuration

Enabling GMRP Globally

Enabling GMRP on Individual Switch Ports

Disabling GMRP on Individual Switch Ports

Enabling the GMRP Forward-All Option

Disabling the GMRP Forward-All Option

Configuring GMRP Registration

Setting Normal Registration

Setting Fixed Registration

Setting Forbidden Registration

Setting the GARP Timers

Displaying GMRP Statistics

Clearing GMRP Statistics

Disabling GMRP Globally on the Switch

Configuring Multicast Router Ports and Group Entries on the Switch

Specifying Multicast Router Ports

Configuring Multicast Groups

Clearing Multicast Router Ports

Clearing Multicast Group Entries

Understanding How RGMP Works

Configuring RGMP on the Switch

Configuring RGMP on the Supervisor Engine

Default RGMP Configuration

Enabling and Disabling RGMP

Displaying RGMP Group Information

Displaying RGMP VLAN Statistics

Displaying RGMP-Capable Router Ports

Clearing RGMP Statistics

RGMP-Related CLI Commands

Configuring RGMP on the MSFC

Displaying Multicast Protocol Status


Configuring Multicast Services


This chapter describes how to configure Internet Group Management Protocol (IGMP) snooping, GARP Multicast Registration Protocol (GMRP), and Router-Port Group Management Protocol (RGMP) on the Catalyst 6500 series switches.


Note For complete syntax and usage information for the commands used in this chapter, refer to the Catalyst 6500 Series Switch Command Reference publication.


This chapter consists of these sections:

Understanding How Multicasting Works

Configuring IGMP Snooping on the Switch

Configuring GMRP on the Switch

Configuring Multicast Router Ports and Group Entries on the Switch

Understanding How RGMP Works

Configuring RGMP on the Switch

Displaying Multicast Protocol Status

Understanding How Multicasting Works

These sections describe how multicasting works on the Catalyst 6500 series switches:

Multicasting and Multicast Services Overview

Understanding How IGMP Snooping Works

Understanding How GMRP Works

Understanding How RGMP Works

Suppressing Multicast Traffic

Nonreverse Path Forwarding Multicast Fast Drop

Enabling Installation of Directly Connected Subnets

Understanding How the IGMP Querier Works

Multicasting and Multicast Services Overview

IGMP snooping manages multicast traffic in switches by allowing directed switching of IP multicast traffic. GMRP is protocol independent and can manage both IP multicast traffic and any Layer 2 multicast traffic.

Switches can use IGMP snooping or GMRP to configure switch ports dynamically so that IP multicast traffic is forwarded only to those ports that are associated with IP multicast hosts. IGMP software components run on both the Cisco router and the switch.


Note For more information on IP multicast and IGMP, refer to RFC 1112. GMRP is described in IEEE 802.1p.


You can statically configure multicast groups using the set cam static command. Multicast groups that are learned through IGMP snooping are dynamic. If you specify group membership for a multicast group address, your static setting supersedes any automatic manipulation by IGMP snooping or GMRP. Multicast group membership lists can consist of both user-defined settings and settings that are learned through IGMP snooping or GMRP.

Understanding How IGMP Snooping Works


Note You cannot enable IGMP snooping on a switch if GMRP is already enabled on the switch.



Note You can run IGMP snooping on any Catalyst 6500 series supervisor engine model (Supervisor Engine 1, Supervisor Engine 1A, and Supervisor Engine 2). A PFC is not required to enable IGMP snooping. Cisco Group Management Protocol (CGMP) is not supported on the Catalyst 6500 series switches, although CGMP server is supported on the MSFC. To support CGMP client devices, configure the MSFC as a CGMP server.


IGMP snooping manages multicast traffic at Layer 2 on the Catalyst 6500 series switches by allowing directed switching of IP multicast traffic.

Switches can use IGMP snooping to configure Layer 2 interfaces dynamically so that IP multicast traffic is forwarded only to those interfaces that have expressed interest in particular IP multicast traffic streams through IGMP join and report messages.

Catalyst 6500 series switches can distinguish IGMP control traffic from multicast data traffic. When you enable IGMP on the switch, IGMP control traffic is redirected to the CPU for further processing. This process is performed in hardware by specialized ASICs. The ASICs allow the switch to snoop IGMP control traffic with no performance penalty.

The router periodically sends out general queries to all VLANs, and as multicast receivers respond to the router's queries, the switch intercepts them. Only the first IGMP join (report) per VLAN and per IP multicast group is forwarded to the router. Subsequent reports for the same VLAN and group are suppressed. The switch processor creates one entry per VLAN in the Layer 2 forwarding table for each MAC group from which it receives an IGMP join request. All hosts that are interested in this multicast traffic send join requests and are added to the port list of this forwarding table entry. If a port is disabled, it is removed from all multicast group entries.


Note IGMP version 3 is supported only on systems with a Supervisor Engine 2.


IGMP version 3 uses source-based filtering and is the industry-designated standard protocol for hosts to signal channel subscriptions in Source Specific Multicast (SSM). Source-based filtering enables hosts and routers to specify which source addresses should be allowed or blocked for a specific multicast group. When you enable IGMP version 3 snooping on a Catalyst 6500 series switch, the switch maintains IGMP version 3 states based on IGMP version 3 reports that it receives from a port on a per-group, per-VLAN basis and either allows or blocks source traffic on that port based on the type of IGMP version 3 message it receives.


Note Before you can enable IGMP version 3 on a Catalyst 6500 series switch, you must first disable IP MMLS by entering the no mls ip multicast command from the MSFC router prompt.



Note IGMP version 3 snooping is supported for INCLUDE mode only. IGMP version 3 snooping is not supported for EXCLUDE mode. For example, when the IGMP version 3 state goes to EXCLUDE mode for a particular group in a particular VLAN, the switch maintains the version 3 state in the same way as a version 3 router, and multicast traffic is sent to the ports that sent version 3 reports based on the version 3 state.



Note For IGMP version 3 snooping, use Cisco IOS Release 12.1(11b)E1 or later releases on the MSFC2.


Joining a Multicast Group

In IGMP version 2, when a host wants to join an IP multicast group, it either responds to a router query or sends an IGMP join (also known as a join message) specifying the IP multicast group it wants to join (for example, group 224.1.2.3). The switch hardware recognizes that the packet is an IGMP report and redirects it to the switch CPU. The switch installs a new group entry for 01-00-5e-01-02-03 and adds the host port and the router port to that entry. The switch then relays the join from the host to all multicast router ports. The designated multicast router for the segment adds the outgoing interface (OIF) to the outgoing interface list (OIL) for the group and begins forwarding multicast traffic for 224.1.2.3 to this segment.

When a second host in this VLAN wants to join group 244.1.2.3, it sends out an IGMP join for this group. The switch hardware recognizes that this is an IGMP control packet and redirects it to the switch CPU. Because the switch already has a group entry for 01-00-5e-01-02-03 in this VLAN, it only adds the second host port to the entry. Because this is not the first host joining the group, the switch suppresses the report (the switch does not send it to the router).

IGMP version 3 reports are sent by hosts to the 224.0.0.22 address. The multicast router keeps a state record for each group on an interface, and the switch maintains a state record for each group on a per-VLAN basis. The state records contain the multicast IP address, the group timer, the source timer, and the filter mode as specified by the hosts. Hosts can specify one of the following filter modes:

INCLUDE mode—In this mode, the host announces membership to a multicast group and provides a list of source IP addresses (the INCLUDE list) from which it wants to receive traffic.

EXCLUDE mode—In this mode, the host announces membership to a multicast group and provides a list of source IP addresses (the EXCLUDE list) from which it does not want to receive traffic. This mode indicates that the host wants to receive traffic only from sources whose IP addresses are not listed in the EXCLUDE list. To receive traffic from all sources, a host expresses EXCLUDE mode membership with an empty EXCLUDE list.


Note The IGMP compatibility mode changes to version 1 or version 2 as soon as version 1 or version 2 messages are received for a group on a VLAN (where the version 3 state previously existed for that particular group on that VLAN).


Constraining Multicast Traffic

When a host sends multicast traffic to a group, the switch hardware does not recognize the stream as IGMP control packets; therefore, the packets are not redirected to the switch CPU. Instead, the multicast traffic is forwarded to the Media Access Control (MAC) group entry and the switch constrains the traffic to only those ports that have been added to that group entry.

The router sends IGMP general queries. The switch floods these queries on all ports in the VLAN, and hosts that are interested in a multicast group respond with an IGMP join for each group in which they are interested.

The switch intercepts these IGMP joins, and only the first join per VLAN and per IP multicast group is forwarded on the multicast router ports. Subsequent reports for the same VLAN and group are suppressed (not sent to the router). If you enable the switch for IGMP version 3 snooping, all joins are forwarded to the router ports.


Note If you have CGMP switches in your network, join and leave suppression does not occur. In a network that has both IGMP version 2 and CGMP switches, all join and leave messages are forwarded to the multicast routers so that CGMP join and leave messages can be generated by the router.


Leaving a Multicast Group

In a network running IGMP version 1 or 2, the designated multicast router for a segment continues forwarding the multicast traffic to that VLAN as long as at least one host in the VLAN wishes to receive multicast traffic. When hosts want to leave a multicast group, they can either ignore the periodic general queries that are sent by the multicast router (IGMP version 1 host behavior), or they can send an IGMP leave (IGMP version 2 host behavior). When the switch receives a leave message, it sends out a MAC-based general query on the port on which it received the leave message to determine if any of the devices that are connected to this port are interested in traffic for the specific multicast group. If this port is the last port in the VLAN, the switch sends a MAC-based general query to all ports in the VLAN. MAC-based general queries are addressed to the Layer 2 Group Destination Address (GDA) MAC address for which the IGMP leave message was received. At Layer 3, the MAC-based general queries are addressed to 244.0.0.1 (all hosts), and in the IGMP header, the group address field is set to 0.0.0.0.

If no IGMP join is received for any of the IP multicast groups that map to the MAC multicast group address, the port is removed from the multicast forwarding entry. If the port is not the last nonmulticast-router port in the entry, the switch suppresses the IGMP leave (does not send it to the router). If the port is the last nonmulticast-router port in the entry, the IGMP leave is forwarded to the multicast router ports and the MAC group forwarding entry is removed.

When the router receives the IGMP leave, it sends several IGMP group-specific queries. If no join messages are received in response to the queries, and there are no downstream routers that are connected through that interface, the router removes the interface from the OIL for that IP multicast group entry in the multicast routing table. After the last receiver leaves a multicast group, the switch floods traffic for this multicast group for few seconds. To prevent flooding of multicast traffic after the last host leaves a multicast group, enter the set igmp flooding disable command.

IGMP Fast-Leave Processing

IGMP snooping fast-leave processing allows the switch processor to remove an interface from the port list of a forwarding-table entry without first sending out a MAC-based general query on the port. When an IGMP leave is received on a port, the port is immediately removed from the multicast forwarding entry (or the entire entry is removed).

IGMP Fast-Block Processing

IGMP version 3 supports fast-block processing. If you enable fast-block processing on the switch, the switch immediately stops forwarding multicast packets to a port when it receives a block or exclude message from a host connected to that port.


Note Do not use the fast-leave processing feature if more than one host is connected to each port. If you enable fast-leave when more than one host is connected to a port, some hosts might be dropped inadvertently. Fast leave is supported with IGMP version 2 hosts only.


Understanding How GMRP Works

GMRP is a Generic Attribute Registration Protocol (GARP) application that provides a constrained multicast flooding facility similar to IGMP snooping. GMRP and GARP are industry-standard protocols that are defined by the IEEE. For detailed protocol operational information, refer to 802.1p.

GMRP software components run on both the switch and on the host. (Cisco is not a source for GMRP host software.) On the host, in an IP multicast environment, you must use IGMP with GMRP; the host GMRP software spawns Layer 2 GMRP versions of the host's Layer 3 IGMP control packets. The switch receives both the Layer 2 GMRP and the Layer 3 IGMP traffic from the host. The switch forwards the Layer 3 IGMP control packets to the router and uses the received GMRP traffic to constrain multicasts at Layer 2 in the host's VLAN.

When a host wants to join an IP multicast group, it sends an IGMP join, which spawns a GMRP join. When the switch receives the GMRP join, it adds the port through which the join was received to the appropriate multicast group. The switch propagates the GMRP join to all other hosts in the VLAN, one of which is typically the multicast source. When the source is multicasting to the group, the switch forwards the multicast only to the ports from which it received join messages for the group.

The switch sends periodic GMRP queries. If a host wants to remain in a multicast group, it responds to the query and the switch does nothing. If a host does not want to remain in the multicast group, it can either send a leave message or not respond to the periodic queries from the switch. If the switch receives a leave message or receives no response from the host for the duration of the leaveall timer, the switch removes the host from the multicast group.


Note To use GMRP in a routed environment, enable the GMRP forwardall option on all ports where routers are attached. (See the "Enabling the GMRP Forward-All Option" section.)


Understanding How RGMP Works

Without RGMP, all multicast routers receive all multicast data traffic entering the switch. With RGMP, a multicast router can request not to receive multicast traffic if that router has no downstream receivers for the multicast traffic. Catalyst 6500 series switches support RGMP, which enables a switch to reduce network congestion by forwarding multicast data traffic only to those routers that are configured to receive it.


Note To use RGMP, you must enable IGMP snooping on the switch and Protocol Independent Multicast (PIM) on the routers. Only PIM sparse mode is currently supported.


All routers on the network must be RGMP capable. RGMP-capable routers periodically send an RGMP hello message to the switch. The RGMP hello message tells the switch not to send multicast data to the router unless an RGMP join has also been sent to the switch from that router. When an RGMP join is sent, the router is able to receive multicast data. To learn how to set a router to receive RGMP data, see the "RGMP-Related CLI Commands" section.

To stop receiving multicast data, a router must send an RGMP leave message to the switch. To disable RGMP on a router, the router must send an RGMP bye message to the switch.

Table 42-1 provides a summary of the RGMP message types.

Table 42-1 RGMP Message Types 

Description
Action

Hello

When the RGMP feature is enabled on the router, no multicast data traffic is sent to the router by the switch unless an RGMP join is specifically sent for a group.

Bye

When the RGMP feature is disabled on the router, all multicast data traffic is sent to the router by the switch.

Join

Multicast data traffic for a multicast MAC address from the Layer 3 group address G is sent to the router. These packets have group G in the Group Address field of the RGMP packet.

Leave

Multicast data traffic for the group G is not sent to the router. These packets have group G in the group address field of the RGMP packet.


Suppressing Multicast Traffic

On Gigabit Ethernet ports, you can limit the amount of bandwidth to be used for multicast traffic. Use the set port broadcast command to specify a percentage of the total bandwidth to be used for multicast traffic on Gigabit Ethernet ports.

Nonreverse Path Forwarding Multicast Fast Drop

In a redundant configuration where multiple routers connect to the same LAN segment, only one router forwards the multicast traffic from the source to the receivers on the outgoing interfaces. In this kind of topology, only the Protocol Independent Multicast designated forwarder (PIM-DF) forwards the data in the common VLAN, but the non-PIM-DF receives the forwarded multicast traffic. The redundant router (non-PIM-DF) must drop this traffic because it has arrived on the wrong interface and will fail the reverse path forwarding (RPF) check. Traffic that fails the RPF check is called non-RPF traffic.

Non-RPF multicast fast drop (MFD) rate limits the packets that fail the RPF check (non-RPF packets) and drops the majority of the non-RPF packets in the hardware. According to the multicast protocol specification, the router needs to see the non-RPF packets for the PIM assert mechanism to work, so that all the non-RPF packets cannot be dropped in the hardware. To support the PIM assert mechanism, the PFC leaks a percentage of the non-RFP flow packets to the MSFC.

Non-RPF MFD is enabled on the switch by default. Non-RPF MFD is supported with Supervisor Engine 2 only.

Enabling Installation of Directly Connected Subnets

In PIM sparse mode, a first-hop router that is the designated router (DR) for the interface may need to encapsulate the source traffic in a PIM register message and unicast it to the rendezvous point (RP). To prevent new sources for the group from being learned in the routing table, the (*,G) flows should remain completely hardware-switched flows. (subnet/mask, 224/4) entries that are installed in the hardware FIB allow both (*,G) flows to remain completely hardware-switched flows, and new, directly connected sources to be learned correctly. Installation of directly connected subnets is enabled globally by default. One (subnet/mask, 224/4) is installed per PIM-enabled interface.

Use the show mls ip multicast connected command to view such FIB entries.

To enable the installation of directly connected subnets, perform this task:

Task
Command

Enable the installation of directly connected subnets.

Router(config) # mls ip multicast connected


This example shows how to enable the installation of directly connected subnets:

Router(config)# mls ip multicast connected
Router(config)#

Understanding How the IGMP Querier Works

The IGMP querier feature enables IGMP snooping within a VLAN where PIM and IGMP are not configured because the multicast traffic does not need to be routed.


Note You must enable IGMP querier for IGMP snooping to work correctly in a VLAN in which no multicast routers are present.


When you configure IGMP querier for a VLAN, the switch sends out IGMP general query messages every 125 seconds and listens for general query messages from other switches. If the switch receives a general query, a querier election starts. A querier election across switches is based either on an IP address or a MAC address. For an inbound query, if the source IP address is nonzero, the election is based on the IP address, and the switch with the lower source IP address becomes the querier. If the source IP address is zero for an inbound query, then the election is based on the source MAC address, and the switch with the lower MAC address wins the election and becomes the querier. The switch that becomes the nonquerier maintains an "other querier interval" timer. When this timer expires, the switch elects itself as the querier.

For information on enabling IGMP querier, see the "Enabling the IGMP Querier" section.

Configuring IGMP Snooping on the Switch

IGMP snooping allows switches to examine IGMP packets and make forwarding decisions based on their content.


Note Quality of service (QoS) does not support IGMP traffic when IGMP snooping is enabled.


These sections describe how to configure IGMP snooping:

Default IGMP Snooping Configuration

IGMP Snooping Configuration Guidelines

Enabling IGMP Snooping

Specifying IGMP Snooping Mode

Enabling IGMP Fast-Leave Processing

Enabling IGMP Version 3 Snooping

Enabling IGMP Version 3 Fast-Block Processing

Enabling the IGMP Querier

Enabling IGMP Rate Limiting

Displaying Multicast Router Information

Displaying Multicast Group Information

Displaying IGMP Snooping Statistics

Disabling IGMP Fast-Leave Processing

Disabling IGMP Snooping

Default IGMP Snooping Configuration

Table 42-2 shows the default IGMP snooping configuration.


Note IGMP snooping is enabled by default in supervisor engine software release 5.5(9) and later releases and 6.3(1) and later releases.


Table 42-2 IGMP Snooping Default Configuration

Feature
Default Value

IGMP snooping

Enabled

Multicast routers

None configured


IGMP Snooping Configuration Guidelines

IGMP snooping configuration guidelines are as follows:

There is no proxy reporting support with IGMP version 3 snooping. With IGMP version 2 snooping, only the first join and the last leave are forwarded to the router. For the group specific (GS) queries initiated by the router, the switch responds with a report if at least one port is present for the group. With IGMP version 3 snooping, all reports are forwarded to the router and the GS and group and source-specific (GSS) queries are flooded onto the VLAN to refresh the memberships.

At least one version 3 router should be present on the VLAN for IGMP version 3 snooping to work.

Unlike IGMP version 2 snooping, for IGMP version 3 snooping no permanent entries can be added that would be retained across reboots.

IGMP version 2 snooping reports are captured and are sent to the supervisor engine. IGMP version 3 snooping reports are sent to the 224.0.0.22 address. Because snooping is not supported in this range, the reports are captured for the supervisor engine in addition to being flooded.

With this release of IGMP version 3 snooping, RGMP, SPAN, and RSPAN interaction is not enabled.

IGMP querier interoperates only with IGMP version 2 snooping. Prior to enabling IGMP version 3 snooping, IGMP querier has to be disabled.

Enabling IGMP Snooping


Note You cannot enable IGMP snooping if GMRP is enabled.


To enable IGMP snooping, perform this task in privileged mode:

 
Task
Command

Step 1 

Enable IGMP snooping on the switch.

set igmp enable

Step 2 

Verify that IGMP snooping is enabled.

show igmp statistics [vlan]

This example shows how to enable IGMP snooping and verify the configuration:

Console> (enable) set igmp enable
IGMP Snooping is enabled.
Console> (enable) show igmp statistics
IGMP enabled

IGMP statistics for vlan 1:
     Transmit:
                     General Queries: 0
              Group Specific Queries: 0
                             Reports: 0
                              Leaves: 0

     Receive:
                     General Queries: 1056
              Group Specific Queries: 0
   Group and Source Specific Queries: 2
                             Reports: 60379
                              Leaves: 0
                    Total Valid pkts: 63552
                  Total Invalid pkts: 0
                          Other pkts: 2115
           MAC-Based General Queries: 0
         Failures to add GDA to EARL: 0
              Topology Notifications: 0
                IGMP packets dropped: 0
         IGMP Leave msgs in the list: 0
              IGMP V3 IS_IN messages: 13
              IGMP V3 IS_EX messages: 5
              IGMP V3 TO_IN messages: 0
              IGMP V3 TO_EX messages: 1
              IGMP V3 ALLOW messages: 0
              IGMP V3 BLOCK messages: 1
Console> (enable)

Specifying IGMP Snooping Mode

IGMP snooping runs in either IGMP-only mode or IGMP-CGMP mode. The switch dynamically chooses either IGMP-only or IGMP-CGMP mode, depending on the traffic present on the network. IGMP-only mode is used in networks with no CGMP devices. IGMP-CGMP mode is used in networks with both IGMP and CGMP devices. Auto mode overrides the dynamic switching of the modes.

To specify the IGMP snooping mode, perform this task in privileged mode:

 
Task
Command

Step 1 

Specify the IGMP snooping mode.

set igmp mode {igmp-only | igmp-cgmp | auto}

Step 2 

Display the IGMP snooping mode.

show igmp mode

This example shows how to set the IGMP mode to IGMP-only and verify the configuration:

Console> (enable) set igmp mode igmp-only 
IGMP mode set to igmp-only 
Console> (enable) show igmp mode
IGMP Mode:                  igmp-only
IGMP Operational Mode:      igmp-only
IGMP Address Aliasing Mode: normal
Console> (enable)

Enabling IGMP Fast-Leave Processing

To enable IGMP fast-leave processing, perform this task in privileged mode:

 
Task
Command

Step 1 

Enable IGMP fast-leave processing on the switch.

set igmp fastleave enable

Step 2 

Verify that IGMP fast-leave processing is enabled.

show igmp statistics

This example shows how to enable IGMP fast-leave processing and verify the configuration:

Console> (enable) set igmp fastleave enable
IGMP fastleave set to enable.
Console> (enable) show igmp statistics
IGMP enabled

IGMP statistics for vlan 1:
     Transmit:
                     General Queries: 0
              Group Specific Queries: 0
                             Reports: 0
                              Leaves: 0

     Receive:
                     General Queries: 1056
              Group Specific Queries: 0
   Group and Source Specific Queries: 2
                             Reports: 60379
                              Leaves: 0
                    Total Valid pkts: 63552
                  Total Invalid pkts: 0
                          Other pkts: 2115
           MAC-Based General Queries: 0
         Failures to add GDA to EARL: 0
              Topology Notifications: 0
                IGMP packets dropped: 0
         IGMP Leave msgs in the list: 0
              IGMP V3 IS_IN messages: 13
              IGMP V3 IS_EX messages: 5
              IGMP V3 TO_IN messages: 0
              IGMP V3 TO_EX messages: 1
              IGMP V3 ALLOW messages: 0
              IGMP V3 BLOCK messages: 1
Console> (enable) 

Enabling IGMP Version 3 Snooping

To enable IGMP version 3 snooping, perform this task in privileged mode:

 
Task
Command

Step 1 

If an MSFC is installed, disable MMLS from the MSFC router prompt.

no mls ip multicast

Step 2 

Enable IGMP version 3 snooping on the switch.

set igmp v3-processing enable

Step 3 

Display IGMP version 3 snooping information.

show multicast v3-group
show multicast router

This example shows how to enable IGMP snooping and verify the configuration:

Router(config)# no mls ip multicast
Multilayer Switching for Multicast is disabled for this device.
Router(config)# exit
Router# exit
Console> (enable) set igmp v3-processing enable
IGMP V3 processing enabled
Console> (enable) show multicast v3-group            
Displaying V3 group information for all vlans
---------------------------------------------
(G,C): (227.1.1.1,2),  V3 state: INC
V1/V2 Compatibility mode: none (V3) 
Include list: 2.2.2.6, Src timer 125 sec, Ports: 6/29 15/1
              2.2.2.5, Src timer 125 sec, Ports: 6/29 15/1
Exclude list: NULL

(G,C): (227.1.1.1,60),  V3 state: INC
V1/V2 Compatibility mode: none (V3) 
Include list: 2.2.2.7, Src timer 115 sec, Ports: 13/30 15/1
              2.2.2.5, Src timer 115 sec, Ports: 13/30 15/1
              2.2.2.8, Src timer 115 sec, Ports: 13/30 15/1
Exclude list: NULL

Console> (enable) show multicast v3-group 2 227.1.1.1
 ----IGMP V3 information----
(G,C): (227.1.1.1,2),  V3 state: INC
V1/V2 Compatibility mode: none (V3) 
Include list: 2.2.2.6, Src timer 125 sec, Ports: 6/29 15/1
              2.2.2.5, Src timer 125 sec, Ports: 6/29 15/1
Exclude list: NULL

Console> (enable) show multicast v3-group 
Displaying V3 group information for all vlans
---------------------------------------------
(G,C): (227.1.1.1,2),  V3 state: EX 
V1/V2 Compatibility mode: none (V3) Group timer: 125 sec
Include list: NULL
Exclude list: 2.2.2.6, Excluded Ports: 6/29
              2.2.2.5, Excluded Ports: 6/29

Console> (enable) show multicast router 
Port           Vlan
-------------- ----------------
15/1           $  2,60

Total Number of Entries = 1
'*' - Configured
'+' - RGMP-capable
'#' - Channeled Port
'$' - IGMP-V3 Router
Console> (enable)

Enabling IGMP Version 3 Fast-Block Processing

To enable IGMP version 3 fast-block processing, perform this task in privileged mode:

 
Task
Command

Step 1 

Enable IGMP fast-block processing on the switch.

set igmp fastblock enable

Step 2 

Verify that IGMP fast-block processing is enabled.

show multicast protocols status

This example shows how to enable IGMP fast-block processing and verify the configuration:

Console> (enable) set igmp fastblock enable
IGMP V3 fastblock enabled

Console> (enable) show multicast protocols status
IGMP enabled
IGMP fastleave disabled
IGMP V3 processing enabled
IGMP V3 fastblock feature enabled
RGMP disabled
GMRP disabled
Console> (enable)

Enabling the IGMP Querier

Use the IGMP querier to support IGMP snooping within a VLAN where PIM and IGMP are not configured because the multicast traffic does not need to be routed.


Note You can enable the IGMP querier on all the switches in the VLAN. One switch is elected as querier.


To enable the IGMP querier in a VLAN, perform these tasks in privileged mode:

Task
Command

Enable IGMP querier on a VLAN or on all VLANs.

set igmp querier disable | enable vlan

Specify the time interval between the general queries sent by the switch. The default is
125 seconds.

set igmp querier vlan qi val

Specify the amount of time that the switch should wait before electing itself as the querier in the absence of general queries. The default is
300 seconds.

set igmp querier vlan oqi val

Display IGMP querier information.

show igmp querier information


This example shows how to enable IGMP querier and display querier information:

Console> (enable) set igmp querier enable 4001
Console> (enable) set igmp querier 4001 qi 130 
Console> (enable) show igmp querier information 
--------------------------------------------------------------------------------
| vlanNo | Querier State | Query Tx Count | QI (seconds)| OQI (seconds) |
--------------------------------------------------------------------------------
| 4001   | QUERIER       |     0 	| 130 	| 300 	|
--------------------------------------------------------------------------------

Enabling IGMP Rate Limiting

IGMP rate limiting is disabled by default and the default rate limit is 100 packets per 30 seconds for all packet types. Valid rate-limit values are from 1 to 65535 packets per 30 seconds.


Note If IGMP rate limiting and multicast are enabled, multicast router ports might age out sporadically because the rate of the multicast control packets (such as PIMv2 hellos or IGMP general queries) exceeds the IGMP rate limit watermarks that were configured. The default value for these watermarks is 100. We recommend that you increase the PIMv2 hello ratelimit to 3000 by entering the set igmp ratelimit pimv2 3000 command. You can also increase the IGMP general queries rate limit; we recommend that you set the value to 500 by entering the set igmp ratelimit general-query 500 command.


To enable IGMP rate limiting and set the rate limit for IGMP snooping packets, perform this task in privileged mode:

Task
Command

Enable IGMP rate limiting and set a rate limit for IGMP snooping packets.

set igmp ratelimit {enable | disable}

set igmp ratelimit {dvmrp | general-query | mospf1 | mospf2 | pimv2} rate


This example shows how to enable IGMP rate limiting:

Console> (enable) set igmp ratelimit enable
IGMP Ratelimiting enabled
Console> (enable)

This example shows how to set the IGMP rate limit for MOSPF2 to 550 packets per every 30 seconds:

Console> (enable) set igmp ratelimit mospf2 550
MOSPF2 Watermark set to allow 550 messages in 30 seconds
Console> (enable)

Displaying Multicast Router Information

When you enable IGMP snooping, the switch automatically learns to which ports a multicast router is connected.

To display the dynamically learned multicast router information, perform these tasks in privileged mode:

Task
Command

Display information on dynamically learned and manually configured multicast router ports.

show multicast router [mod/port] [vlan_id]

Display information only on those multicast router ports that are learned dynamically using IGMP snooping.

show multicast router igmp [mod/port] [vlan_id]


This example shows how to display information on all multicast router ports (the asterisk [*] next to the multicast router on port 5/7 indicates that the entry was configured manually):

Console> (enable) show multicast router
IGMP enabled

Port       Vlan
---------  ----------------
 1/1       1
 2/1       2,99,255
 5/7    *  99

Total Number of Entries = 3
'*' - Configured
Console> (enable)

This example shows how to display only those multicast router ports that were learned dynamically through IGMP:

Console> (enable) show multicast router igmp
IGMP enabled

Port       Vlan
---------  ----------------
 1/1       1
 2/1       2,99,255

Total Number of Entries = 2
'*' - Configured
Console> (enable)

Displaying Multicast Group Information

To display information about multicast groups, perform these tasks in privileged mode:

Task
Command

Display information about multicast groups.

show multicast group [mac_addr] [vlan_id]

Display information only about multicast groups that are learned dynamically through IGMP.

show multicast group igmp [mac_addr] [vlan_id]

Display the total number of multicast addresses (groups) in each VLAN.

show multicast group count [vlan_id]

Display the total number of multicast addresses (groups) in each VLAN that were learned dynamically through IGMP.

show multicast group count igmp [vlan_id]


This example shows how to display information about all multicast groups on the switch:

Console> (enable) show multicast group
IGMP enabled

VLAN  Dest MAC/Route Des  Destination Ports or VCs / [Protocol Type]
----  ------------------  ----------------------------------------------------
1     01-00-11-22-33-44*  2/6-12
1     01-11-22-33-44-55*  2/6-12
1     01-22-33-44-55-66*  2/6-12
1     01-33-44-55-66-77*  2/6-12

Total Number of Entries = 4
Console> (enable)

Displaying IGMP Snooping Statistics

To display IGMP snooping statistics on the switch, perform this task:

Task
Command

Display IGMP snooping statistics.

show igmp statistics [vlan_id]


This example shows how to display IGMP snooping statistics:

Console> (enable) show igmp statistics
IGMP enabled
IGMP statistics for vlan 1:
Total valid pkts rcvd:           18951
Total invalid pkts recvd         0
General Queries recvd            377
Group Specific Queries recvd     0
MAC-Based General Queries recvd  0
Leaves recvd                     14
Reports recvd                    16741
Queries  Xmitted                 0
GS Queries Xmitted               16
Reports Xmitted                  0
Leaves Xmitted                   0
Failures to add GDA to EARL      0
Topology Notifications rcvd      10
IGMP packets dropped             0
Console> (enable)

Disabling IGMP Fast-Leave Processing

To disable IGMP fast-leave processing, perform this task in privileged mode:

Task
Command

Disable IGMP fast-leave processing on the switch.

set igmp fastleave disable


This example shows how to disable IGMP fast-leave processing on the switch:

Console> (enable) set igmp fastleave disable
IGMP fastleave set to disable.
Console> (enable) 

Disabling IGMP Snooping

To disable IGMP snooping on the switch, perform this task in privileged mode:

Task
Command

Disable IGMP snooping on the switch.

set igmp disable


This example shows how to disable IGMP snooping:

Console> (enable) set igmp disable
IGMP feature for IP multicast disabled
Console> (enable)

Configuring GMRP on the Switch

These sections describe how to configure the GARP Multicast Registration Protocol (GMRP):

GMRP Software Requirements

Default GMRP Configuration

Enabling GMRP Globally

Enabling GMRP on Individual Switch Ports

Disabling GMRP on Individual Switch Ports

Enabling the GMRP Forward-All Option

Disabling the GMRP Forward-All Option

Configuring GMRP Registration

Setting the GARP Timers

Displaying GMRP Statistics

Clearing GMRP Statistics

Disabling GMRP Globally on the Switch


Note For an overview of GMRP operation, see the "Understanding How GMRP Works" section.


GMRP Software Requirements

GMRP requires supervisor engine software release 5.2 or later releases.

Default GMRP Configuration

Table 42-3 shows the default GMRP configuration.

Table 42-3 GMRP Default Configuration 

Feature
Default Value

GMRP enable state

Disabled

GMRP per-port enable state

Disabled

GMRP forward all

Disabled on all ports

GMRP registration

Normal on all ports

GARP/GMRP timers

Join time: 200 ms

Leave time: 600 ms

Leaveall time: 10,000 ms


Enabling GMRP Globally


Note You cannot enable GMRP if IGMP snooping is enabled.


To enable GMRP globally, perform this task in privileged mode:

 
Task
Command

Step 1 

Enable GMRP globally on the switch.

set gmrp enable

Step 2 

Verify the configuration.

show gmrp configuration

This example shows how to enable GMRP globally and verify the configuration:

Console> (enable) set gmrp enable
GMRP enabled.
Console> (enable) show gmrp configuration
Global GMRP Configuration:
GMRP Feature is currently enabled on this switch.
GMRP Timers (milliseconds):
Join = 200
Leave = 600
LeaveAll = 10000
Port based GMRP Configuration:
Port                                         GMRP Status Registration ForwardAll
-------------------------------------------- ----------- ------------ ----------
1/1-2,3/1,6/1-48,7/1-24                      Enabled     Normal       Disabled  
Console> (enable)

Enabling GMRP on Individual Switch Ports


Note You can change the per-port GMRP configuration regardless of whether GMRP is enabled globally. However, GMRP will not function on any ports until you enable it globally. For information on configuring GMRP globally on the switch, see the "Enabling GMRP Globally" section.


To enable GMRP on individual switch ports, perform this task in privileged mode:

 
Task
Command

Step 1 

Enable GMRP on an individual switch port.

set port gmrp enable mod/port

Step 2 

Verify the configuration.

show gmrp configuration

This example shows how to enable GMRP on port 6/12 and verify the configuration:

Console> (enable) set port gmrp enable 6/12    
GMRP enabled on port 6/12.
Console> (enable) show gmrp configuration
Global GMRP Configuration:
GMRP Feature is currently enabled on this switch.
GMRP Timers (milliseconds):
Join = 200
Leave = 600
LeaveAll = 10000
Port based GMRP Configuration:
Port                                         GMRP Status Registration ForwardAll
-------------------------------------------- ----------- ------------ ----------
1/1-2,3/1,6/1-9,6/12,6/15-48,7/1-24          Enabled     Normal       Disabled  
6/10-11,6/13-14                              Disabled    Normal       Disabled  
Console> (enable)

Disabling GMRP on Individual Switch Ports


Note You can change the per-port GMRP configuration regardless of whether GMRP is enabled globally. However, GMRP will not function on any ports until you enable it globally. For information on configuring GMRP globally on the switch, see the "Enabling GMRP Globally" section.


To disable GMRP on individual switch ports, perform this task in privileged mode:

 
Task
Command

Step 1 

Disable GMRP on individual switch ports.

set port gmrp disable mod/port

Step 2 

Verify the configuration.

show gmrp configuration

This example shows how to disable GMRP on ports 6/10-14 and verify the configuration:

Console> (enable) set port gmrp disable 6/10-14
GMRP disabled o