Table Of Contents
Configuring IGMP Snooping
Information About IGMP Snooping
IGMPv1 and IGMPv2
IGMPv3
IGMP Snooping Querier
IGMP Filtering on Router Ports
IGMP Snooping with VRFs
Licensing Requirements for IGMP Snooping
Prerequisites for IGMP Snooping
Default Settings
Configuring IGMP Snooping Parameters
Verifying the IGMP Snooping Configuration
Displaying IGMP Snooping Statistics
Configuration Examples for IGMP Snooping
Where to Go Next
Additional References
Related Documents
Standards
Feature History for IGMP Snooping
Configuring IGMP Snooping
This chapter describes how to configure Internet Group Management Protocol (IGMP) snooping on a Cisco NX-OS switch.
This chapter includes the following sections:
•
Information About IGMP Snooping
•
Licensing Requirements for IGMP Snooping
•
Default Settings
•
Configuring IGMP Snooping Parameters
•
Verifying the IGMP Snooping Configuration
•
Displaying IGMP Snooping Statistics
•
Configuration Examples for IGMP Snooping
•
Where to Go Next
•
Additional References
•
Feature History for IGMP Snooping
Information About IGMP Snooping
Note
We recommend that you do not disable IGMP snooping on the switch. If you disable IGMP snooping, you may see reduced multicast performance because of excessive false flooding within the switch.
The Internet Group Management Protocol (IGMP) snooping software examines Layer 2 IP multicast traffic within a VLAN to discover the ports where interested receivers reside. Using the port information, IGMP snooping can reduce bandwidth consumption in a multi-access LAN environment to avoid flooding the entire VLAN. The IGMP snooping feature tracks which ports are attached to multicast-capable routers to help the routers forward IGMP membership reports. The IGMP snooping software responds to topology change notifications. By default, IGMP snooping is enabled on the switch.
Figure 4-1 shows an IGMP snooping switch that sits between the host and the IGMP router. The IGMP snooping switch snoops the IGMP membership reports and Leave messages and forwards them only when necessary to the connected IGMP routers.
Figure 4-1 IGMP Snooping Switch
The IGMP snooping software operates upon IGMPv1, IGMPv2, and IGMPv3 control plane packets where Layer 3 control plane packets are intercepted and influence the Layer 2 forwarding behavior.
For more information about IGMP, see Chapter 2 "Configuring IGMP."
The Cisco NX-OS IGMP snooping software has the following proprietary features:
•
Source filtering that allows forwarding of multicast packets based on destination and source IP.
•
Multicast forwarding based on IP address rather than MAC address.
•
Optimized multicast flooding (OMF) that forwards unknown traffic to routers only and performs no data driven state creation.
For more information about IGMP snooping, see RFC 4541.
This section includes the following topics:
•
IGMPv1 and IGMPv2
•
IGMPv3
•
IGMP Snooping Querier
•
IGMP Filtering on Router Ports
IGMPv1 and IGMPv2
Both IGMPv1 and IGMPv2 support membership report suppression, which means that if two hosts on the same subnet want to receive multicast data for the same group, then the host that receives a member report from the other host suppresses sending its report. Membership report suppression occurs for hosts that share a port.
If no more than one host is attached to each VLAN switch port, then you can configure the fast leave feature in IGMPv2. The fast leave feature does not send last member query messages to hosts. As soon as the software receives an IGMP leave message, the software stops forwarding multicast data to that port.
IGMPv1 does not provide an explicit IGMP leave message, so the software must rely on the membership message timeout to indicate that no hosts remain that want to receive multicast data for a particular group.
Note
The software ignores the configuration of the last member query interval when you enable the fast leave feature because it does not check for remaining hosts.
IGMPv3
The IGMPv3 snooping implementation on Cisco NX-OS supports full IGMPv3 snooping, which provides constrained flooding based on the (S, G) information in the IGMPv3 reports. This source-based filtering enables the switch to constrain multicast traffic to a set of ports based on the source that sends traffic to the multicast group.
By default, the software tracks hosts on each VLAN port. The explicit tracking feature provides a fast leave mechanism. Because every IGMPv3 host sends membership reports, report suppression limits the amount of traffic that the switch sends to other multicast-capable routers. When report suppression is enabled, and no IGMPv1 or IGMPv2 hosts requested the same group, the software provides proxy reporting. The proxy feature builds the group state from membership reports from the downstream hosts and generates membership reports in response to queries from upstream queriers.
Even though the IGMPv3 membership reports provide a full accounting of group members on a LAN segment, when the last host leaves, the software sends a membership query. You can configure the parameter last member query interval. If no host responds before the timeout, the software removes the group state.
IGMP Snooping Querier
When PIM is not enabled on an interface because the multicast traffic does not need to be routed, you must configure an IGMP snooping querier to send membership queries. You define the querier in a VLAN that contains multicast sources and receivers but no other active querier.
When an IGMP snooping querier is enabled, it sends out periodic IGMP queries that trigger IGMP report messages from hosts that want to receive IP multicast traffic. IGMP snooping listens to these IGMP reports to establish appropriate forwarding.
IGMP Filtering on Router Ports
IGMP filtering allows users to configure a router port on the switch that leads the switch to a Layer 3 multicast switch. The switch stores all manually configured static router ports in its router port list.
When an IGMP packet is received, the switch forwards the traffic through the router port in the VLAN. The switch recognizes a port as a router port through the PIM hello message or the IGMP query received by the switch.
IGMP Snooping with VRFs
You can define multiple virtual routing and forwarding (VRF) instances. An IGMP process supports all VRFs.
You can use the show commands with a VRF argument to provide a context for the information displayed. The default VRF is used if no VRF argument is supplied.
For information about configuring VRFs, see the Cisco Nexus 3000 Series NX-OS Unicast Routing Configuration Guide.
Licensing Requirements for IGMP Snooping
The following table shows the licensing requirements for this feature:
Product
|
License Requirement
|
Cisco NX-OS
|
IGMP snooping requires no license. Any feature not included in a license package is bundled with the Cisco NX-OS system images and is provided at no extra charge to you. For a complete explanation of the Cisco NX-OS licensing scheme, see the Cisco NX-OS Licensing Guide.
Note Make sure the LAN Base Services license is installed on the switch to enable the Layer 3 interfaces.
|
Prerequisites for IGMP Snooping
IGMP snooping has the following prerequisites:
•
You are logged onto the switch.
•
For global commands, you are in the correct virtual routing and forwarding (VRF) mode. The default configuration mode shown in the examples in this chapter applies to the default VRF.
Default Settings
Table 4-1 lists the default settings for IGMP snooping parameters.
Table 4-1 Default IGMP Snooping Parameters
Parameters
|
Default
|
IGMP snooping
|
Enabled
|
Explicit tracking
|
Enabled
|
Fast leave
|
Disabled
|
Last member query interval
|
1 second
|
Snooping querier
|
Disabled
|
Report suppression
|
Enabled
|
Link-local groups suppression
|
Enabled
|
IGMPv3 report suppression for the entire switch
|
Disabled
|
IGMPv3 report suppression per VLAN
|
Enabled
|
Configuring IGMP Snooping Parameters
To affect the operation of the IGMP snooping process, you can configure the optional IGMP snooping parameters described in Table 4-2.
Table 4-2 IGMP Snooping Parameters
Parameter
|
Description
|
IGMP snooping
|
Enables IGMP snooping on the switch or on a per-VLAN basis. The default is enabled.
Note If the global setting is disabled, then all VLANs are treated as disabled, whether they are enabled or not.
|
Explicit tracking
|
Tracks IGMPv3 membership reports from individual hosts for each port on a per-VLAN basis. The default is enabled.
|
Fast leave
|
Enables the software to remove the group state when it receives an IGMP Leave report without sending an IGMP query message. This parameter is used for IGMPv2 hosts when no more than one host is present on each VLAN port. The default is disabled.
|
Last member query interval
|
Sets the interval that the software waits after sending an IGMP query to verify that no hosts that want to receive a particular multicast group remain on a network segment. If no hosts respond before the last member query interval expires, the software removes the group from the associated VLAN port. Values range from 1 to 25 seconds. The default is 1 second.
|
Snooping querier
|
Configures a snooping querier on an interface when you do not enable PIM because multicast traffic does not need to be routed.
|
Report suppression
|
Limits the membership report traffic sent to multicast-capable routers on the switch or on a per-VLAN basis. When you disable report suppression, all IGMP reports are sent as is to multicast-capable routers. The default is enabled.
|
Multicast router
|
Configures a static connection to a multicast router. The interface to the router must be in the selected VLAN.
|
Static group
|
Configures a Layer 2 port of a VLAN as a static member of a multicast group.
|
Link-local groups suppression
|
Configures link-local groups suppression on the switch or on a per-VLAN basis. The default is enabled.
|
IGMPv3 report suppression
|
Configures IGMPv3 report suppression and proxy reporting on the switch or on a per-VLAN basis. The default is disabled for the entire switch and enabled per VLAN.
|
SUMMARY STEPS
1.
configure terminal
2.
ip igmp snooping
3.
vlan vlan-id
4.
ip igmp snooping
ip igmp snooping explicit-tracking
ip igmp snooping fast-leave
ip igmp snooping last-member-query-interval seconds
ip igmp snooping querier ip-address
ip igmp snooping report-suppression
ip igmp snooping mrouter interface interface
ip igmp snooping static-group group-ip-addr [source source-ip-addr] interface interface
ip igmp snooping link-local-groups-suppression
ip igmp snooping v3-report-suppression
(Optional) copy running-config startup-config
DETAILED STEPS
| |
Command
|
Purpose
|
Step 1
|
configure terminal
Example:
switch# configure terminal
switch(config)#
|
Enters configuration mode.
|
Step 2
|
ip igmp snooping
Example:
switch(config)# ip igmp snooping
|
Enables IGMP snooping. The default is enabled.
Note If the global setting is disabled with the no form of this command, then IGMP snooping on all VLANs is disabled, whether IGMP snooping is enabled on a VLAN or not. If you disable IGMP snooping, Layer 2 multicast frames flood to all modules.
|
Step 3
|
vlan vlan-id
Example:
switch(config)# vlan 2
switch(config-vlan)#
|
Enters VLAN configuration mode.
|
Step 4
|
ip igmp snooping
Example:
switch(config-vlan)# ip igmp snooping
|
Enables IGMP snooping for the current VLAN. The default is enabled.
|
| |
ip igmp snooping explicit-tracking
Example:
switch(config-vlan)# ip igmp snooping
explicit-tracking
|
Tracks IGMPv3 membership reports from individual hosts for each port on a per-VLAN basis. The default is enabled on all VLANs.
|
| |
ip igmp snooping fast-leave
Example:
switch(config-vlan)# ip igmp snooping
fast-leave
|
Supports IGMPv2 hosts that cannot be explicitly tracked because of the host report suppression mechanism of the IGMPv2 protocol. When you enable fast leave, the IGMP software assumes that no more than one host is present on each VLAN port. The default is disabled for all VLANs.
|
| |
ip igmp snooping
last-member-query-interval seconds
Example:
switch(config-vlan)# ip igmp snooping
last-member-query-interval 3
|
Removes the group from the associated VLAN port if no hosts respond to an IGMP query message before the last member query interval expires. Values range from 1 to 25 seconds. The default is 1 second.
|
| |
ip igmp snooping querier ip-address
Example:
switch(config-vlan)# ip igmp snooping
querier 172.20.52.106
|
Configures a snooping querier when you do not enable PIM because multicast traffic does not need to be routed. The IP address is used as the source in messages.
|
| |
ip igmp snooping report-suppression
Example:
switch(config-vlan)# ip igmp snooping
report-suppression
|
Limits the membership report traffic sent to multicast-capable routers. When you disable report suppression, all IGMP reports are sent as is to multicast-capable routers. The default is enabled.
Note This command can also be entered in global configuration mode to affect all interfaces.
|
| |
ip igmp snooping mrouter interface
interface
Example:
switch(config-vlan)# ip igmp snooping
mrouter interface ethernet 2/1
|
Configures a static connection to a multicast router. The interface to the router must be in the selected VLAN. You can specify the interface by the type and the number, such as ethernet slot/port.
|
| |
ip igmp snooping static-group
group-ip-addr [source source-ip-addr]
interface interface
Example:
switch(config-vlan)# ip igmp snooping
static-group 230.0.0.1 interface
ethernet 2/1
|
Configures a Layer 2 port of a VLAN as a static member of a multicast group. You can specify the interface by the type and the number, such as ethernet slot/port.
|
| |
ip igmp snooping
link-local-groups-suppression
Example:
switch(config-vlan)# ip igmp snooping
link-local-groups-suppression
|
Configures link-local groups suppression. The default is enabled.
Note This command can also be entered in global configuration mode to affect all interfaces.
|
| |
ip igmp snooping v3-report-suppression
Example:
switch(config-vlan)# ip igmp snooping
v3-report-suppression
|
Configures IGMPv3 report suppression and proxy reporting. The default is disabled for the global command for the entire switch and enabled per VLAN.
Note This command can also be entered in global configuration mode to affect all interfaces.
|
Step 5
|
copy running-config startup-config
Example:
switch(config)# copy running-config
startup-config
|
(Optional) Saves configuration changes.
|
Verifying the IGMP Snooping Configuration
To display the IGMP snooping configuration information, perform one of the following tasks:
Command
|
Purpose
|
show ip igmp snooping [vlan vlan-id]
|
Displays IGMP snooping configuration by VLAN.
|
show ip igmp snooping groups [source [group] | group [source]] [vlan vlan-id] [detail]
|
Displays IGMP snooping information about groups by VLAN.
|
show ip igmp snooping querier [vlan vlan-id]
|
Displays IGMP snooping queriers by VLAN.
|
show ip igmp snooping mroute [vlan vlan-id]
|
Displays multicast router ports by VLAN.
|
show ip igmp snooping explicit-tracking [vlan vlan-id]
|
Displays IGMP snooping explicit tracking information by VLAN.
|
For detailed information about the fields in the output from these commands, see the Cisco Nexus 3000 Series Command Reference,.
Displaying IGMP Snooping Statistics
Use the show ip igmp snooping statistics vlan command to display IGMP snooping statistics.
Use the clear ip igmp snooping statistics vlan command to clear IGMP snooping statistics.
For detailed information about using these commands, see the Cisco Nexus 3000 Series Command Reference,.
Configuration Examples for IGMP Snooping
This example shows how to configure the IGMP snooping parameters:
ip igmp snooping explicit-tracking
ip igmp snooping fast-leave
ip igmp snooping last-member-query-interval 3
ip igmp snooping querier 172.20.52.106
ip igmp snooping report-suppression
ip igmp snooping mrouter interface ethernet 2/1
ip igmp snooping static-group 230.0.0.1 interface ethernet 2/1
ip igmp snooping link-local-groups-suppression
ip igmp snooping v3-report-suppression
Where to Go Next
You can enable the following features that work with PIM:
•
Chapter 2 "Configuring IGMP"
•
Chapter 5 "Configuring MSDP"
Additional References
For additional information related to implementing IGMP snooping, see the following sections:
•
Related Documents
•
Standards
•
Feature History for IGMP Snooping
Related Documents
Related Topic
|
Document Title
|
CLI commands
|
Cisco Nexus 3000 Series Command Reference,
|
Standards
Standards
|
Title
|
No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.
|
—
|
Feature History for IGMP Snooping
Table 4-3 lists the release history for this feature.
Table 4-3 Feature History for IGMP Snooping
Feature Name
|
Releases
|
Feature Information
|
IGMP Snooping
|
5.0(3)U1(1)
|
This feature was introduced.
|