RFC 2236 (rfc2236) - Page 4 of 24


Internet Group Management Protocol, Version 2



Alternative Format: Original Text Document

< Previous
Next >


RFC 2236           Internet Group Management Protocol      November 1997


3.  Protocol Description

   Note that defaults for timer values are described later in this
   document.  Timer and counter names appear in square brackets.

   The term "interface" is sometimes used in this document to mean "the
   primary interface on an attached network"; if a router has multiple
   physical interfaces on a single network this protocol need only run
   on one of them.  Hosts, on the other hand, need to perform their
   actions on all interfaces that have memberships associated with them.

   Multicast routers use IGMP to learn which groups have members on each
   of their attached physical networks.  A multicast router keeps a list
   of multicast group memberships for each attached network, and a timer
   for each membership.  "Multicast group memberships" means the
   presence of at least one member of a multicast group on a given
   attached network, not a list of all of the members.  With respect to
   each of its attached networks, a multicast router may assume one of
   two roles: Querier or Non-Querier.  There is normally only one
   Querier per physical network.  All multicast routers start up as a
   Querier on each attached network.  If a multicast router hears a
   Query message from a router with a lower IP address, it MUST become a
   Non-Querier on that network.  If a router has not heard a Query
   message from another router for [Other Querier Present Interval], it
   resumes the role of Querier.  Routers periodically [Query Interval]
   send a General Query on each attached network for which this router
   is the Querier, to solicit membership information.  On startup, a
   router SHOULD send [Startup Query Count] General Queries spaced
   closely together [Startup Query Interval] in order to quickly and
   reliably determine membership information.  A General Query is
   addressed to the all-systems multicast group (224.0.0.1), has a Group
   Address field of 0, and has a Max Response Time of [Query Response
   Interval].

   When a host receives a General Query, it sets delay timers for each
   group (excluding the all-systems group) of which it is a member on
   the interface from which it received the query.  Each timer is set to
   a different random value, using the highest clock granularity
   available on the host, selected from the range (0, Max Response Time]
   with Max Response Time as specified in the Query packet.  When a host
   receives a Group-Specific Query, it sets a delay timer to a random
   value selected from the range (0, Max Response Time] as above for the
   group being queried if it is a member on the interface from which it
   received the query.  If a timer for the group is already running, it
   is reset to the random value only if the requested Max Response Time
   is less than the remaining value of the running timer.  When a
   group's timer expires, the host multicasts a Version 2 Membership
   Report to the group, with IP TTL of 1.  If the host receives another



Fenner                      Standards Track


< Previous
Next >


Web Standards & Support:

Link to and support eLook.org Powered by LoadedWeb Web Hosting
Valid XHTML 1.0! Valid CSS! eLook.org FireFox Extensions