IGMP v2

IGMP version 2 extends the functionality of IGMP while maintaining backward compatibility with IGMP v1.

With IGMP v1, the router that sends the periodic queries is elected by the multicast routing protocols. IGMP v2 uses a simple election process to choose the multicast querier, the single router on each subnet that sends the periodic IGMP Host Membership Query messages. The router with the numerically lowest IP address is elected the multicast querier. The election process consists of listening for IGMP queries from other routers. If a query is received with a lower source IP address, the listening router remains a non-querier. If no query is received from other routers, the listening router becomes a querier.

IGMP v2 adds two new message types, an IGMP v2 Host Membership Report and a Leave Group message. It also adds a variation on the Host Membership Query called the Group-Specific Host Membership Query. The details of these new message types are discussed in the following sections.

The structure of IGMP version 2 messages is shown in Figure 4.3.

Cc957916.INAF03(en-us,TechNet.10).gif

Figure 4.3 IGMP Version 2 Message Structure

Type    Specifies the type of IGMP packet. IGMP v2 combines the two 4-bit IGMP v1 Version and Type fields into a single 8-bit Type field.

Table 4.2 lists the defined IGMP v2 message types.

Table 4.2 IGMP v2 Message Types

Hexadecimal Value

Decimal value

Message Type and Description

0x11 (The IGMP v1 Version field of 0x1 and IGMP v1 Type field 0x1 become the IGMP v2 Type field of 0x11.)

17

Host Membership Query For a general query, the Group Address field is set to 0.0.0.0. For a group-specific query, the Group Address field is set to the host group address.

0x12 (The IGMP v1 Version field of 0x1 and IGMP v1 Type field 0x2 become the IGMP v2 Type field of 0x12.)

18

Host Membership Report The Group Address field is set to the host group.

0x16

22

Version 2 Host Membership Report The Group Address field is set to the host group.

0x17

23

Leave Group The Group Address field is set to the host group.

Maximum Response Time    A 1-byte field that specifies the maximum time allowed in 1/10's of a second before sending a Host Membership Report after receiving a Host Membership Query. The Maximum Response Time field is only used in general or group-specific query messages. The Maximum Response Time is configured as the value for the Query response interval setting from:

  • The Router tab on the properties of an IGMP interface in the Routing and Remote Access snap-in.

  • The netsh routing ip igmp set interface command.

Checksum    A 2-byte field set to the value of the 16-bit checksum calculation on the IGMP message. The IGMP checksum does not include the IP header.

Group Address    A 4-byte field set to either 0.0.0.0 for a general Host Membership Query message or the specific group address for the Host Membership Report, Leave Group, and group-specific Host Membership Query messages.

IGMP v2 Host Membership Report

The IGMP v2 Host Membership Report has the same function as the IGMP v1 Host Membership Report except that it is intended to be received by IGMP v2 routers.

Leave Group Message

The Leave Group message is used to reduce the time it takes for the multicast router to stop forwarding multicast traffic when there are no longer any members in the host group. If a host responds to the last IGMP query, it might be the last or only member of the host group. When this host leaves the group it sends an IGMP Leave Group message to 224.0.0.2 (the all routers group). Upon receipt of the Leave Group message, the router sends a series of group-specific queries for the host group. If no host responds to the group-specific queries, the router determines that there are no more members of that host group on that particular subnet and removes the entry from the IGMP interface group table.

IGMP Group-Specific Query

An IGMP Host Membership Query is sent to 224.0.0.1 (the all hosts group) to query for the group membership of all hosts on the subnet. IGMP v2 routers can also send a group-specific query, a query for a specific multicast group sent to the group address.

Table 4.3 summarizes the values of the source and destination IP addresses and the TTL in the IP header and the value of the Group Address in the IGMP header for the two additional types of IGMP v2 messages.

Table 4.3 Addresses and TTLs Used for IGMP v2 Messages

Address

IGMP Group-Specific Query

IGMP Leave Group Message

Source IP Address

[Router interface IP address]

[Host interface IP address]

Destination IP Address

[Host group being queried]

224.0.0.2

TTL

1

1

Group Address

[Host group being queried]

[Host group being left]

For more information, see RFC 2236.