676
And the host only needs to save which multicast groups it joined.
IGMP is asymmetric between host and router: the host needs to respond the IGMP
query messages of multicast switches, i.e. to report message response in membership;
the switch sends out membership query messages periodically, and then determine if
there are hosts of some specific group joining in the sub-network it belongs to based on
the received response message, and send out query of specific group (IGMP version2)
when receiving the report of a host exiting the group to determine if there exists no
member in some specific group.
Up to now, there are three versions of IGMP: IGMP version1 (defined by RFC1112),
IGMP version2 (defined by RFC2236) and IGMP version3 (defined by RFC3376).
The main improvements of IGMP version2 over version1 are:
1. The election mechanism of multicast switches on the shared network segment
Shared network segment is the situation of there are more than one multicast switch
on a network segment. Under this kind of situation, since all switches which runs IGMP
under this network segment can get membership report message from the host, therefore,
only one switch is required to transmit membership query message, so an exchange
election mechanism is required to determine a switch as query machine. In IGMP
version1, the selection of query machine is determined by Multicast Routing Protocol;
IGMP version2 made an improvement for it, it prescribed that when there are more than
one multicast switches on the same network segment, the multicast switch with the
lowest IP address will be elected as the query machine.
2. IGMP version2 added Leave Group Mechanism
In IGMP version 1, the host leaves the multicast group silently without sending any
notification to any multicast switch. This causes that the multicast switch can only
determine the leave of multicast member by multicast group response time-out. But in
version2, when a host decides to leave a multicast group, if it is the host which gives
response to the latest membership query message, then it will send out a message
implying it is leaving.
3. IGMP version 2 added the query to specific group
In IGMP version1, a query of multicast switch is for all multicast groups on the
network segment. This query is called general group query. In IGMP version2, query of
specific group is added besides general group query. The destination IP address of this
kind of query message is the IP address of the very multicast group, the group address
field part of the message is also the IP address of the multicast group. Thus it is
prevented that hosts which are other multicast group members transmit response
message.
4. IGMP version2 added the biggest response time field
IGMP version2 added the biggest response time field to dynamically adjust the