Subject: igmpv3 query num should be changed?

From: Hitoshi Asaeda <[email-masked]>
Date: Tue, 04 Jul 2000 13:18:02 +0900 (JST)

Hi all.

I have a question/comment about IGMPv3's query type.
Current v3's spec (igmp-v3-04) says;

7.1.  Query Version Distinctions

The IGMP version of a Membership Query message is determined as follows:

   IGMPv1 Query: length = 8 octets AND Max Response Time field is zero

   IGMPv2 Query: length = 8 octets AND Max Response Time field is
                 non-zero

   IGMPv3 Query: length >= 12 octets

Query messages that do not match any of the above conditions (e.g., a
Query of length 10 octets) MUST be silently ignored.

However, IGMPv2's RFC (RFC2236) says;

2.5.  Other fields

   Note that IGMP messages may be longer than 8 octets, especially
   future backwards-compatible versions of IGMP.  As long as the Type is
   one that is recognized, an IGMPv2 implementation MUST ignore anything
   past the first 8 octets while processing the packet.  However, the
   IGMP checksum is always computed over the whole IP payload, not just
   over the first 8 octets.

This means "IGMPv2 query message should not be discarded even if the
length of the query message is longer than 8 octets. The tail starting 
from 8 octets of the message just can be ignored after calculating its 
checksum".
Actually, BSD's kernel implements this way as IGMPv2's query handler.

From now on, due to the backward compativility, IGMPv3's query type
had better be changed from 0x11 to another unique number.

Comments?
--
Hitoshi Asaeda