Sie sind auf Seite 1von 4

9803xf.

fm Page 1 Friday, October 23, 2009 3:30 PM


9803xf.fm Page 2 Friday, October 23, 2009 3:30 PM

APPENDIX F

IGMP

This appendix provides additional coverage of Internet Group Management Protocol


(IGMP).

IGMPv1 and IGMPv2 Interoperability


IGMPv2 is designed to be backward compatible with IGMPv1. RFC 2236 defines some
special interoperability rules. The next two sections explore the following interoperability
scenarios:

■ “IGMPv2 Host and IGMPv1 Routers”—Defines how an IGMPv2 host should behave
in the presence of an IGMPv1 router on the same subnet.

■ “IGMPv1 Host and IGMPv2 Routers”—Defines how an IGMPv2 router should


behave in the presence of an IGMPv1 host on the same subnet.

IGMPv2 Host and IGMPv1 Routers


When a host sends the IGMPv2 Report with the message type 0x16, which is not defined
in IGMPv1, a version 1 router would consider 0x16 an invalid message type and ignore it.
Therefore, a version 2 host must send IGMPv1 Reports when a version 1 router is active.
But how does an IGMPv2 host detect the presence of an IGMPv1 router on the subnet?

IGMPv2 hosts determine whether the querying router is an IGMPv1 or IGMPv2 host based
on the value of the MRT field of the periodic general IGMP Query. In IGMPv1 Queries,
this field is zero, whereas in IGMPv2 it is nonzero and represents the MRT value. When an
IGMPv2 host receives an IGMPv1 Query, it knows that the IGMPv1 router is present on
the subnet and marks the interface as an IGMPv1 interface. The IGMPv2 host then stops
sending IGMPv2 messages.

Whenever an IGMPv2 host receives an IGMPv1 Query, it starts a 400-second Version 1


Router Present Timeout timer. This timer is reset whenever it receives an IGMPv1 Query.
If the timer expires, which indicates that there are no IGMPv1 routers present on the subnet,
the IGMPv2 host starts sending IGMPv2 messages.
9803xf.fm Page 3 Friday, October 23, 2009 3:30 PM

3 Appendix F: IGMP

IGMPv1 Host and IGMPv2 Routers


IGMPv2 routers can easily determine if any IGMPv1 hosts are present on a LAN based on
whether any hosts send an IGMPv1 Report message (type 0x12) or IGMPv2 Report
message (type 0x16). Like IGMPv1 routers, IGMPv2 routers send periodic IGMPv2
General Queries. An IGMPv1 host responds normally because IGMPv2 General Queries
are very similar in format to IGMPv1 Queries—except for the second octet, which is
ignored by IGMPv1 hosts. So, an IGMPv2 router will examine all Reports to find out if any
IGMPv1 hosts exist on a LAN.

NOTE If IGMPv2 hosts are also present on the same subnet, they would send
IGMPv2 Membership Reports. However, IGMPv1 hosts do not understand IGMPv2
Reports and ignore them; they do not trigger Report Suppression in IGMPv1 hosts.
Therefore, sometimes an IGMPv2 router receives both an IGMPv1 Report and an
IGMPv2 Report in response to a General Query.

While an IGMPv2 router knows that an IGMPv1 host is present on a LAN, the router
ignores Leave messages and the Group-Specific Queries triggered by receipt of the Leave
messages. This is necessary because if an IGMPv2 router responds to a Leave Group
message with a Group-Specific Query, IGMPv1 hosts will not understand it and thus ignore
the message. When an IGMPv2 router does not receive a response to its Group-Specific
Query, it may erroneously conclude that nobody wants to receive traffic for the group and
thus stop forwarding it on the subnet. So with one or more IGMPv1 hosts listening for a
particular group, the router essentially suspends the optimizations that reduce leave latency.

IGMPv2 routers continue to ignore Leave messages until the IGMPv1-Host-Present


Countdown timer expires. RFC 2236 defines that when IGMPv2 routers receive an
IGMPv1 Report, they must set an IGMPv1-host-present countdown timer. The timer value
should be equal to the Group Membership Interval, which defaults to 180 seconds in
IGMPv1 and 260 seconds in IGMPv2. (Group Membership Interval is a time period during
which, if a router does not receive an IGMP Report, the router concludes that there are no
more members of the group on a subnet.)

Comparison of IGMPv1, IGMPv2, and IGMPv3


Table F-1 compares the important features of IGMPv1, IGMPv2, and IGMPv3.
9803xf.fm Page 4 Friday, October 23, 2009 3:30 PM

Comparison of IGMPv1, IGMPv2, and IGMPv3 4

Table F-1 Comparison of IGMPv1, IGMPv2, and IGMPv3

Feature IGMPv1 IGMPv2 IGMPv3


First Octet Value for the 0x11 0x11 0x11
Query Message
Group Address for the 0.0.0.0 0.0.0.0 0.0.0.0
General Query
Destination Address for the 224.0.0.1 224.0.0.1 224.0.0.1
General Query
Default Query Interval 60 seconds 125 seconds 125 seconds
First Octet Value for the 0x12 0x16 0x22
Report
Group Address for the Joining multicast Joining multicast Joining multicast group
Report group address group address address and source address

Destination Address for the Joining multicast Joining multicast 224.0.0.22


Report group address group address
Is Report Suppression Yes Yes No
Mechanism Available?
Can Maximum Response No, fixed at 10 Yes, 0 to 25.5 Yes, 0 to 53 minutes
Time Be Configured? seconds seconds

Can a Host Send a Leave No Yes Yes


Group Message?
Destination Address for the 224.0.0.2 224.0.0.22
Leave Group Message

Can a Router Send a No Yes Yes


Group-Specific Query?
Can a Host Send Source- No No Yes
and Group-Specific
Reports?
Can a Router Send Source- No No Yes
and Group-Specific
Queries?
Rule for Electing a Querier None (depends on Router with the Router with the lowest IP
multicast routing lowest IP address address on the subnet
protocol) on the subnet
Compatible with Other No Yes, only with Yes, with both IGMPv1
Versions of IGMP? IGMPv1 and IGMPv2

Das könnte Ihnen auch gefallen