103
6.
When the multicast data addressed to G1 or G2 reaches an IGMP router, because the (*, G1) and
(*, G2) multicast forwarding entries exist on the IGMP router, the router forwards the multicast
data to the local subnet, and then the receivers on the subnet receive the data.
IGMPv1 does not specifically define a leave group message (often called a "leave message"). When an
IGMPv1 host is leaving a multicast group, it stops sending reports to the address of the multicast group
that it listened to. If no member exists in a multicast group on the subnet, the IGMP router will not receive
any report addressed to that multicast group. In this case, the router will delete the multicast forwarding
entries for that multicast group after a period of time.
Enhancements in IGMPv2
Compared with IGMPv1, IGMPv2 has introduced a querier election mechanism and a leave-group
mechanism.
Querier election mechanism
In IGMPv1, the DR elected by the Layer 3 multicast routing protocol (such as PIM) serves as the querier
among multiple routers on the same subnet.
IGMPv2 introduced an independent querier election mechanism. The querier election process is as
follows:
1. Initially, every IGMPv2 router assumes itself as the querier and sends IGMP general query
messages (often called "general queries") to all hosts and routers on the local subnet. The
destination address is 224.0.0.1.
2. After receiving a general query, every IGMPv2 router compares the source IP address of the query
message with its own interface address. After comparison, the router with the lowest IP address
wins the querier election, and all other IGMPv2 routers become non-queriers.
3. All the non-queriers start a timer, known as "other querier present timer." If a router receives an
IGMP query from the querier before the timer expires, it resets this timer. Otherwise, it assumes the
querier to have timed out and initiates a new querier election process.
"Leave group" mechanism
In IGMPv1, when a host leaves a multicast group, it does not send any notification to the multicast router.
The multicast router relies on the host response timeout timer to determine whether a group has members.
This adds to the leave latency.
In IGMPv2, when a host leaves a multicast group, the following steps occur:
1. This host sends a leave message to all routers on the local subnet. The destination address is
224.0.0.2.
2. After receiving the leave message, the querier sends a configurable number of group-specific
queries to the group that the host is leaving. The destination address field and group address field
of the message are both filled with the address of the multicast group that is being queried.
3. One of the remaining members (if any on the subnet) of the group that is being queried should
send a membership report within the maximum response time set in the query messages.