switches can use IGMP snooping to constrain the
flooding of multicast traffic by dynamically configuring Layer 2 interfaces so
that multicast traffic is forwarded to only those interfaces associated with IP
multicast devices. As the name implies, IGMP snooping requires the LAN
switch to snoop on the IGMP transmissions
between the host and the router and to keep track of multicast groups and
member ports. When the
switch receives an IGMP report from a host
for a particular multicast group, the
switch adds the host port number to the
forwarding table entry; when it receives an IGMP Leave Group message from a
host, it removes the host port from the table entry. It also periodically
deletes entries if it does not receive IGMP membership reports from the
For more information on IP
multicast and IGMP, see RFC 1112 and RFC 2236.
The multicast router
switch with the IP services feature
set on the active
switch) sends out periodic general
queries to all VLANs. All hosts interested in this multicast traffic send join
requests and are added to the forwarding table entry. The
switch creates one entry per VLAN in the IGMP
snooping IP multicast forwarding table for each group from which it receives an
IGMP join request.
switch supports IP multicast group-based
bridging, instead of MAC-addressed based groups. With multicast MAC
address-based groups, if an IP address being configured translates (aliases) to
a previously configured MAC address or to any reserved multicast MAC addresses
(in the range 224.0.0.xxx), the command fails. Because the
switch uses IP multicast groups, there are no
address aliasing issues.
The IP multicast groups
learned through IGMP snooping are dynamic. However, you can statically
configure multicast groups by using the
ip igmp snooping vlan
global configuration command. If you specify group membership for a multicast
group address statically, your setting supersedes any automatic manipulation by
IGMP snooping. Multicast group membership lists can consist of both
user-defined and IGMP snooping-learned settings.
You can configure an IGMP
snooping querier to support IGMP snooping in subnets without multicast
interfaces because the multicast traffic does not need to be routed.
If a port spanning-tree, a
port group, or a VLAN ID change occurs, the IGMP snooping-learned multicast
groups from this port on the VLAN are deleted.
These sections describe IGMP snooping characteristics:
IGMP Report Suppression
IGMP report suppression is supported only when the multicast query has IGMPv1 and IGMPv2 reports. This feature is not supported when the query includes IGMPv3 reports.
The switch uses IGMP report suppression to forward only one IGMP report per multicast router query to multicast devices. When IGMP report suppression is enabled (the default), the switch sends the first IGMP report from all hosts for a group to all the multicast routers. The switch does not send the remaining IGMP reports for the group to the multicast routers. This feature prevents duplicate reports from being sent to the multicast devices.
If the multicast router query includes requests only for IGMPv1 and IGMPv2 reports, the switch forwards only the first IGMPv1 or IGMPv2 report from all hosts for a group to all the multicast routers.
If the multicast router query also includes requests for IGMPv3 reports, the switch forwards all IGMPv1, IGMPv2, and IGMPv3 reports for a group to the multicast devices.
If you disable IGMP report suppression, all IGMP reports are forwarded to the multicast routers.
IGMP Filtering and Throttling
In some environments, for
example, metropolitan or multiple-dwelling unit (MDU) installations, you might
want to control the set of multicast groups to which a user on a
switch port can belong. You can control the
distribution of multicast services, such as IP/TV, based on some type of
subscription or service plan. You might also want to limit the number of
multicast groups to which a user on a
switch port can belong.
With the IGMP filtering
feature, you can filter multicast joins on a per-port basis by configuring IP
multicast profiles and associating them with individual
switch ports. An IGMP profile can contain one
or more multicast groups and specifies whether access to the group is permitted
or denied. If an IGMP profile denying access to a multicast group is applied to
switch port, the IGMP join report requesting
the stream of IP multicast traffic is dropped, and the port is not allowed to
receive IP multicast traffic from that group. If the filtering action permits
access to the multicast group, the IGMP report from the port is forwarded for
normal processing. You can also set the maximum number of IGMP groups that a
Layer 2 interface can join.
IGMP filtering controls only group-specific query and membership reports, including join and leave reports. It does not control general IGMP queries. IGMP filtering has no relationship with the function that directs the forwarding of IP multicast traffic. The filtering feature operates in the same manner whether CGMP or MVR is used to forward the multicast traffic.
IGMP filtering applies only
to the dynamic learning of IP multicast group addresses, not static
With the IGMP throttling
feature, you can set the maximum number of IGMP groups that a Layer 2 interface
can join. If the maximum number of IGMP groups is set, the IGMP snooping
forwarding table contains the maximum number of entries, and the interface
receives an IGMP join report, you can configure an interface to drop the IGMP
report or to replace the randomly selected multicast entry with the received
IGMPv3 join and leave
messages are not supported on
switches running IGMP filtering.