Re: [pim] Call for adoption: draft-venaas-pim-igmp-mld-extension

Hitoshi Asaeda <> Wed, 25 March 2020 03:30 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 133963A0414 for <>; Tue, 24 Mar 2020 20:30:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.1
X-Spam-Status: No, score=-2.1 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id TTTFhWsJdLIc for <>; Tue, 24 Mar 2020 20:30:27 -0700 (PDT)
Received: from ( [IPv6:2607:f8b0:4864:20::42c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id B46243A040B for <>; Tue, 24 Mar 2020 20:30:27 -0700 (PDT)
Received: by with SMTP id 22so362431pfa.9 for <>; Tue, 24 Mar 2020 20:30:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=google; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=+Z9uUiTe9QxDj4dMuiWxJ1iSPm3069sR1sAEh1y9MJw=; b=OgobpJ91ahh2x/Da7ZP17RDCDmjygdrnG6u3/GgwWeTSMtA1d/VBR0YzvAJnGISOVk JggaXnKy9OAXwiG7aOFqE2Xh2NkHpgkSFt+EC2JWGtWFcfyjd44W6QHq+PygExXzjCgn FJYUXLMhpcRR4M6HCbQaL9KMTZ7WRwd2s4GyE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=+Z9uUiTe9QxDj4dMuiWxJ1iSPm3069sR1sAEh1y9MJw=; b=Va0uN+GzVsXbml7BKQjRA3PixjUpkt50MtP8q3xuh31yjq/Dhl1481ldFyA9gHfzkn CmBCP7JVw9HZua5u7yVTGDNPqjcHbCB5yPaoS2N+jqEU7bCBe0dSdveVaVXBRsMCn+ZO sA4MH3fvI43u/FdqtXJiKW8LQoa5/klXhH0ju6HXFyzogM6h0xL2cKhoJHpHgXDBfuKT u2uCM5MBoiiuik6fg+hzmJmiv6Edbc2GIdRkglf6OUgJPBy1JCmGRLlnV8bFKKaCuX9l 0AHPo6a0jNeylEXu+BmSquS9jO6kwPHF6y4MoojxcGokw+wOJwqaN6mfGcWTHZAd026q TmJA==
X-Gm-Message-State: ANhLgQ2jrSjpaGztGyX3o1GENU4eJVnrfxoFfuJWKGatYqKfaGVfqJOx Cd4sWjj7CjaG0pcBVRLOoTnJymRX3I8=
X-Google-Smtp-Source: ADFU+vsEx5jRLhvtLFWKWDdjKO1L/s7iYwZVD9Symeu4ZFp8pxmLOz+LMvF1nQMVwVDgcERN+sBVVw==
X-Received: by 2002:aa7:963d:: with SMTP id r29mr1093007pfg.87.1585107026705; Tue, 24 Mar 2020 20:30:26 -0700 (PDT)
Received: from [] ( []) by with ESMTPSA id l127sm1138968pga.94.2020. (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 24 Mar 2020 20:30:26 -0700 (PDT)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3608.\))
From: Hitoshi Asaeda <>
In-Reply-To: <>
Date: Wed, 25 Mar 2020 12:30:23 +0900
Cc: "" <>
Content-Transfer-Encoding: quoted-printable
Message-Id: <>
References: <> <> <>
To: Stig Venaas <>
X-Mailer: Apple Mail (2.3608.
Archived-At: <>
Subject: Re: [pim] Call for adoption: draft-venaas-pim-igmp-mld-extension
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Protocol Independent Multicast <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 25 Mar 2020 03:30:30 -0000

Hi Stig,

> On Mar 25, 2020, at 1:40, Stig Venaas <> wrote:
> Hi Hitoshi
> Appreciate your detailed response. Sorry for my slow reply. Please see inline.
> On Mon, Mar 16, 2020 at 7:25 PM Hitoshi Asaeda <> wrote:
>> Hi,
>> I like the idea and also wanted to add such optional fields in IGMPv3/MLDv2 that can be used for various purposes. The reasons why I hesitated to propose the additional optional fields in IGMPv3/MLDv2 are as follows;
>> This I-D says;
>>   The extension will be part of additional data as mentioned in
>>   [RFC3810] Section 5.1.12 (resp.  [RFC3376] Section 4.1.10) for query
>>   messages and [RFC3810] Section 5.2.12 (resp.  [RFC3376]
>>   Section 4.2.11) for report messages.
>> However, for example, sect.4.1.10 in rfc3376 says;
>>   If the Packet Length field in the IP header of a received Query
>>   indicates that there are additional octets of data present, beyond
>>   the fields described here, IGMPv3 implementations MUST include those
>>   octets in the computation to verify the received IGMP Checksum, but
>>   MUST otherwise ignore those additional octets.  When sending a Query,
>>   an IGMPv3 implementation MUST NOT include additional octets beyond
>>   the fields described here.
>> From this last sentence, I understand hosts accepts the longer IGMPv3 query (if the checksum is correct) but ignores the additional fields for the further processes. This may be Ok for existing (conventional) implementations as they simply ignore the additional fields, which they don't understand/proceed. However, you should investigate and mention the situations and conditions in which conventional hosts (that don't support this I-D) and new hosts (that support this I-D) exist in a LAN. Moreover, according to rfc3376, the new hosts that support this I-D must also support rfc3376, which seems a contradiction.
> This draft would update those RFCs, so that if you implement this
> draft you will consider the extension types. Otherwise you will ignore
> it as any current implementations of those RFCs would do. This is
> similar to when RFCs have reserved bits that MUST be ignored, but
> later new RFCs will update that.
> Generally if we add an extension, we cannot expect hosts to support
> it, or at least it might take years for implementations to add
> support, so we would always have to assume that the majority of hosts
> will simply ignore the extension. Due to this I don't foresee many
> extensions. Generally, we also need to worry about how snooping or
> proxying devices would handle it. While some of this need to be
> discussed in individual extension drafts, we should add general text
> discussing these issues in this draft.
> The one extension I'm proposing now is specific for BIER. It will only
> be used in BIER overlay, where support for the extension would be part
> of writing new code to support IGMP/MLD over BIER. Also, we need not
> worry about snooping/proxying.

It is better to consider other possible scenarios, not only BIER, as IGMP/MLD are the core protocols of every multicast service.

My concern is that the extension format defined in this draft will eliminate the chance of other flexible extensions. Although the specific router/host implementations would distinguish the extension based on the differentiated Extension Type value you defined, yet they cannot support multiple extension fields or other different/complex scenarios.
(BTW I wonder how multiple BFR-Prefix fields can be embedded without a length value while the figure allows the multiple BFR-Prefixes..)

I don't also want to make the extension complex, but encoding with TLV format is simple but flexible.

>> One more another thing is that since IGMP/MLD classifies their version by the packet length, we cannot propose IGMPv4/MLDv3 if you allow this variable length fields in IGMPv3/MLDv2.
>> If lucky this I-D is accepted, don't forget to refer Lightweight-IGMPv3/MLDv2 [RFC5790] as they also define the standard IGMPv3/MLDv2 formats.
> Right, agree. Defining extension types will make it easier to
> introduce IGMPv4/MLDv3 if we want to. If those were to be backwards
> compatible, they would I think add extra data in the "additional data"
> section, and we could define a type indicating IGMPv4/MLDv3 so that we
> can distinguish between those and other uses of additional data.

Right. Version number verification by packet length is embarrassing (and I was opposed it when IGMPv3 was specified, sigh), but using this extension may be only the way to distinguish the future v4/v3 protocols in keeping with the traditional way. Let's carefully define the last resort.

> In your follow-up email you suggest using TLVs rather than just a
> single extension. I also thought about this. We should definitely have
> a thorough discussion on this and update the draft to reflect the WG's
> decisions. I thought about this myself. I've been thinking that
> extensions will be rare so it may not be worth the complexity. On the
> other hand, if for instance we define another extension later and we
> want to use that with BIER, then it would be nice if one could add
> both extensions using TLVs. Alternatively we would maybe define a 3rd
> extension that can contain both. TLVs are of course fairly simple to
> handle, so the complexity isn't very big.

I don't recommend "another extension later" or "3rd extension" because TLV is simple enough and there is no reason to later consider the interoperability or compatibility between non-TLV extensions and TLV extensions.



> Thanks,
> Stig
>> Regards,
>> Hitoshi
>>> On Mar 17, 2020, at 8:38, Michael McBride <> wrote:
>>> Hope everyone is doing well hunkering down.
>>> Today begins a two week call for adoption for
>>> Please give it a read (just six pages) and let us know whether or not you support the adoption of this proposal for defining the extensions of IGMP/MLD using a new message type.
>>> Thanks,
>>> mike
>>> _______________________________________________
>>> pim mailing list
>> _______________________________________________
>> pim mailing list