80
1.
The hosts send unsolicited IGMP reports to the multicast groups they want to join without
having to wait for the IGMP queries.
2.
The IGMP querier periodically multicasts IGMP queries (with the destination address of
224.0.0.1) to all hosts and routers on the local subnet.
3.
After receiving a query message, the host whose report delay timer expires first sends an IGMP
report to multicast group G1 to announce its membership for G1. In this example, Host B sends
the report message. After receiving the report from Host B, Host C suppresses its own report for
G1.
Because IGMP routers already know that G1 has a minimum of one member, other members
do not need to report their memberships. This mechanism, known as the host IGMP report
suppression, helps reduce traffic on the local subnet.
4.
At the same time, Host A sends a report to the multicast group G2 after receiving a query.
5.
Through the query and response process, the IGMP routers (Router A and Router B) determine
that the local subnet has members of G1 and G2. The multicast routing protocol (PIM, for
example) on the routers generates (*, G1) and (*, G2) multicast forwarding entries, where
asterisk (*) represents any multicast source. These entries are the basis for subsequent
multicast forwarding.
6.
When the multicast data addressed to G1 or G2 reaches an IGMP router, the router looks up
the multicast forwarding table. Based on the (*, G1) or (*, G2) entries, the router forwards the
multicast data to the local subnet. Then, the receivers on the subnet can receive the data.
IGMPv1 does not define a leave group message (often called a leave message). When an IGMPv1
host is leaving a multicast group, it stops sending reports to that multicast group. If the subnet has no
members for a multicast group, the IGMP routers will not receive any report addressed to that
multicast group. In this case, the routers clear the information for that multicast group after a period
of time.
IGMPv2 enhancements
Backwards-compatible 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) acts as the
querier.
IGMPv2 introduced an independent querier election mechanism. The querier election process is as
follows:
1.
Initially, every IGMPv2 router assumes itself to be the querier. Each router sends IGMP general
query messages (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 with its own interface address. The router with the lowest IP address becomes the querier.
All the other IGMPv2 routers become non-queriers.
3.
All the non-queriers start the other querier present timer. If a router receives an IGMP query
from the querier before the timer expires, it resets this timer. Otherwise, the router considers
that the querier has timed out. In this case, the router 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
routers. The multicast routers determine whether a group has members by using the maximum
response time. This adds to the leave latency.
In IGMPv2, when a host is leaving a multicast group, the following process occurs:
1.
The host sends a leave message to all routers on the local subnet. The destination address of
leave messages is 224.0.0.2.