IGMPv1 doesn’t specially define the leave group message. When a host running IGMPv1 leaves
one multicast group, it wouldn’t send the report message to this multicast group. If no member
exists in the multicast group, the IGMP router will not receive any report message to this
multicast group, thus it will delete this multicast group’s corresponding multicast forwarding
entries after a period of time.
IGMPv2 Work Process
IGMPv2 adds the querier-election mechanism and leave-group mechanism based on IGMPv1.
1.
Querier-Election Mechanism
The querier-election mechanism in IGMPv2 is illustrated as below:
(1)
Every IGMP router will assume itself as the querier at its initialization, and send IGMP
general query message to all the hosts and routers with the multicast address 224.0.0.1 in
the local network.
(2)
After the other IGMPv2 routers in the local network receive this IGMP general query
message, it will compare the message’s source IP address with its interface address.
Through the comparison, the router with the smallest IP address will be elected as the
querier and the other routers as the non-querier.
(3)
All the non-queriers will start up a timer, known as the Other Querier Present Timer. This
timer will be reset if the non-querier receives the IGMP query message before the timer
runs out; otherwise the former querier will be assumed as invalid and a new
querier-election will be initiated.
2.
Leave-Group Mechanism
When a host leaves a multicast group in IGMPv2:
(1)
The host will send leave group message to all the multicast routers in the local network
with the multicast address 224.0.0.2.
(2)
After receiving this leave group message, the querier will send group-specific query
message to the multicast group that the host announces to leave. (The querying multicast
group address is filled in the destination address field and the group address field of this
group-specific query message.)
(3)
When there are other members of this multicast group in the local network, these
members will send their membership report messages after receiving the group-specific
query message within the max response time set in the query message.
(4)
If the querier receives the other member’s membership report message of this multicast
group within the max response time, the querier will continue to maintain the memberships
of this multicast group; otherwise the querier will assume that there is no member in this
multicast group and will no longer maintain its memberships.
259