338
3. After receiving a query message, Host B or Host C (the delay timer of whichever expires first) sends
an MLD report to the IPv6 multicast group address of G1, to announce its membership for G1.
Assume that Host B sends the report message. After hearing the report from Host B, Host C, which
is on the same subnet as Host B, suppresses its own report for G1, because the MLD routers (Router
A and Router B) have already known that at least one host on the local subnet is interested in G1.
This mechanism, known as the "MLD report suppression", helps reduce traffic on the local subnet.
4. At the same time, because Host A is interested in G2, it sends a report to the IPv6 multicast group
address of G2.
5. Through the query/report process, the MLD routers learn that members of G1 and G2 are
attached to the local subnet, and the IPv6 multicast routing protocol (for example, IPv6 PIM) that is
running on the routers generates (*, G1) and (*, G2) multicast forwarding entries. These entries
will be the basis for subsequent IPv6 multicast forwarding, where * represents any IPv6 multicast
source.
6. When the IPv6 multicast data addressed to G1 or G2 reaches an MLD router, because the (*, G1)
and (*, G2) multicast forwarding entries exist on the MLD router, the router forwards the IPv6
multicast data to the local subnet, and then the receivers on the subnet receive the data.
Leaving an IPv6 multicast group
When a host leaves a multicast group, the following occur:
1. The host sends an MLD done message to all IPv6 multicast routers on the local subnet. The
destination address is FF02::2.
2. After receiving the MLD done message, the querier sends a configurable number of
multicast-address-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 IPv6 multicast group
that is being queried.
3. One of the remaining members (if any on the subnet) of the group being queried should send a
report within the time of the maximum response delay set in the query messages.
4. If the querier receives a report for the group within the maximum response delay time, it will
maintain the memberships of the IPv6 multicast group. Otherwise, the querier will assume that no
hosts on the subnet are still interested in IPv6 multicast traffic addressed to that group and will stop
maintaining the memberships of the group.
How MLDv2 works
Compared with MLDv1, MLDv2 provides the following new features:
IPv6 multicast group filtering
MLDv2 has introduced IPv6 multicast source filtering modes (Include and Exclude), so that a host not only
can join a designated IPv6 multicast group, but also can specify to receive or reject multicast data from
designated IPv6 multicast sources. When a host joins an IPv6 multicast group, one of the following
situation occurs: