IGMP is an internal protocol of the IP suite. IP manages multicast traffic by using switches, multicast routers, and hosts that support IGMP. A multicastrouter is not necessary as long as a switch is configured to support IGMP with the querier
feature enabled. A set of hosts, routers, and/or switches that send or receive multicast data streams to or from the same sources is called a multicast group, and all devices in the group use the same multicast group address. The multicast group running version 2 of IGMP uses three fundamental types of messages to communicate:
Query |
A message sent from the querier (multicast router or switch) asking for a response from each host belonging to the multicast group. If a multicast router supporting IGMP is not present, the switch must assume this function to elicit group membership information from the hosts on the network. If you need to disable the querier feature, do so through the CLI using the IGMP configuration MIB, see Configuring the querier function. |
Report (Join) |
A message sent by a host to the querier to indicate that the host wants to be or is a member of a given group indicated in the report message. |
Leave group |
A message sent by a host to the querier to indicate that the host has ceased to be a member of a specific multicast group. |
An IP multicast packet includes the multicast group (address) to which the packet belongs. When an IGMP client connected to a switch port needs to receive multicast traffic from a specific group, it joins the group by sending an IGMP report (join request) to the network. (The multicast group specified in the join request is determined by the requesting application running on the IGMP client.) When a networking device with IGMP enabled receives the join request for a specific group, it forwards any IP multicast traffic it receives for that group through the port on which the join request was received. When the client is ready to leave the multicast group, it sends a Leave Group message to the network and ceases to be a group member. When the leave request is detected, the appropriate IGMP device ceases transmitting traffic for the designated multicast group through the port on which the leave request was received (as long as there are no other current members of that group on the affected port.)
Thus, IGMP identifies members of a multicast group (within a subnet) and allows IGMP-configured hosts (and routers) to join or leave multicast groups.
To display IGMP data showing active group addresses, reports, queries, querier access port, and active group address data (port, type, and access), see section "Internet Group Management Protocol (IGMP) Status" in appendix B, "Monitoring and Analyzing Switch Operation" of the Management and Configuration Guide for your switch.
You can configure IGMP on VLANs that do not have IP addressing. The benefit of IGMP without IP addressing is a reduction in the number of IP addresses you have to use and configure. This can be significant in a network with a large number of VLANs. The limitation on IGMP without IP addressing is that the switch cannot become Querier on any VLANs for which it has no IP address—so the network administrator must ensure that another IGMP device will act as Querier. It is also advisable to have an additional IGMP device available as a backup Querier. See Comparison of IGMP operation with and without IP addressing.
Comparison of IGMP operation with and without IP addressing
IGMP function available with IP addressing configured on the VLAN | Available without IP addressing? | Operating differences without an IP address |
---|---|---|
Forward multicast group traffic to any port on the VLAN that has received a join request for that multicast group. | Yes | None |
Forward join requests (reports) to the Querier. | Yes | None |
Configure individual ports in the VLAN to Auto (the default)/Blocked , or Forward . |
Yes | None |
Configure IGMP traffic forwarding to normal or high-priority forwarding. | Yes | None |
Age-out IGMP group addresses when the last IGMP client on a port in the VLAN leaves the group. | Yes | Requires that another IGMP device in the VLAN has an IP address and can operate as Querier. This can be a multicast router or another switch configured for IGMP operation. (Hewlett Packard Enterprise recommends that the VLAN also include a device operating as a backup Querier in case the device operating as the primary Querier fails for any reason.) |
Support Fast-Leave IGMP and Forced Fast-Leave IGMP (below.) | Yes | |
Support automatic Querier election. | No | Querier operation not available. |
Operate as the Querier. | No | Querier operation not available. |
Available as a backup Querier. | No | Querier operation not available. |
Depending on the switch model, fast-leave is enabled or disabled in the default configuration.
On switches that do not support data-driven IGMP, unregistered multicast groups are flooded to the VLAN rather than pruned. In this scenario, fast-leave IGMP can actually increase the problem of multicast flooding by removing the IGMP group filter before the Querier has recognized the IGMP leave. The Querier will continue to transmit the multicast group during this short time, and because the group is no longer registered, the switch will then flood the multicast group to all ports.
On HPE switches that do support data-driven IGMP ("Smart" IGMP), when unregistered multicasts are received the switch automatically filters (drops) them. Thus, the sooner the IGMP leave is processed, the sooner this multicast traffic stops flowing.
Because of the multicast flooding problem mentioned above, the IGMP fast-leave feature is disabled by default on all switches that do not support data-driven IGMP (see the table above.) The feature can be enabled on these switches via an SNMP set of this object:
However, Hewlett Packard Enterprise does not recommend this because it will increase the amount of multicast flooding during the period between the client's IGMP leave and the Querier's processing of that leave. For more information on this topic, see Forced fast-leave IGMP.
If a switch port has the following characteristics, the fast-leave operation will apply:
-
Connected to only one end node.
-
The end node currently belongs to a multicast group, that is, is an IGMP client.
-
The end node subsequently leaves the multicast group.
Then the switch does not need to wait for the Querier status update interval, but instead immediately removes the IGMP client from its IGMP table and ceases transmitting IGMP traffic to the client. (If the switch detects multiple end nodes on the port, automatic fast-leave does not activate—regardless of whether one or more of these end nodes are IGMP clients.)
In Example of automatic fast-leave IGMP criteria, automatic fast-leave operates on the switch ports for IGMP clients "3A" and "5A," but not on the switch port for IGMP clients "7A" and "7B," server "7C," and printer "7D."
When client "3A" running IGMP is ready to leave the multicast group, it transmits a Leave Group message. Because the switch knows that there is only one end node on port A3, it removes the client from its IGMP table and halts multicast traffic (for that group) to port A3. If the switch is not the Querier, it does not wait for the actual Querier to verify that there are no other group members on port A3. If the switch itself is the Querier, it does not query port A3 for the presence of other group members.
Fast-leave operation does not distinguish between end nodes on the same port that belong to different VLANs. Thus, for example, even if all of the devices on port A6 in Example of automatic fast-leave IGMP criteria belong to different VLANs, fast-leave does not operate on port A6.
Fast-leave IGMP is enabled by default. When fast-leave is disabled and multiple IGMP clients are connected to the same port on an IGMP device (switch or router), if only one IGMP client joins a given multicast group, then later sends a Leave Group message and ceases to belong to that group, the switch automatically retains that IGMP client in its IGMP table and continues forwarding IGMP traffic to the IGMP client until the Querier triggers confirmation that no other group members exist on the same port. This delayed leave operation means that the switch continues to transmit unnecessary multicast traffic through the port until the Querier renews multicast group status.
When enabled, forced fast-leave IGMP speeds up the process of blocking unnecessary IGMP traffic to a switch port that is connect ed to multiple end nodes. (This feature does not activate on ports where the switch detects only one end node.) For example, in Example of automatic fast-leave IGMP criteria, even if you configured forced fast-leave on all ports in the switch, the feature would activate only on port A6 (which has multiple end nodes) when a Leave Group request arrived on that port.
When a port having multiple end nodes receives a Leave Group request from one end node for a given multicast group "X," forced fast-leave activates and waits a small amount of time to receive a join request from any other group "X" member on that port. If the port does not receive a join request for that group within the forced-leave interval, the switch then blocks any further group "X" traffic to the port.
For information about forced fast-leave, see Forced fast-leave IGMP.
Syntax:
The fast learn
option allows fast convergence of multicast traffic after a topology change. This command is executed in the global config context.
Syntax:
This command enabled fast learn on the specified ports. The no form of the command disables the fast learn function on the specified ports.
Example:
When enabled, this feature continues to filter IGMP groups for a specified additional period of time after IGMP leaves have been sent. The delay in flushing the group filter prevents unregistered traffic from being forwarded by the server during the delay period. In practice, this is rarely necessary on the switches, which support data-driven IGMP. (Data-driven IGMP, which is enabled by default, prunes off any unregistered IGMP streams detected on the switch.)
Syntax:
Where leaves have been sent for IGMP groups, enables the switch to continue to flush the groups for a specified period of time. This command is applied globally to all IGMP-configured VLANs on the switch.