Re: [GROW] Comment on draft-ietf-grow-bmp-tlv

Paolo Lucente <paolo@ntt.net> Wed, 10 January 2024 22:30 UTC

Return-Path: <paolo@ntt.net>
X-Original-To: grow@ietfa.amsl.com
Delivered-To: grow@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 659D6C14F5F5 for <grow@ietfa.amsl.com>; Wed, 10 Jan 2024 14:30:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level:
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5BP8dzguapD9 for <grow@ietfa.amsl.com>; Wed, 10 Jan 2024 14:30:16 -0800 (PST)
Received: from mail4.dllstx09.us.to.gin.ntt.net (mail4.dllstx09.us.to.gin.ntt.net [IPv6:2001:418:3ff:5::192:26]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 274C2C14F602 for <grow@ietf.org>; Wed, 10 Jan 2024 14:30:05 -0800 (PST)
Received: from [IPV6:2001:418:1401:10::1028] (unknown [IPv6:2001:418:1401:10::1028]) by mail4.dllstx09.us.to.gin.ntt.net (Postfix) with ESMTPSA id 7666CEE0184; Wed, 10 Jan 2024 22:30:03 +0000 (UTC)
Message-ID: <2dc1b434-f946-47d6-ba28-e7352c434bf7@ntt.net>
Date: Wed, 10 Jan 2024 23:30:02 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Paolo Lucente <paolo@ntt.net>
To: "Dhananjay Patki (dhpatki)" <dhpatki@cisco.com>, "guyunan@huawei.com" <guyunan@huawei.com>, "grow@ietf.org" <grow@ietf.org>
References: <DM8PR11MB5637C2971B39A45877C71740AB692@DM8PR11MB5637.namprd11.prod.outlook.com>
Content-Language: en-US
In-Reply-To: <DM8PR11MB5637C2971B39A45877C71740AB692@DM8PR11MB5637.namprd11.prod.outlook.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/grow/3eAKpY4fgyU9BbAg3NeZsMBimEc>
Subject: Re: [GROW] Comment on draft-ietf-grow-bmp-tlv
X-BeenThere: grow@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Grow Working Group Mailing List <grow.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/grow>, <mailto:grow-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/grow/>
List-Post: <mailto:grow@ietf.org>
List-Help: <mailto:grow-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/grow>, <mailto:grow-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Jan 2024 22:30:18 -0000

Hi Dhananjay,

Thanks very much for your feedback, let me address it in-line:

On 10/1/24 12:05, Dhananjay Patki (dhpatki) wrote:
> 
> 1. It would help to introduce the format of Group TLV in Section 4.2.1; 
> just like how the format of the indexed TLV is introduced in Section 3. 
> Currently, group_index is learnt only from the example in section 4.2.1.1.

Ack, will do!


> 2. In a group TLV, ‘index’ and ‘group_index’ are 2 different fields. 
> ‘index’ is redundant (always set to 0). Index=0 means that the TLV 
> applies to all NLRIs which is not true in case of Group TLV.
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
>        |            type=TBD2            |         length=0x000a       |
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
> *      |             index=0             |      group_index=0x000c     |*
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
>        |                  value={0x0004,   0x0005,                     |
> 
>        |                         0x0006} |
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
> This could be avoided by using the index space itself for group_index, 
> but differentiated using a bit called ‘G bit’. This bit, when set, would 
> mean that the index is a group index.
> 
> Format:
> 
>        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
>        |        Type (2 octets)        |     Length (2 octets)         |
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
> *      |G|      Index (15 bits)        |*
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
>        ~                      Value (variable)                         ~
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
> Example:
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
>        |            type=TBD2            |         length=0x000a       |
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
> *      |1|         index=0x000c          |*
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> 
>        |                  value={0x0004,   0x0005,                     |
> 
>        |                         0x0006} |
> 
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

At the last meeting in Prague, I did end up discussing with a couple of 
people in the hallway precisely this! Without a Group Bit / G-bit one 
would need to know upfront how many items are going to be packed in the 
message before assigning the index to the Group; it would be much more 
helpful to have a separate count for groups, precisely using a G-bit.

So consider the above being on my todo list and coming up in the next 
revision of the draft; i will work on the text for the new revision next 
week.

Agree also that the first index set to zero is redundant. Defining the 
Group Index satisfies the constraint expressed before in the document 
where every TLV in a Route Monitoring message should be indexed.


> 3. Section 4.2.1 says “One or more 2 bytes indexes ..”. Shouldn’t this 
> be “Two or more 2 byte indexes ..”? If the TLV pertains to a single 
> NLRI, Group TLV is not necessary.

Valid point, indeed, i will fix that.

Paolo