|
|
This chapter describes how to configure Internet Group Management Protocol (IGMP) snooping on the Catalyst 6000 family switches.
This chapter consists of these sections:
These sections describe how IGMP snooping works on the Catalyst 6000 family switches:
Switches can use IGMP snooping to configure Layer 2 interfaces dynamically so that IP multicast traffic is forwarded only to those interfaces associated with IP multicast devices.
When IGMP snooping is enabled on the switch, the route processor sends out periodic general queries to all VLANs. The switch processor responds to the route processor's queries with only one join request per MAC multicast group. 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 interested in this multicast traffic send join requests and are added to the portmask of this forwarding table entry.
Layer 2 multicast groups learned through IGMP snooping are dynamic. However, you can statically configure MAC multicast groups using the ip igmp snooping static command. If you specify group membership for a multicast group address statically, your static setting supersedes any automatic manipulation by IGMP snooping. Multicast group membership lists can consist of both user-defined and IGMP snooping-learned settings.
When a host connected to the Catalyst 6000 switch wants to join an IP multicast group, it sends an IGMP join message specifying the IP multicast group it wants to join.
When the switch processor receives a general query from the router, the switch processor searches its Enhanced Address Recognition Logic (EARL) table to determine if it contains the MAC address of the host asking to join the multicast group. If a switch finds the MAC address of the host in its EARL table, the switch creates a multicast forwarding entry in the EARL forwarding table. The host associated with that interface receives multicast traffic for that multicast group. In this way, the EARL automatically learns the MAC addresses of the IP multicast hosts.
In a Catalyst 6000 family switch, the route processor sends periodic multicast general queries. The switch processor responds to these queries with one join response per MAC multicast group. As long as at least one host in the VLAN wishes to receive multicast traffic, the switch processor will respond to the route processor queries, and the route processor continues forwarding the multicast traffic to the VLAN. The switch processor only forwards the multicast group traffic to those hosts listed in the portmask for that Layer 2 multicast group. When hosts want to leave a multicast group, they can either ignore the periodic general-query requests sent by the route processor, or they can send a leave message. When the switch processor receives a leave message from a host, it sends out a group-specific query to determine if any devices behind that interface are interested in traffic for the specific multicast group. The switch processor then updates the CAM table entry for that MAC group so that only those hosts interested in receiving multicast traffic for the group are listed in the portmask of the forwarding-table entry. If after a number of queries, the router processor receives no reports from a VLAN, it removes the group for the VLAN from its IGMP cache.
IGMP snooping fast-leave processing allows the switch processor to remove an interface from the portmask of a forwarding-table entry without first sending out group specific queries to the interface The VLAN interface is pruned from the multicast tree for the multicast group specified in the original leave message. Fast-leave processing ensures optimal bandwidth management for all hosts on a switched network, even when multiple multicast groups are in use simultaneously.
IGMP snooping allows switches to examine IGMP packets and make forwarding decisions based on their content. To enable IGMP snooping on the Catalyst 6000 family switches to discover external multicast routers, the Layer 3 interfaces on the routhers in the VLAN must already have been configured for multicast routing. See "Configuring IP Multicast Multilayer Switching" for information on how to enable multicast routing.
These sections describe how to configure IGMP snooping:
Table 16-1 shows the default IGMP snooping configuration.
| Feature | Default Values |
|---|---|
IGMP snooping | Enabled |
Multicast routers | None configured |
Multicast snooping method | PIM DVMRP |
By default, IGMP snooping is globally enabled on the switch. IGMP snooping can be enabled and disabled on a per VLAN basis also but is by default enabled on all VLANs. After you configure the VLAN interface for multicast routing, no configuration is needed for the switch to access external multicast routers dynamically using IGMP snooping.
Multicast-capable router ports are added to the portmask of every Layer 2 multicast entry. The Catalyst 6000 family switches learn of such ports through one of the following methods:
You can configure the switch either to snoop on Protocol Independent Multicast/Distance Vector Multicast Routing Protocol (PIM/DVMRP) packets or listen to CGMP self-join packets. By default, the switch snoops on PIM/DVMRP packets on all VLANs. To learn of multicast router ports through CGMP self-join packets, use the ip igmp snooping mrouter learn cgmp interface mode command. When this command is issued, the router listens to CGMP self-join packets only and no other CGMP packets.
To alter the method in which a VLAN interface dynamically accesses a multicast router, perform this task:
| Step | Command | Purpose | ||
|---|---|---|---|---|
| Router(config)# interface vlan 1 | Specify the VLAN interface. | ||
| Router(config-if)# ip igmp snooping mrouter learn cgmp | Select the snooping method. | ||
| Router(config-if)# ip cgmp router-only | Enable the router to send only CGMP self-join packets. |
This example shows how to configure IP IGMP snooping to use CGMP self-join packets as the learning method:
Router(config-if)# ip cgmp router-only Router(config-if)# ip igmp snooping mrouter learn cgmp Router(config-if)# end Router# *Dec 9 06:31:30: %MCAST-SP-6-IGMP_CGMP_MODE: IGMP snooping now is running in IG MP_CGMP mode on vlan 1
To configure a static connection to a multicast router, enter the ip igmp snooping mrouter command on the switch instead of the ip cgmp router-only command.
To configure a static connection to a multicast router, perform this task:
| Step | Command | Purpose | ||
|---|---|---|---|---|
| Router(config-if)# ip igmp snooping mrouter interface interface_num | Enable static IGMP snooping on a switch port. | ||
| Router# show ip igmp snooping mrouter interface vlan-num | Verify that IGMP snooping is enabled. |
This example shows how to enable a static connection to a multicast router:
Router(config-if)# ip igmp snooping mrouter interface fa 5/10
Router# show ip igmp snooping mrouter interface vlan200
vlan ports
-----+----------------------------------------
200 Fa5/8
Router#
When you enable IGMP fast-leave processing, the switch immediately removes a port when it detects an IGMP version 2 leave message on that port.
To enable IGMP fast-leave processing, perform this task:
| Command | Purpose |
|---|---|
Router(config-if)# ip igmp snooping fast-leave | Enable IGMP fast-leave processing on the switch. |
This example shows how to enable IGMP fast-leave processing and verify the configuration:
Router(config-if)# ip igmp snooping fast-leave Configuring fast leave on vlan 1 Router(config-if)#
Hosts normally join multicast groups dynamically, but you can also configure a host statically on an interface.
To configure a host statically on an interface, perform this task:
| Command | Purpose |
|---|---|
Router(config-if)# ip igmp snooping static mac-address interface interface-num | Configure a host statically on an interface. |
This example shows how to configure a host statically on an interface:
Router(config-if)# ip igmp snooping static 0100.5e02.0203 interface fas 5/11 Configuring port FastEthernet5/11 on group 0100.5e02.0203 vlan 4 Router(config-if)#
You can display IGMP snooping information for dynamically learned and statically configured router ports and VLAN interfaces. You can also display MAC address multicast entries for a VLAN configured for IGMP snooping.
When you enable IGMP snooping, the switch automatically learns to which interface a multicast router is connected. You can display IGMP snooping information with the show ip igmp snooping mrouter command.
To display the dynamically learned multicast router information, perform this task:
| Command | Purpose |
|---|---|
Router# show ip igmp snooping mrouter interface vlan-id | Display information on dynamically learned and manually configured multicast router interfaces. |
This example shows how to display information on all multicast router interfaces in VLAN 1:
Router#show ip igmp snooping mrouter interface vlan1vlan ports-----+----------------------------------------1 Gi1/1,Gi2/1,Fa3/48,RouterRouter#
You can also use the show mac-address-table multicast [interface vlan vlan-id] command to display entries in the MAC address table for a VLAN that has IGMP snooping enabled.
To display MAC address multicast entries for a VLAN configured for IGMP snooping, perform this task:
| Command | Purpose |
|---|---|
Router# show mac-address-table multicast interface vlan-id [count] | Display MAC address table entries for a VLAN. |
This example shows how to display MAC address multicast entries for a VLAN configured for IGMP snooping:
Router# show mac-address-table multicast interface vlan1 vlan mac address type protocol qos ports -----+---------------+--------+---------+---+-------------------------------- 1 0100.5e02.0203 static ip -- Gi1/1,Gi2/1,Fa3/48,Router 1 0100.5e00.0127 static ip -- Gi1/1,Gi2/1,Fa3/48,Router 1 0100.5e00.0128 static ip -- Gi1/1,Gi2/1,Fa3/48,Router 1 0100.5e00.0001 static ip -- Gi1/1,Gi2/1,Fa3/48,Router,SwitchRouter#
This example shows how to display a total count of MAC address entries for a VLAN:
Router#show mac-address-table multicast 1 countMulticast MAC Entries for vlan 1: 4Router#
You can also display IGMP snooping information for VLAN interfaces. To view IGMP snooping information on a specified interface VLAN, perform this task:
| Command | Purpose |
|---|---|
Router# show ip igmp interface vlan-num | Display IGMP snooping information on an interface VLAN. |
This example shows how to display IGMP snooping information on interface VLAN 1:
Router# show ip igmp interface vlan200
Vlan200 is up, line protocol is up
Internet address is 172.20.52.94/27
IGMP is enabled on interface
Current IGMP version is 2
CGMP is disabled on interface
IGMP query interval is 60 seconds
IGMP querier timeout is 120 seconds
IGMP max query response time is 10 seconds
Last member query response interval is 1000 ms
Inbound IGMP access group is not set
IGMP activity: 0 joins, 0 leaves
Multicast routing is enabled on interface
Multicast TTL threshold is 0
Multicast designated router (DR) is 172.20.52.94 (this system)
IGMP querying router is 172.20.52.94 (this system)
No multicast groups joined
IGMP snooping is globally enabled
IGMP snooping is enabled on this interface
IGMP snooping fast-leave is enabled on this interface
Router#
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Posted: Mon Jan 3 14:47:29 PST 2000
Copyright 1989-1999©Cisco Systems Inc.