Re: [Idr] Benjamin Kaduk's No Objection on draft-ietf-idr-bgp-ls-segment-routing-msd-17: (with COMMENT)

Benjamin Kaduk <kaduk@mit.edu> Wed, 06 May 2020 17:56 UTC

Return-Path: <kaduk@mit.edu>
X-Original-To: idr@ietfa.amsl.com
Delivered-To: idr@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 654083A096A; Wed, 6 May 2020 10:56:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Ng-28qfO0Et7; Wed, 6 May 2020 10:56:10 -0700 (PDT)
Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 284323A098C; Wed, 6 May 2020 10:56:08 -0700 (PDT)
Received: from kduck.mit.edu ([24.16.140.251]) (authenticated bits=56) (User authenticated as kaduk@ATHENA.MIT.EDU) by outgoing.mit.edu (8.14.7/8.12.4) with ESMTP id 046Hu3nd025966 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 6 May 2020 13:56:05 -0400
Date: Wed, 6 May 2020 10:56:02 -0700
From: Benjamin Kaduk <kaduk@mit.edu>
To: Jeff Tantsura <jefftant.ietf@gmail.com>
Cc: The IESG <iesg@ietf.org>, draft-ietf-idr-bgp-ls-segment-routing-msd@ietf.org, idr-chairs@ietf.org, idr@ietf.org, Susan Hares <shares@ndzh.com>, aretana.ietf@gmail.com
Message-ID: <20200506175602.GG27494@kduck.mit.edu>
References: <158862918074.23288.8494237048042781894@ietfa.amsl.com> <7534cbdd-a370-4d40-b49e-a30158d46a44@Spark>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <7534cbdd-a370-4d40-b49e-a30158d46a44@Spark>
User-Agent: Mutt/1.12.1 (2019-06-15)
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/NQGgh1JKA2mlgm85q8JPawz8Fts>
Subject: Re: [Idr] Benjamin Kaduk's No Objection on draft-ietf-idr-bgp-ls-segment-routing-msd-17: (with COMMENT)
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Inter-Domain Routing <idr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/idr>, <mailto:idr-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/idr/>
List-Post: <mailto:idr@ietf.org>
List-Help: <mailto:idr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 06 May 2020 17:56:19 -0000

Hi Jeff,

Also inline.

On Mon, May 04, 2020 at 03:38:24PM -0700, Jeff Tantsura wrote:
> Hi Ben,
> 
> Many thanks for your comments!
> Please see inline
> 
> Cheers,
> Jeff
> On May 4, 2020, 2:53 PM -0700, Benjamin Kaduk via Datatracker <noreply@ietf.org>rg>, wrote:
> > Benjamin Kaduk has entered the following ballot position for
> > draft-ietf-idr-bgp-ls-segment-routing-msd-17: No Objection
> >
> > When responding, please keep the subject line intact and reply to all
> > email addresses included in the To and CC lines. (Feel free to cut this
> > introductory paragraph, however.)
> >
> >
> > Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html
> > for more information about IESG DISCUSS and COMMENT positions.
> >
> >
> > The document, along with other ballot positions, can be found here:
> > https://datatracker.ietf.org/doc/draft-ietf-idr-bgp-ls-segment-routing-msd/
> >
> >
> >
> > ----------------------------------------------------------------------
> > COMMENT:
> > ----------------------------------------------------------------------
> >
> > Not a whole lot of interesting comments on this one; it seems like a
> > pretty straightforward codepoint allocation with relevant (security and
> > other) considerations covered in other documents. I do appreciate the
> > discussion in the security considerations section; it looks good.
> > [jeff] thank you!
> >
> > This document talks about the MSD as being the depth of a stack that a
> > given node can "impose". Is there a similar consideration (or protocol
> > element) for what a given node can read/process? (I think I remember
> > such a document going by, but don't have enough keywords to search for
> > it efficiently.)
> >
> > [jeff] The drafts talking about Readable Label Stack Deepth Capability (RLSDC) are
> > draft-ietf-isis-mpls-elc/draft-ietf-ospf-mpls-elc (subcase in RFC8662)

Ah, thanks for the pointer!

> > Is there a specific error-handling behavior to use when a Node MSD TLV
> > is received with a value larger than the value of a Link MSD TLV
> > associated with that node (for the same MSD-type)? Is that one of the
> > things "left to the consumer of the BGP-LS information" by Sectoin 7?
> >
> > [jeff] the rule is that most specific (Link MSD) always wins,
> > e.g if there’s a Node MSD of 5 and Link MSD of 3 for interface-3 and a router with 3 interfaces -
> > interface-1 and interface-2 will use the value signaled through Node MSD (5), while interface-3 would use the value from Link MSD
> > In general - the logic is indeed left to the consumer of this information. Advertising different values in Node and Link MSD is not an error.

It sounds like you are intending this to work the way that I was hoping it
would work, which is reassuring.  That said (and this relates to a later
comment as well), I think we may want to double-check the wording in one
spot: in Section 3 we define the "Node MSD is the smallest MSD supported by
the node on the set of interfaces configured for use."  This definition
seems to disallow advertising a Node MSD that is larger than any specific
Link MSD for that node.  My question here was about whether a receiving
node was expected to enforce this (surprising) aspect of the definition.
If, instead, the definition should be changed to say only that the Node MSD
is the MSD to be used for interfaces on this node in the absence of an
interface-specific value, then there is no longer any enforcement needed.

> >
> > Section 1
> >
> > In the future, it is expected that new MSD-Types will be defined to
> > signal additional capabilities, e.g., ELs, SIDs that can be imposed
> > through recirculation, or SIDs associated with another data plane
> > such as IPv6. MSD advertisements may be useful even if SR itself is
> > not enabled. For example, in a non-SR MPLS network, MSD defines the
> > maximum label depth.
> >
> > It's slightly interesting that we still call it "MSD" even though there
> > are potential uses in a broader scope. Perhaps just a historical legacy
> > and we need to remain consistent with the name in common use...
> > Though, perhaps the terminology section in this document does not need
> > to be quite so constrained by the past.
> >
> > [jeff] we have adopted all new use cases to refer to MSD, so far works OK.
> > Indeed, there’s quite some history
> >
> > Section 3
> >
> > identified by the corresponding Router-ID. Node MSD is the smallest
> > MSD supported by the node on the set of interfaces configured for
> > use. MSD values may be learned via a hardware API or may be
> >
> > It is a shame that the semantics are already locked in (as was noted by
> > a previous review that I can't find right now?) and the efficient
> > encoding of "large per-node value with smaller per-link values for
> > exceptions" is not admissible.
> >
> > [jeff] please see my response to Martin - https://mailarchive.ietf.org/arch/msg/idr/ngvWcLl8OZqdrsWDtFmHA7cbiGs/

(This is the comment I referred to above.  If this usage is intended to be
allowed then I think the Node MSD TLV definition should be updated.)

> > Section 5
> >
> > MSD-type is not supported. The correct interpretation MUST be
> > specified when an MSD-type is defined in [RFC8491].
> >
> > Is this "is defined in the registry defined in [RFC8491]" or "is defined
> > according to the procedures in [RFC8491]" or something else? The
> > current text doesn't scan properly, as it implies that a future new
> > MSD-type will be defined in RFC 8491, an immutable document.
> >
> > [jeff] This doesn’t read correct, thanks!
> > RFC8491 states: "The correct interpretation MUST be specified when an MSD-Type is defined"
> > The correct interpretation MUST be specified when an MSD-type is defined, as described in [RFC8491] seems like a better text, would that be OK?

I agree, that should work.

> >
> > Section 7
> >
> > Specifically, the malformed attribute tests for syntactic checks in
> > the Fault Management section of [RFC7752] now encompass the new BGP-
> > LS Attribute TLVs defined in this document. [...]
> >
> > Interestingly, the referenced section of 7752 does not seem to
> > explicitly say that other invariant properties of TLV lengths (e.g.,
> > that they must be a multiple of 2 as for the ones defined by this
> > document) should be checked.
> >
> > [jeff] RFC7752 is being updated as we speak (draft-ietf-idr-rfc7752bis), would a good addition.
> > IDR WG is CCed in this email.

Following the link from Ketan's follow-up, it looks like the rule "Is the
length of the TLVs and, when the TLV is recognized then, its sub-TLVs in
the NLRI valid?" will cover this case; I'm glad to see it!

> > [RFC7752]. The MSD information introduced in BGP-LS by this
> > specification, may be used by BGP-LS consumer applications like a SR
> > path computation engine (PCE) to learn the SR SID stack handling
> >
> > https://www.rfc-editor.org/materials/abbrev.expansion.txt lists "PCE" as
> > having a well-known expansion to "Path Computation Element" (not
> > "engine") that can be used directly in abbreviated form without any
> > expansion given.
> >
> > [jeff]ack, this is a typo, thanks and changed
> >
> > Section 8
> >
> > issues when propagating the TLVs into BGP-LS. The advertisement of
> > the node and link attribute information defined in this document
> > presents no additional risk beyond that associated with the existing
> > node and link attribute information already supported in [RFC7752].
> >
> > I'd suggest hedging to "no significant additional risk", though I do not
> > have an example of additional marginal risk at hand.
> > [jeff] ack, added

Thanks for the updates,

Ben