Enterprise products and services are set forth in the express warranty statements acco mpanying such
products and services. Nothing herein should be construe d as constituting an additional warranty. Hewlett
Packard Enterprise shall not be liable for technical or editorial errors or omissions co ntained herein.
Confidential computer software. V alid license from Hewlett Packard Enterprise required for possession, use, or
copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software
Documentation, and T e chnical Data for Commercial Items are licensed to the U.S. Government under vendor’s
standard commercial license.
Links to third-party websites take you outside the Hewlett Packard Enterprise website. Hewlett Packard
Enterprise has no control over and is not responsible for information outside the Hewlett Packard Enterprise
website.
Acknowledgments
Intel®, Itanium®, Pentium®, Intel Inside®, and the Intel Inside logo are trademarks of Intel Corporation in the
United States and other countries.
Microsoft® and Windows® are trademarks of the Microsoft group of companies.
Adobe® and Acrobat® are trademarks of Adobe Systems In corporated.
Java and Oracle are registered trademarks of Oracle and/or its affiliates.
UNIX® is a registered trademark of The Open Group.
Introduction to multicast ····································································································································· 1
Information transmission techniques ·········································································································· 1
Multicast features ······································································································································· 3
Common notations in multicast ·················································································································· 4
Specifying an IGMP snooping version ····································································································· 17
Setting the maximum number of IGMP snooping forwarding entries ······················································· 18
Setting the IGMP last member query interval ·························································································· 18
Configuring IGMP snooping port features ········································································································ 19
Setting aging timers for dynamic ports ····································································································· 19
Disabling a port from becoming a dynamic router port ············································································ 21
Configuring the IGMP snooping querier ··········································································································· 22
Enabling the IGMP snooping querier ······································································································· 22
Configuring parameters for IGMP general queries and responses ·························································· 23
Configuring parameters for IGMP messages ··································································································· 23
Configuring user port attributes ················································································································ 49
Assigning user ports to a multicast VLAN ································································································ 50
Setting the maximum number of multicast VLAN forwarding entries ······························································· 50
Displaying and maintaining multicast VLANs ··································································································· 51
Multicast VLAN configuration examples ·········································································································· 51
Sub-VLAN-based multicast VLAN configuration example ······································································· 51
Port-based multicast VLAN configuration example ·················································································· 54
Configuring multicast routing and forwarding ················································ 58
Configuring a multicast forwarding boundary ··························································································· 64
Configuring static multicast MAC address entries ···················································································· 64
Enabling multicast forwarding between sub-VLANs of a super VLAN ····························································· 65
Displaying and maintaining multicast routing and forwarding ·········································································· 65
Multicast routing and forwarding configuration examples ················································································ 67
Changing an RPF route ··························································································································· 67
Creating an RPF route ····························································································································· 69
Multicast forwarding over a GRE tunnel ··································································································· 71
Troubleshooting multicast routing and forwarding ··························································································· 73
Configuring an RP ·································································································································· 111
Configuring a BSR ································································································································· 112
Configuring an RP ·································································································································· 117
Configuring a BSR ································································································································· 118
Configuring PIM-SSM ···································································································································· 120
PIM-SSM configuration task list ············································································································· 120
Configuring the SSM group range ·········································································································· 121
Configuring common PIM features ················································································································ 122
Configuration task list ····························································································································· 122
Protocols and standards ························································································································ 184
How MD VPN works······································································································································· 185
Specifying an MLD snooping version ····································································································· 232
Setting the maximum number of MLD snooping forwarding entries ······················································ 233
Setting the MLD last listener query interval ···························································································· 233
Configuring MLD snooping port features ······································································································· 234
Setting aging timers for dynamic ports ··································································································· 234
Disabling a port from becoming a dynamic router port ·········································································· 237
Configuring the MLD snooping querier ·········································································································· 237
Enabling the MLD snooping querier ······································································································· 237
Configuring parameters for MLD general queries and responses ························································· 238
Configuring parameters for MLD messages ·································································································· 239
Configuring user port attributes ·············································································································· 265
Assigning user ports to an IPv6 multicast VLAN ···················································································· 266
Setting the maximum number of IPv6 multicast VLAN forwarding entries ····················································· 266
Displaying and maintaining IPv6 multicast VLANs ························································································ 267
IPv6 multicast VLAN configuration examples ································································································ 267
Sub-VLAN-based IPv6 multicast VLAN configuration example ····························································· 267
Port-based IPv6 multicast VLAN configuration example ········································································ 270
Configuring IPv6 multicast routing and forwarding ······································ 274
Configuring an IPv6 multicast forwarding boundary ··············································································· 278
Configuring IPv6 static multicast MAC address entries ········································································· 278
Enabling IPv6 multicast forwarding between sub-VLANs of a super VLAN ··········································· 279
Displaying and maintaining IPv6 multicast routing and forwarding ································································ 279
IPv6 multicast forwarding over a GRE tunnel configuration example ···························································· 281
Configuring an RP ·································································································································· 319
Configuring a BSR ································································································································· 320
Configuring an RP ·································································································································· 324
Configuring a BSR ································································································································· 326
Configuring IPv6 PIM-SSM ···························································································································· 327
IPv6 PIM-SSM configuration task list ····································································································· 328
Configuring the IPv6 SSM group range ································································································· 328
Configuring common IPv6 PIM features ········································································································ 329
Configuration task list ····························································································································· 329
Remote support ······································································································································ 359
Index ··········································································································· 361
viii
Multicast overview
Introduction to multicast
As a technique that coexists with unicast and broadcast, the multicast technique effectively
addresses the issue of point-to-multipoint data transmission. By enabling high-efficiency
point-to-multipoint data transmission over a network, multicast greatly saves network bandwidth and
reduces network load.
By using multicast technology, a network operator can easily provide bandwidth-critical and
time-critical information services. These services include live webcasting, Web TV, distance learning,
telemedicine, Web radio, and real-time video conferencing.
Information transmission techniques
The information transmission techniques include unicast, broadcast, and multicast.
Unicast
In unicast transmission, the information source must send a separate copy of information to each
host that needs the information.
Figure 1 Unicast transmission
Host A
Receiver
Host B
Source
Host C
Receiver
Host D
IP network
Packets for Host B
Packets for Host D
Packets for Host E
In Figure 1, Host B, Host D, and Host E need the information. A separate transmission channel must
be established from the information source to each of these hosts.
Receiver
Host E
In unicast transmission, the traffic transmitted over the network is proportional to the number of hosts
that need the information. If a large number of hosts need the information, the information source
must send a separate copy of the same information to each of these hosts. Sending many copies
can place a tremendous pressure on the information source and the network bandwidth.
Unicast is not suitable for batch transmission of information.
1
Broadcast
In broadcast transmission, the information source sends information to all hosts on the subnet, even
if some hosts do not need the information.
Figure 2 Broadcast transmission
Multicast
In Figure 2, only Host B, Host D, and Host E need the information. If the information is broadcast to
the subnet, Host A and Host C also receive it. In addition to information security issues, broadcasting
to hosts that do not need the information also causes traffic flooding on the same subnet.
Broadcast is disadvantageous in transmitting data to specific hosts. Moreover, broadcast
transmission is a significant waste of network resources.
Multicast provides point-to-multipoint data transmissions with the minimum network consumption.
When some hosts on the network need multicast information, the information sender, or multicast
source, sends only one copy of the information. Multicast distribution trees are built through multicast
routing protocols, and the packets are replicated only on nodes where the trees branch.
2
Figure 3 Multicast transmission
The multicast source sends only one copy of the information to a multicast group. Host B, Host D,
and Host E, which are information receivers, must join the multicast group. The routers on the
network duplicate and forward the information based on the distribution of the group members.
Finally, the information is correctly delivered to Host B, Host D, and Host E.
To summarize, multicast has the following advantages:
• Advantages over unicast—Multicast data is replicated and distributed until it flows to the
farthest-possible node from the source. The increase of receiver hosts will not remarkably
increase the load of the source or the usage of network resources.
• Advantages over broadcast—Multicast data is sent only to the receivers that need it. This
saves network bandwidth and enhances network security. In addition, multicast data is not
confined to the same subnet.
Multicast features
•A multicast group is a multicast receiver set identified by an IP multicast address. Hosts must
join a multicast group to become members of the multicast group before they receive the
multicast data addressed to that multicast group. Typically, a multicast source does not need to
join a multicast group.
•A multicast source is an information sender. It can send data to multiple multicast groups at the
same time. Multiple multicast sources can send data to the same multicast group at the same
time.
•The group memberships are dynamic. Hosts can join or leave multicast groups at any time.
Multicast groups are not subject to geographic restrictions.
•Multicast routers or Layer 3 multicast devices are routers or Layer 3 switches that support Layer
3 multicast. They provide multicast routing and manage multicast group memberships on stub
subnets with attached group members. A multicast router itself can be a multicast group
member.
For a better understanding of the multicast concept, you can compare multicast transmission to the
transmission of TV programs.
3
Table 1 Comparing TV program transmission and multicast transmission
TV program transmission Multicast transmission
A TV station transmits a TV program through a
channel.
A user tunes the TV set to the channel. A receiver joins the multicast group.
The user starts to watch the TV program
transmitted by the TV station on the channel.
The user turns off the TV set or tunes to another
channel.
Common notations in multicast
The following notations are commonly used in multicast transmission:
• (*, G)—Rendezvous point tree (RPT), or a multicast packet that any multicast source sends to
multicast group G. The asterisk (*) represents any multicast source, and "G" represents a
specific multicast group.
• (S, G)—Shortest path tree (SPT), or a multicast packet that multicast source "S" sends to
multicast group "G." "S" represents a specific multicast source, and "G" represents a specific
multicast group.
For more information about the concepts RPT and SPT, see "Configuring PIM" and "Configuring
IPv6 PIM."
A multicast source sends multicast data to a multicast
group.
The receiver starts to receive the multicast data sent by
the source to the multicast group.
The receiver leaves the multicast group or joins another
group.
Multicast benefits and applications
Multicast benefits
• Enhanced efficiency—Reduces the processor load of information source servers and network
devices.
• Optimal performance—Reduces redundant traffic.
• Distributed application—Enables point-to-multipoint applications at the price of minimum
network resources.
Multicastapplications
•Multimedia and streaming applications, such as Web TV, Web radio, and real-time video/audio
conferencing
•Communication for training and cooperative operations, such as distance learning and
telemedicine
• Data warehouse and financial applications (stock quotes)
• Any other point-to-multipoint application for data distribution
Multicast models
Based on how the receivers treat the multicast sources, the multicast models include any-source
multicast (ASM), source-filtered multicast (SFM), and source-specific multicast (SSM).
4
ASM model
In the ASM model, any multicast sources can send information to a multicast group. Receivers can
join a multicast group and get multicast information addressed to that multicast group from any
multicast sources. In this model, receivers do not know the positions of the multicast sources in
advance.
SFM model
The SFM model is derived from the ASM model. To a multicast source, the two models appear to
have the same multicast membership architecture.
The SFM model functionally extends the ASM model. The upper-layer software checks the source
address of received multicast packets and permits or denies multicast traffic from specific sources.
The receivers obtain the multicast data from only part of the multicast sources. To a receiver,
multicast sources are not all valid, but are filtered.
SSM model
The SSM model provides a transmission service that enables multicast receivers to specify the
multicast sources in which they are interested.
In the SSM model, receivers have already determined the locations of the multicast sources. This is
the main difference between the SSM model and the ASM model. In addition, the SSM model uses a
different multicast address range than the ASM/SFM model. Dedicated multicast forwarding paths
are established between receivers and the specified multicast sources.
Multicast architecture
IP multicast addresses the following issues:
• Where should the multicast source transmit information to? (Multicast addressing.)
• What receivers exist on the network? (Host registration.)
• Where is the multicast source that will provide data to the receivers? (Multicast source
discovery.)
•How is the information transmitted to the receivers? (Multicast routing.)
IP multicast is an end-to-end service. The multicast architecture involves the following parts:
• Addressing mechanism—A multicast source sends information to a group of receivers
through a multicast address.
• Host registration—Receiver hosts can join and leave multicast groups dynamically. This
mechanism is the basis for management of group memberships.
• Multicast routing—A multicast distribution tree (a forwarding path tree for multicast data on the
network) is constructed for delivering multicast data from a multicast source to receivers.
• Multicast applications—A software system that supports multicast applications, such as video
conferencing, must be installed on multicast sources and receiver hosts. The TCP/IP stack
must support reception and transmission of multicast data.
Multicast addresses
IP multicast addresses
•IPv4 multicast addresses:
IANA assigned the Class D address block (224.0.0.0 to 239.255.255.255) to IPv4 multicast.
5
Table 2 Class D IP address blocks and description
r
Address block Description
Reserved permanent group addresses. The IP address
224.0.0.0 is reserved. Other IP addresses can be used by
routing protocols and for topology searching, protocol
224.0.0.0 to 224.0.0.255
224.0.1.0 to 238.255.255.255
239.0.0.0 to 239.255.255.255
NOTE:
maintenance, and so on. Table 3 lists comm
group addresses. A packet destined for an address in this
block will not be forwarded beyond the local subnet regardless
of the TTL value in the IP header.
Globally scoped group addresses. This block includes the
following types of designated group addresses:
• 232.0.0.0/8—SSM group addresses.
• 233.0.0.0/8—Glop group addresses.
Administratively scoped multicast addresses. These
addresses are considered locally unique rather than globally
unique. You can reuse them in domains administered by
different organizations without causing conflicts. For more
information, see RFC 2365.
on permanent
Glop is a mechanism for assigning multicast addresses between different ASs. By filling an AS
number into the middle two bytes of 233.0.0.0, you get 255 multicast addresses for that AS. Fo
more information, see RFC 2770.
Table 3 Common permanent multicast group addresses
Address Description
224.0.0.1 All systems on this subnet, including hosts and routers.
224.0.0.2 All multicast routers on this subnet.
224.0.0.3 Unassigned.
224.0.0.4 DVMRP routers.
224.0.0.5 OSPF routers.
224.0.0.6 OSPF designated routers and backup designated routers.
224.0.0.7 Shared Tree (ST) routers.
224.0.0.8 ST hosts.
224.0.0.9 RIPv2 routers.
224.0.0.11 Mobile agents.
224.0.0.12 DHCP server/relay agent.
224.0.0.13 All Protocol Independent Multicast (PIM) routers.
224.0.0.14 RSVP encapsulation.
224.0.0.15 All Core-Based Tree (CBT) routers.
224.0.0.16 Designated SBM.
224.0.0.17 All SBMs.
224.0.0.18 VRRP.
•IPv6 multicast addresses:
6
Figure 4 IPv6 multicast format
The following describes the fields of an IPv6 multicast address:
{ 0xFF—The most significant eight bits are 11111111.
{ Flags—The Flags field contains four bits.
Figure 5 Flags field format
Table 4 Flags field description
Bit Description
0 Reserved, set to 0.
•When set to 0, this address is an IPv6 multicast
address without an embedded RP address.
R
•When set to 1, this address is an IPv6 multicast
address with an embedded RP address. (The P and T
bits must also be set to 1.)
•When set to 0, this address is an IPv6 multicast
address not based on a unicast prefix.
P
•When set to 1, this address is an IPv6 multicast
address based on a unicast prefix. (The T bit must also
be set to 1.)
•When set to 0, this address is an IPv6 multicast
T
address permanently-assigned by IANA.
•When set to 1, this address is a transient, or
dynamically assigned IPv6 multicast address.
Scope—The Scope field contains four bits, which represent the scope of the IPv6
{
internetwork for which the multicast traffic is intended.
Table 5 Values of the Scope field
Value Meaning
0, F Reserved.
1 Interface-local scope.
2 Link-local scope.
3 Subnet-local scope.
4 Admin-local scope.
5 Site-local scope.
6, 7, 9 through D Unassigned.
8 Organization-local scope.
7
Value Meaning
E Global scope.
{Group ID—The Group ID field contains 112 bits. It uniquely identifies an IPv6 multicast
group in the scope that the Scope field defines.
Ethernet multicast MAC addresses
•IPv4 multicast MAC addresses:
As defined by IANA, the most significant 24 bits of an IPv4 multicast MAC address are
0x01005E. Bit 25 is 0, and the other 23 bits are the least significant 23 bits of an IPv4 multicast
address.
Figure 6 IPv4-to-MAC address mapping
The most significant four bits of an IPv4 multicast address are fixed at 1110. In an IPv4-to-MAC
address mapping, five bits of the IPv4 multicast address are lost. As a result, 32 IPv4 multicast
addresses are mapped to the same IPv4 multicast MAC address. A device might receive
unwanted multicast data at Layer 2 processing, which needs to be filtered by the upper layer.
•IPv6 multicast MAC addresses:
As defined by IANA, the most significant 16 bits of an IPv6 multicast MAC address are 0x3333.
The least significant 32 bits are mapped from the least significant 32 bits of an IPv6 multicast
address. Therefore, the problem of duplicate IPv6-to-MAC address mapping also arises like
IPv4-to-MAC address mapping.
Figure 7 IPv6-to-MAC address mapping
Multicast protocols
Multicast protocols include the following categories:
•Layer 3 and Layer 2 multicast protocols:
{Layer 3 multicast refers to IP multicast operating at the network layer.
This section provides only general descriptions about applications and functions of the Layer 2 and
Layer 3 multicast protocols in a network. For more information about these protocols, see the related
chapters.
Layer 3 multicast protocols
Layer 3 multicast protocols include multicast group management protocols and multicast routing
protocols.
Figure 8 Positions of Layer 3 multicast protocols
•Multicast group management protocols:
Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) protocol
are multicast group management protocols. Typically, they run between hosts and Layer 3
multicast devices that directly connect to the hosts to establish and maintain multicast group
memberships.
•Multicast routing protocols:
A multicast routing protocol runs on Layer 3 multicast devices to establish and maintain
multicast routes and correctly and efficiently forward multicast packets. Multicast routes
constitute loop-free data transmission paths (also known as multicast distribution trees) from a
data source to multiple receivers.
In the ASM model, multicast routes include intra-domain routes and inter-domain routes.
distribution trees within an AS to deliver multicast data to receivers. Among a variety of
mature intra-domain multicast routing protocols, PIM is most widely used. Based on the
forwarding mechanism, PIM has dense mode (often referred to as PIM-DM) and sparse
mode (often referred to as PIM-SM).
9
{An inter-domain multicast routing protocol is used for delivering multicast information
between two ASs. So far, mature solutions include Multicast Source Discovery Protocol
(MSDP) and MBGP. MSDP propagates multicast source information among different ASs.
MBGP is an extension of the MP-BGP for exchanging multicast routing information among
different ASs.
For the SSM model, multicast routes are not divided into intra-domain routes and inter-domain
routes. Because receivers know the positions of the multicast sources, channels established
through PIM-SM are sufficient for the transport of multicast information.
Layer 2 multicast protocols
Layer 2 multicast protocols include IGMP snooping, MLD snooping, PIM snooping, IPv6 PIM
snooping, multicast VLAN, and IPv6 multicast VLAN.
Figure 9 Positions of Layer 2 multicast protocols
•IGMP snooping and MLD snooping:
IGMP snooping and MLD snooping are multicast constraining mechanisms that run on Layer 2
devices. They manage and control multicast groups by monitoring and analyzing IGMP or MLD
messages exchanged between the hosts and Layer 3 multicast devices. This effectively
controls the flooding of multicast data in Layer 2 networks.
•PIM snooping and IPv6 PIM snooping:
PIM snooping and IPv6 PIM snooping run on Layer 2 devices. They work with IGMP snooping
or MLD snooping to analyze received PIM messages. Then, they add the ports that are
interested in specific multicast data to a PIM snooping routing entry or IPv6 PIM snooping
routing entry. In this way, multicast data can be forwarded to only the ports that are interested in
the data.
•Multicast VLAN and IPv6 multicast VLAN:
Multicast VLAN or IPv6 multicast VLAN runs on a Layer 2 device in a multicast network where
multicast receivers for the same group exist in different VLANs. With these protocols, the Layer
3 multicast device sends only one copy of multicast to the multicast VLAN or IPv6 multicast
VLAN on the Layer 2 device. This method avoids waste of network bandwidth and extra burden
on the Layer 3 device.
10
Multicast packet forwarding mechanism
In a multicast model, receiver hosts of a multicast group are usually located at different areas on the
network. They are identified by the same multicast group address. To deliver multicast packets to
these receivers, a multicast source encapsulates the multicast data in an IP packet with the multicast
group address as the destination address. Multicast routers on the forwarding paths forward
multicast packets that an incoming interface receives through multiple outgoing interfaces.
Compared to a unicast model, a multicast model is more complex in the following aspects:
•To ensure multicast packet transmission on the network, different routing tables are used to
guide multicast forwarding. These routing tables include unicast routing tables, routing tables
for multicast (for example, the MBGP routing table), and static multicast routing tables.
•To process the same multicast information from different peers received on different interfaces,
the multicast device performs an RPF check on each multicast packet. The RPF check result
determines whether the packet will be forwarded or discarded. The RPF check mechanism is
the basis for most multicast routing protocols to implement multicast forwarding.
For more information about the RPF mechanism, see "Configuring multicast routing and
rding" and "Configuring IPv6 multicast routing and forwarding."
forwa
11
Configuring IGMP snooping
Overview
IGMP snooping runs on a Layer 2 device as a multicast constraining mechanism to improve
multicast forwarding efficiency. It creates Layer 2 multicast forwarding entries from IGMP packets
that are exchanged between the hosts and the router.
As shown in Figure 10, when IGMP
packets to all hosts in a VLAN. When IGMP snooping is enabled, the Layer 2 switch forwards
multicast packets of known multicast groups to only the receivers.
Figure 10 Multicast packet transmission without and with IGMP snooping
snooping is not enabled, the Layer 2 switch floods multicast
IGMP snooping ports
As shown in Figure 11, IGMP snooping runs on Switch A and Switch B, and Host A and Host C are
receivers in a multicast group. IGMP snooping ports are divided into member ports and router ports.
12
Figure 11 IGMP snooping ports
Router ports
On an IGMP snooping Layer 2 device, the ports toward Layer 3 multicast devices are called router
ports. In Figure 11, Gig
router ports.
abitEthernet 1/0/1 of Switch A and GigabitEthernet 1/0/1 of Switch B are
Router ports contain the following types:
•Dynamic router port—When a port receives an IGMP general query whose source address is
not 0.0.0.0 or receives a PIM hello message, the port is added into the dynamic router port list.
At the same time, an aging timer is started for the port. If the port receives either of the
messages before the timer expires, the timer is reset. If the port does not receive either of the
messages when the timer expires, the port is removed from the dynamic router port list.
•Static router port—When a port is statically configured as a router port, it is added into the
static router port list. The static router port does not age out, and it can be deleted only
manually.
Do not confuse the "router port" in IGMP snooping with the "routed interface" commonly known as
the "Layer 3 interface." The router port in IGMP snooping is a Layer 2 interface.
Member ports
On an IGMP snooping Layer 2 device, the ports toward receiver hosts are called member ports.
In Figure 11, GigabitEthe
of Switch B are member ports.
Member ports contain the following types:
•Dynamic member port—When a port receives an IGMP report, it is added to the associated
dynamic IGMP snooping forwarding entry as an outgoing interface. At the same time, an aging
timer is started for the port. If the port receives an IGMP report before the timer expires, the
timer is reset. If the port does not receive an IGMP report when the timer expires, the port is
removed from the associated dynamic forwarding entry.
•Static member port—When a port is statically configured as a member port, it is added to the
associated static IGMP snooping forwarding entry as an outgoing interface. The static member
port does not age out, and it can be deleted only manually.
rnet 1/0/2 and GigabitEthernet 1/0/3 of Switch A and GigabitEthernet 1/0/2
Unless otherwise specified, router ports and member ports in this document include both static and
dynamic router ports and member ports.
13
How IGMP snooping works
The ports in this section are dynamic ports. For information about how to configure and remove static
ports, see "Configuring static ports."
messages types include general query, IGMP report, and leave message. An IGMP
IGMP
snooping-enabled Layer 2 device performs differently depending on the message types.
General query
The IGMP querier periodically sends IGMP general queries to all hosts and routers on the local
subnet to check for the existence of multicast group members.
After receiving an IGMP general query, the Layer 2 device forwards the query to all ports in the VLAN
except the receiving port. The Layer 2 device also performs one of the following actions:
•If the receiving port is a dynamic router port in the dynamic router port list, the Layer 2 device
restarts the aging timer for the port.
•If the receiving port does not exist in the dynamic router port list, the Layer 2 device adds the
port to the dynamic router port list. It also starts an aging timer for the port.
IGMP report
A host sends an IGMP report to the IGMP querier for the following purposes:
• Responds to queries if the host is a multicast group member.
• Applies for a multicast group membership.
After receiving an IGMP report from a host, the Layer 2 device forwards the report through all the
router ports in the VLAN. It also resolves the address of the reported multicast group, and looks up
the forwarding table for a matching entry as follows:
•If no match is found, the Layer 2 device creates a forwarding entry with the receiving port as an
outgoing interface. It also marks the receiving port as a dynamic member port and starts an
aging timer for the port.
•If a match is found but the matching forwarding entry does not contain the receiving port, the
Layer 2 device adds the receiving port to the outgoing interface list. It also marks the receiving
port as a dynamic member port and starts an aging timer for the port.
•If a match is found and the matching forwarding entry contains the receiving port, the Layer 2
device restarts the aging timer for the port.
In an application with a group policy configured on an IGMP snooping-enabled Layer 2 device, when
a user requests a multicast program, the user's host initiates an IGMP report. After receiving this
report, the Layer 2 device resolves the multicast group address in the report and performs ACL
filtering on the report. If the report passes ACL filtering, the Layer 2 device creates an IGMP
snooping forwarding entry for the multicast group with the receiving port as an outgoing interface. If
the report does not pass ACL filtering, the Layer 2 device drops this report. The multicast data for the
multicast group is not sent to this port, and the user cannot retrieve the program.
A Layer 2 device does not forward an IGMP report through a non-router port because of the host
IGMP report suppression mechanism. For more information about the mechanism, see "Configuring
IGMP."
Leave message
An IGMPv1 receiver host does not send any leave messages when it leaves a multicast group. The
Layer 2 device cannot immediately update the status of the port that connects to the receiver host.
The Layer 2 device does not remove the port from the outgoing interface list in the associated
forwarding entry until the aging time for the group expires.
An IGMPv2 or IGMPv3 host sends an IGMP leave message when it leaves a multicast group.
When the Layer 2 device receives an IGMP leave message on a dynamic member port, the Layer 2
device first examines whether a forwarding entry matches the group address in the message.
14
• If no match is found, the Layer 2 device discards the IGMP leave message.
• If a match is found but the receiving port is not an outgoing interface in the forwarding entry, the
Layer 2 device discards the IGMP leave message.
•If a match is found and the receiving port is not the only outgoing interface in the forwarding
entry, the Layer 2 device performs the following actions:
{ Discards the IGMP leave message.
{ Sends an IGMP group-specific query to identify whether the group has active receivers
attached to the receiving port.
{Sets the aging timer for the receiving port to twice the IGMP last member query interval.
•If a match is found and the receiving port is the only outgoing interface in the forwarding entry,
the Layer 2 device performs the following actions:
{ Forwards the IGMP leave message to all router ports in the VLAN.
{ Sends an IGMP group-specific query to identify whether the group has active receivers
attached to the receiving port.
{Sets the aging timer for the receiving port to twice the IGMP last member query interval.
After receiving the IGMP leave message on a port, the IGMP querier resolves the multicast group
address in the message. Then, it sends an IGMP group-specific query to the multicast group through
the receiving port.
After receiving the IGMP group-specific query, the Layer 2 device forwards the query through all its
router ports in the VLAN and all member ports of the multicast group. Then, it waits for the
responding IGMP report from the directly connected hosts. For the dynamic member port that
received the leave message, the Layer 2 device also performs one of the following actions:
•If the port receives an IGMP report before the aging timer expires, the Layer 2 device resets the
aging timer.
•If the port does not receive an IGMP report when the aging timer expires, the Layer 2 device
removes the port from the forwarding entry for the multicast group.
Protocols and standards
RFC 4541, Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches
General configuration restrictions and guidelines
When you configure IGMP snooping, follow these restrictions and guidelines:
•For a VLAN configured with IGMP snooping, if you change the VPN instance bound to the
VLAN interface, Layer 2 multicast traffic for the VLAN is interrupted. In this case, you must
execute the reset igmp-snooping group command so that new IGMP snooping forwarding
entries can be created.
•For IGMP reports received from secondary VLANs, the relevant IGMP snooping forwarding
entries are maintained by the primary VLAN. Therefore, you need to configure IGMP snooping
only for the primary VLAN. The IGMP snooping configuration made for secondary VLANs does
not take effect. For more information about primary VLANs and secondary VLANs, see Layer 2—LAN Switching Configuration Guide.
•The IGMP snooping configurations made on Layer 2 aggregate interfaces do not interfere with
the configurations made on member ports. In addition, the configurations made on Layer 2
aggregate interfaces do not take part in aggregation calculations. The configuration made on a
member port of the aggregate group takes effect after the port leaves the aggregate group.
15
IGMP snooping configuration task list
Tasks at a glance
Configuring basic IGMP snooping features:
• (Required.) Enabling IGMP snooping
• (Optiona
• (Optional.) Setting the maximum number of IGMP snooping forwarding entries
• (Optional.) Setting the IGMP last member query interval
Configuring IGMP snooping port features:
• (Optional.) Setting aging timers for dynamic ports
• (Optional.) Configuring static ports
• (Optional.) Configuring a port as a simulated member host
• (Optiona
• (Optional.) Disabling a port from becoming a dynamic router port
Configuring the IGMP snooping querier:
• (Optional.) Enabling the IGMP snooping querier
• (Optional.) Configuring parameters for IGMP general queries and responses
Configuring parameters for IGMP messages:
• (Optional.) Configuring source IP addresses for IGMP messages
• (Optiona
Configuring IGMP snooping policies:
• (Optional.) Configuring a multicast group policy
• (Optiona
• (Optional.) Enabling dropping unknown multicast data
• (Optional.) Enabling IGMP report suppression
• (Optional.) Setting the maximum number of multicast groups on a port
• (Optional.) Enabling multicast group replacement
l.) Specifying an IGMP snooping version
l.) Enabling fast-leave processing
l.) Setting the 802.1p priority for IGMP messages
l.) Enabling multicast source port filtering
Configuring basic IGMP snooping features
Before you configure basic IGMP snooping features, complete the following tasks:
• Configure VLANs.
• Determine the IGMP snooping version.
• Determine the maximum number of IGMP snooping forwarding entries.
• Determine the IGMP last member query interval.
Enabling IGMP snooping
When you enable IGMP snooping, follow these guidelines:
• You must enable IGMP snooping globally before you enable it for a VLAN.
• IGMP snooping configuration made in VLAN view takes effect only on the member ports in that
VLAN.
•You can enable IGMP snooping for the specified VLANs in IGMP-snooping view or for a VLAN
in VLAN view. For a VLAN, the configuration in VLAN view has the same priority as the
configuration in IGMP-snooping view, and the most recent configuration takes effect.
16
Enabling IGMP snooping for the specified VLANs
Step Command Remarks
1. Enter system view.
2. Enable IGMP snooping
globally and enter
IGMP-snooping view.
3. Enable IGMP snooping for
the specified VLANs.
system-view
igmp-snooping
enable vlan
vlan-list
Enabling IGMP snooping for a VLAN
Step Command Remarks
1. Enter system view.
2. Enable IGMP snooping
globally and enter
IGMP-snooping view.
3. Return to system view.
4. Enter VLAN view.
5. Enable IGMP snooping for
the VLAN.
system-view
igmp-snooping
quit
vlan
vlan-id
igmp-snooping enable
Specifying an IGMP snooping version
N/A
By default, IGMP snooping is
globally disabled.
By default, IGMP snooping is
disabled for a VLAN.
N/A
By default, IGMP snooping is
disabled.
N/A
N/A
By default, IGMP snooping is
disabled in a VLAN.
Different IGMP snooping versions process different versions of IGMP messages.
•IGMPv2 snooping processes IGMPv1 and IGMPv2 messages, but it floods IGMPv3 messages
in the VLAN instead of processing them.
•IGMPv3 snooping processes IGMPv1, IGMPv2, and IGMPv3 messages.
If you change IGMPv3 snooping to IGMPv2 snooping, the switch does the following:
• Clears all IGMP snooping forwarding entries that are dynamically added.
• Clears static IGMPv3 snooping forwarding entries (S, G), which will be restored when IGMP
snooping is switched back to IGMPv3 snooping.
For more information about static IGMP snooping forwarding entries, see "Configuring static ports."
You can specify the version for the specified VLANs in IGMP-snooping view or for a VLAN in VLAN
view. For a VLAN, the configuration in VLAN view has the same priority as the configuration in
IGMP-snooping view, and the most recent configuration takes effect.
Specifying an IGMP snooping version for the specified VLANs
Step Command Remarks
1. Enter system view.
2. Enable IGMP snooping
globally and enter
IGMP-snooping view.
system-view
igmp-snooping
N/A
N/A
3. Specify an IGMP snooping
version for the specified
version
vlan-list
version-number
17
vlan
The default setting is 2.
VLANs.
Specifying an IGMP snooping version for a VLAN
Step Command Remarks
1. Enter system view.
2. Enter VLAN view.
3. Specify an IGMP snooping
version for the VLAN.
system-view
vlan
vlan-id
igmp-snooping version
version-number
N/A
N/A
The default setting is 2.
Setting the maximum number of IGMP snooping forwarding
entries
You can set the maximum number of IGMP snooping forwarding entries, including dynamic entries
and static entries. When the number of forwarding entries on the switch reaches the upper limit, the
switch does not automatically remove any existing entries. As a best practice, manually remove
some entries to allow new entries to be created.
To set the maximum number of IGMP snooping forwarding entries:
Step Command Remarks
1. Enter system view.
2. Enter IGMP-snooping view.
3. Set the maximum number of
IGMP snooping forwarding
entries.
system-view
igmp-snooping
entry-limit
N/A
limit
N/A
The default setting is
4294967295.
Setting the IGMP last member query interval
A receiver host starts a report delay timer for a multicast group when it receives an IGMP
group-specific query for the group. This timer is set to a random value in the range of 0 to the
maximum response time advertised in the query. When the timer value decreases to 0, the host
sends an IGMP report to the group.
The IGMP last member query interval defines the maximum response time advertised in IGMP
group-specific queries. Set an appropriate value for the IGMP last member query interval to speed
up hosts' responses to IGMP group-specific queries and avoid IGMP report traffic bursts.
Configuration restrictions and guidelines
When you set the IGMP last member query interval, follow these restrictions and guidelines:
•The Layer 2 device does not send an IGMP group-specific query if it receives an IGMP leave
message from a port enabled with fast-leave processing.
•You can set the IGMP last member query interval globally for all VLANs in IGMP-snooping view
or for a VLAN in VLAN view. For a VLAN, the VLAN-specific configuration takes priority over the
global configuration.
Setting the IGMP last member query interval globally
Step Command Remarks
1. Enter system view.
system-view
N/A
18
Step Command Remarks
2. Enter IGMP-snooping view.
3. Set the IGMP last member
query interval globally.
igmp-snooping
last-member-query-interval
interval
Setting the IGMP last member query interval in a VLAN
Step Command Remarks
1. Enter system view.
2. Enter VLAN view.
system-view
vlan
vlan-id N/A
N/A
The default setting is 1
second.
N/A
3. Set the IGMP last member
query interval for the VLAN.
igmp-snooping
last-member-query-interval
interval
The default setting is 1
second.
Configuring IGMP snooping port features
Before you configure IGMP snooping port features, complete the following tasks:
• Enable IGMP snooping for the VLAN.
• Determine the aging timer for dynamic router ports.
• Determine the aging timer for dynamic member ports.
• Determine the addresses of the multicast group and multicast source.
Setting aging timers for dynamic ports
When you set aging timers for dynamic ports, follow these guidelines:
•If the memberships of multicast groups frequently change, you can set a relatively small value
for the aging timer of the dynamic member ports. If the memberships of multicast groups rarely
change, you can set a relatively large value.
•If a dynamic router port receives a PIMv2 hello message, the aging timer for the port is specified
by the hello message. In this case, the router-aging-time or igmp-snooping router-aging-time command does not take effect on the port.
•IGMP group-specific queries originated by the Layer 2 device trigger the adjustment of aging
timers for dynamic member ports. If a dynamic member port receives such a query, its aging
timer is set to twice the IGMP last member query interval. For more information about setting
the IGMP last member query interval on the Layer 2 device, see "Setting the IGMP last member
query inte
•You can set the timers globally for all VLANs in IGMP-snooping view or for a VLAN in VLAN
view. For a VLAN, the VLAN-specific configuration takes priority over the global configuration.
rval."
Setting the aging timers for dynamic ports globally
Step Command Remarks
1. Enter system view.
2. Enter IGMP-snooping view.
3. Set the aging timer for
dynamic router ports globally.
4. Set the global aging timer for
dynamic member ports
system-view
igmp-snooping
router-aging-time
host-aging-time
N/A
19
interval
interval
N/A
The default setting is 260
seconds.
The default setting is 260
seconds.
globally.
Setting the aging timers for dynamic ports in a VLAN
Step Command Remarks
1. Enter system view.
2. Enter VLAN view.
3. Set the aging timer for
dynamic router ports in the
VLAN.
4. Set the aging timer for
dynamic member ports in the
VLAN.
system-view
vlan
vlan-id
igmp-snooping
router-aging-time
igmp-snooping
host-aging-time
N/A
interval
Configuring static ports
You can configure the following types of static ports:
•Static member port—When you configure a port as a static member port for a multicast group,
all hosts attached to the port will receive multicast data for the group.
The static member port does not respond to IGMP queries. When you complete or cancel this
configuration on a port, the port does not send an unsolicited IGMP report or leave message.
•Static router port—When you configure a port as a static router port for a multicast group, all
multicast data for the group received on the port will be forwarded.
interval
N/A
The default setting is 260
seconds.
The default setting is 260
seconds.
To configure static ports:
Step Command Remarks
1. Enter system view.
2. Enter Layer 2 Ethernet
interface view or Layer 2
aggregate interface view.