- Information About IGMP Snooping
- Licensing Requirements for IGMP Snooping
- Prerequisites for IGMP Snooping
- Guidelines and Limitations for IGMP Snooping
- Default Settings
- Configuring IGMP Snooping Parameters
- Verifying IGMP Snooping Configuration
- Displaying IGMP Snooping Statistics
- Configuration Example for IGMP Snooping
- Where to Go Next
- Additional References
- Feature History for IGMP Snooping in CLI
Configuring IGMP Snooping
This chapter describes how to configure Internet Group Management Protocol (IGMP) snooping on a Cisco NX-OS device.
This chapter includes the following sections:
- Information About IGMP Snooping
- Licensing Requirements for IGMP Snooping
- Prerequisites for IGMP Snooping
- Guidelines and Limitations for IGMP Snooping
- Default Settings
- Configuring IGMP Snooping Parameters
- Verifying IGMP Snooping Configuration
- Displaying IGMP Snooping Statistics
- Configuration Example for IGMP Snooping
- Where to Go Next
- Additional References
- Feature History for IGMP Snooping in CLI
Information About IGMP Snooping
Note
We recommend that you do not disable IGPM snooping on the device. If you disable IGMP snooping, you might see reduced multicast performance because of excessive false flooding within the device.
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. IGMP snooping 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 device.
Figure 1-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 1-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 Chapter1, “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 addresses rather than MAC address.
- Beginning with Cisco Release 5.2(1) for the Nexus 7000 Series devices, multicast forwarding alternately based on the 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
- Static Multicast MAC Address
- IGMP Snooping with VDCs and VRFs
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, 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 device 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 device 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.
Static Multicast MAC Address
Beginning with the Cisco Release 5.2(1) for the Nexus 7000 Series devices, you configure an outgoing interface statically for a multicast MAC address. Also, you can configure the IGMP snooping to use a MAC-based lookup mode.
Previously, the system performs the lookup on Layer 2 multicast table using the destination IP address rather than the destination MAC address. However, some applications share a single unicast cluster IP and multicast cluster MAC address. The system forwards traffic destined to the unicast cluster IP address by the last-hop router with the shared multicast MAC address. This action can be accomplished by assigning a static multicast MAC address for the destination IP address for the end host or cluster.
The default lookup mode remains IP, but you can configure the lookup type to MAC address-based. You can configure the lookup mode globally or per VLAN:
- If the VDC contains ports from only an M Series module and the global lookup mode is set to IP, VLANs can be set to either one of the two lookup modes. But, if the global lookup mode is set to MAC address, the operational lookup mode for all the VLANs changes to MAC-address mode.
- If the VDC contains ports from both an M Series module and an F Series module and if you change the lookup mode to a MAC address in any VLAN, the operation lookup mode changes for all of the VLANs to a MAC-address based. With these modules in the chassis, you have the same lookup mode globally and for the VLANs. Similarly, if the global lookup mode is MAC-address based, the operational lookup mode for all VLAN is also MAC-address based.
Note
Changing the lookup mode is disruptive. Multicast forwarding is not optimal until all multicast entries are programmed with the new lookup mode. Also, when 32 IP addresses are mapped to a single MAC address, you might see suboptimal forwarding on the device.
IGMP Snooping with VDCs and VRFs
A virtual device context (VDC) is a logical representation of a set of system resources. Within each VDC, you can define multiple virtual routing and forwarding (VRF) instances. One IGMP process can run per VDC. The IGMP process supports all VRFs in that VDC and performs the function of IGMP snooping within that VDC.
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 VDCs, see the Cisco Nexus 7000 Series NX-OS Virtual Device Context Configuration Guide, Release 4.2.
For information about configuring VRFs, see the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide, Release 5.x.
Licensing Requirements for IGMP Snooping
The following table shows the licensing requirements for this feature:
Prerequisites for IGMP Snooping
IGMP snooping has the following prerequisites:
- You are logged onto the device.
- You are in the correct virtual device context (VDC). A VDC is a logical representation of a set of system resources. You can use the switchto vdc command with a VDC number.
- 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.
Guidelines and Limitations for IGMP Snooping
IGMP snooping has the following guidelines and limitations:
- You must disable IGMP optimized multicast forwarding (OMF) for IPv6 multicast networks that require multicast forwarding over a layer 2 network.
- If you are configuring vPC peers, the differences in the IGMP snooping configuration options between the two devices have the following results:
–
If IGMP snooping is enabled on one device but not on the other, the device on which snooping is disabled floods all multicast traffic.
–
A difference in multicast router or static group configuration can cause traffic loss.
–
The fast leave, explicit tracking, and report suppression options can differ if they are used for forwarding traffic.
–
If a query parameter is different between the devices, one device expires the multicast state faster while the other device continues to forward. This difference results in either traffic loss or forwarding for an extended period.
–
If an IGMP snooping querier is configured on both devices, only one of them will be active because an IGMP snooping querier shuts down if a query is seen in the traffic.
Network applications that use unicast destination IP addresses with multicast destination MAC addresses
Network applications which use unicast destination IP addresses with multicast destination MAC addresses might require the configuration of IGMP snooping to use MAC-based forwarding lookups on the switch.
If the destination MAC address used for this kind of applications is a non-IP multicast MAC address, use the mac address-table multicast command to statically configure the port membership.
In addition, if the destination MAC address is in the IP multicast range, 0100.5E00.0000 to 0100.5E7F.FFFF, use static IGMP snooping membership entries for the corresponding Layer 3 IP multicast address to configure the port membership. For example, if the application uses destination MAC address 0100.5E01.0101, configure a static IGMP snooping membership entry for an IP multicast address that maps to that MAC address. An example of this is ip igmp snooping static-group 239.1.1.1.
Default Settings
Table 1-1 lists the default settings for IGMP snooping parameters.
|
|
|
|---|---|
Configuring IGMP Snooping Parameters
Note
If you are familiar with the Cisco IOS CLI, be aware that the Cisco NX-OS commands for this feature might differ from the Cisco IOS commands that you would use.
You can configure IGMP snooping both globally and per VLAN. This section includes the following topics:
- Configuring Global IGMP Snooping Parameters
- Configuring IGMP Snooping Parameters per VLAN
- Changing the Lookup Mode
- Configuring a Static Multicast MAC Address
Note
You must enable IGMP snooping globally before any of the other commands take effect.
Configuring Global IGMP Snooping Parameters
To affect the operation of the IGMP snooping process globally, you can configure the optional IGMP snooping parameters described in Table 1-1 .
SUMMARY STEPS
ip igmp snooping event-history
ip igmp snooping group-timeout { minutes | never }
ip igmp snooping link-local-groups-suppression
ip igmp optimise-multicast-flood
ip igmp snooping proxy general-inquiries [ mrt seconds ]
ip igmp snooping report-suppression
DETAILED STEPS
Configuring IGMP Snooping Parameters per VLAN
To affect the operation of the IGMP snooping process per VLAN, you can configure the optional IGMP snooping parameters described in Table 1-3 .
Note
Beginning with Cisco Release 5.1(1), step 3 in the following configuration changed from vlan vlan-id to vlan configuration vlan-id.
You configure the IP IGMP snooping parameters that you want by using this configuration mode; however, the configurations apply only after you specifically create the specified VLAN. See the Cisco Nexus 7000 Series NX-OS Layer 2 Switching Configuration Guide, Release 5.x, for information on creating VLANs.
SUMMARY STEPS
vlan configuration vlan-id —Beginning with Cisco Release 5.1(1), use this command
ip igmp snooping explicit-tracking
ip igmp snooping group-timeout { minutes | never }
ip igmp snooping last-member-query-interval seconds
ip igmp optimised-multicast-flood
ip igmp snooping proxy general-queries [ mrt seconds ]
ip igmp snooping querier ip-address
ip igmp snooping querier-timeout seconds
ip igmp snooping query-interval seconds
ip igmp snooping query-max-response-time seconds
ip igmp snooping startup-query-count value
ip igmp snooping startup-query-interval seconds
ip igmp snooping robustness-variable value
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
DETAILED STEPS
Changing the Lookup Mode
Beginning with Cisco Release 5.2(1) for the Nexus 7000 Series chassis, you can configure the lookup mode to be based on the MAC address either globally or per VLAN.
SUMMARY STEPS
2.
layer-2 multicast lookup mode
Use this command to change the lookup mode globally
3.
vlan vlan-id
layer-2 multicast lookup mac
Use these 2 commands to change the lookup mode per VLAN. See the Cisco Nexus 7000 Series NX-OS Layer 2 Switching Configuration Guide, Release 5.x for information on the VLAN configuration mode.
5.
(Optional) show ip igmp snooping lookup-mode [ vlan vlan-id]
DETAILED STEPS
Configuring a Static Multicast MAC Address
Beginning with Cisco Release 5.2(1) for the Nexus 7000 Series chassis, you can configure an outgoing interface statically for a multicast MAC address.
SUMMARY STEPS
2.
mac address-table multicast multicast-mac-addr vlan vlan-id interface slot/port
4.
(Optional) show ip igmp snooping mac-oif [ detail | vlan vlan-id [ detail ]]
DETAILED STEPS
Verifying IGMP Snooping Configuration
To display the IGMP snooping configuration information, perform one of the following tasks:
For detailed information about the fields in the output from these commands, see the Cisco Nexus 7000 Series NX-OS Multicast Routing Command Reference, Release 5.x.
Displaying IGMP Snooping Statistics
Use the show ip igmp snooping statistics vlan command to display IGMP snooping statistics. You can see the virtual port channel (vPC) statistics in this output.
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 7000 Series NX-OS Multicast Routing Command Reference, Release 5.x.
Configuration Example for IGMP Snooping
The following example shows how to configure the IGMP snooping parameters:
The following example shows how to configure the IGMP snooping parameters beginning with Cisco Release 5.1(1):
These configurations do not apply until you specifically create the specified VLAN. See Cisco Nexus 7000 Series NX-OS Layer 2 Switching Configuration Guide, Release 5.x for information on creating VLANs.
Where to Go Next
Additional References
For additional information related to implementing IGMP snooping, see the following sections:
Related Documents
|
|
|
|---|---|
Cisco Nexus 7000 Series NX-OS Virtual Device Context Configuration Guide, Release 4.2 |
|
Cisco Nexus 7000 Series NX-OS Multicast Routing Command Reference, Release 5.x |
Standards
|
|
|
|---|---|
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 in CLI
Table 1-4 lists the release history for this feature.
Feedback