Deployment Guide
Figure 45. IGMP Version 2 Packet Format
Joining a Multicast Group
There are two ways that a host may join a multicast group: it may respond to a general query from its querier, or it may send an unsolicited
report to its querier.
• Responding to an IGMP Query.
• One router on a subnet is elected as the querier. The querier periodically multicasts (to all-multicast-systems address 224.0.0.1) a
general query to all hosts on the subnet.
• A host that wants to join a multicast group responds with an IGMP membership report that contains the multicast address of the
group it wants to join (the packet is addressed to the same group). If multiple hosts want to join the same multicast group, only the
report from the rst host to respond reaches the querier, and the remaining hosts suppress their responses (for how the delay timer
mechanism works, refer to IGMP Snooping).
• The querier receives the report for a group and adds the group to the list of multicast groups associated with its outgoing port to
the subnet. Multicast trac for the group is then forwarded to that subnet.
• Sending an Unsolicited IGMP Report.
• A host does not have to wait for a general query to join a group. It may send an unsolicited IGMP membership report, also called an
IGMP Join message, to the querier.
Leaving a Multicast Group
• A host sends a membership report of type 0x17 (IGMP Leave message) to the all routers multicast address 224.0.0.2 when it no longer
cares about multicast trac for a particular group.
• The querier sends a group-specic query to determine whether there are any remaining hosts in the group. There must be at least one
receiver in a group on a subnet for a router to forward multicast trac for that group to the subnet.
• Any remaining hosts respond to the query according to the delay timer mechanism (refer to IGMP Snooping). If no hosts respond
(because there are none remaining in the group), the querier waits a specied period and sends another query. If it still receives no
response, the querier removes the group from the list associated with forwarding port and stops forwarding trac for that group to the
subnet.
IGMP Version 3
Conceptually, IGMP version 3 behaves the same as version 2. However, there are dierences:
• Version 3 adds the ability to lter by multicast source, which helps the multicast routing protocols avoid forwarding trac to subnets
where there are no interested receivers.
• To enable ltering, routers must keep track of more state information, that is, the list of sources that must be ltered. An additional
query type, the group-and-source-specic query, keeps track of state changes, while the group-specic and general queries still refresh
existing state.
• Reporting is more ecient and robust. Hosts do not suppress query responses (non-suppression helps track state and enables the
immediate-leave and IGMP snooping features), state-change reports are retransmitted to insure delivery, and a single membership
report bundles multiple statements from a single host, rather than sending an individual packet for each statement.
340
Internet Group Management Protocol (IGMP)