A few more comments on this draft.
1. Section 4.2: Instead of ‘set to one’ it should say ‘set to 1’. 1. Section 4.3: E bit set to value 0 must be shown in figure 4. E bit is mandatory in every TLV. 1. Section 4.4: G bit must be shown in figure 5. 1. Since we may have grouped and non-grouped TLVs, specifying index = 0 to imply that the TLV applies to all NLRIs of the PDU is kind of redundant. An indexed TLV with index = 0 is as good as a non-indexed TLV. In that case, we may as well omit the index if its value is going to be 0. 1. The draft says ‘A Group TLV MUST NOT include its own or another Group Index.’ Does it mean that nested groups are not allowed? 1. In Appendix A, in Figure 6, all TLVs must show E bit set to 0. 1. Section 4.3 states ‘The reported length in indexed TLVs refers to the total encoded TLV value (ie. with the length of the index field excluded).’. Should we include the ‘I flag’ (as mentioned in my previous mail below) that specifies if it is an index TLV vs non-Indexed TLV, then the TLV length should include the length of the index field. 1. Figure 6 shows NLRI indexes from 1 to 10 and then group indexed 0x000b and 0x000c. That is the group indexes start at one more than the last NLRI index. Is that necessary? Can the group indexes also not start from 1? Since we anyway have the G bit, we know that it’s a group index and not an NLRI index. 1. I think the title of this draft should be ‘BMP Version 4: TLV Support for all BGP Monitoring Protocol (BMP) Messages’. Though in this draft the TLV support is being added only for Route Monitoring and Peer Down (which the abstract mentions anyway), the highlight of this version is TLV support for all BMP message types. -- Regards, Dhananjay From: Dhananjay Patki (dhpatki) <[email protected]> Date: Friday, 31 October 2025 at 11:42 PM To: [email protected] <[email protected]> Cc: [email protected] <[email protected]> Subject: [GROW] Comment on draft-ietf-grow-bmp-tlv Hi Paolo, Yunan, It looks like we can have a combination indexed TLVs and non-indexed TLVs in the BMP messages. While this draft defined indexed TLVs, we may still have TLVs that need not be indexed as they won’t be per NLRI or NLRI group. Non-indexed (Figure 1): 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |E| Type | Length (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Value (variable) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Indexed (Figure 4): NOTE: This figure in the draft does not show the E bit. But it should show as I have shown below. Also, the length of Type should be 15 bits and not 2 octets. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |E| Type (2 octets) | Length (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |G| Index (15 bits) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Value (variable) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ In order to be able to parse them separately, we need something like ‘I bit’ shown below that indicates whether this is an indexed TLV or non-indexed TLV? 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |E|I| Type (14 bits) | Length (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |G| Index (15 bits) | <-- Included based on the value of I bit +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Value (variable) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ If I = 0, the TLV won’t have 2 octets of G bit+Index If I = 1, the TLV will have 2 octets of G bit+index -- Regards, Dhananjay
_______________________________________________ GROW mailing list -- [email protected] To unsubscribe send an email to [email protected]
