Subject: [Idr] Martin Duke's No Objection on draft-ietf-idr-bgp-ls-segment-routing-msd-16: (with COMMENT)

From: Martin Duke via Datatracker <[email-masked]>
Date: Fri, 24 Apr 2020 09:54:52 -0700

Martin Duke has entered the following ballot position for
draft-ietf-idr-bgp-ls-segment-routing-msd-16: 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:
----------------------------------------------------------------------

This is not a DISCUSS-level concern, but I found it odd that the Node MSD TLV
must be the minimum of all configured interfaces without regard for the
presence of any Link MSD TLVs.

For example, if all node interfaces have an MSD of 20 except one with an MSD of
10, it would be much more compact to advertise a Node MSD of 20 and a single
Link MSD of 10. Section 5 says the Link MSD would take precedence, so there
would be no information loss. As I understand the spec, this would not be
allowed, and each link would have to be advertised separately to gain that
level of granularity.

If this is not the intent, then in Section 3, extending a sentence to say "Node
MSD is the smallest MSD supported by the node on the set of interfaces
configured for use, [excepting links advertised with their own Link MSD TLV]"
would avoid the problem.

---

From: Alvaro Retana <[email-masked]>
Date: Fri, 24 Apr 2020 11:55:01 -0700

On April 24, 2020 at 12:54:53 PM, Martin Duke wrote:

Martin:

Hi!

> For example, if all node interfaces have an MSD of 20 except one with an MSD
> of 10, it would be much more compact to advertise a Node MSD of 20 and a
> single Link MSD of 10. Section 5 says the Link MSD would take precedence, so
> there would be no information loss. As I understand the spec, this would not
> be allowed, and each link would have to be advertised separately to gain that
> level of granularity.
>
> If this is not the intent, then in Section 3, extending a sentence to say
> "Node MSD is the smallest MSD supported by the node on the set of interfaces

This could have been a good optimization.

However, this ship has sailed.  BGP-LS is a mechanism to carry
topology related information to a central controller.  This
information, as in this case, is obtained from the IGPs (OSPF or
IS-IS).  IOW, BGP-LS is simply carrying the same information that
IS-IS/OSPF generated...with the same semantics, which is what the
controller is expecting.  The corresponding IGP specifications
(rfc8491/rfc8476) contain the same language...if we change this
document then we would have to change the IGP documents...and all the
implementations. :-(

Thanks!

Alvaro.

---

From: Martin Duke <[email-masked]>
Date: Fri, 24 Apr 2020 12:16:26 -0700

Bummer! Thanks for the reply.

---

From: Jeff Tantsura <[email-masked]>
Date: Sat, 25 Apr 2020 15:36:52 -0700

Hi Martin,

Thanks for your comments.

Please note -  MSD value as such is opaque to the network carrying it and in no way influences routing decisions.
The end-goal is to provide this information to a controller that could use it to compute a path that could be instantiated on a node with particular HW contains.
In other words - the processing logic is really outside of IGP/BGP.

While RFC8491 has the following statement in the Node MSD section - "This value MUST represent the lowest value supported by any link configured for use by the advertising IS-IS instance”
it meant for the case where there is Node MSD only.

Later in the document, in the section "Procedures for Defining and Using Node and Link MSD Advertisements” it is stated:
"When Link MSD is present for a given MSD-Type, the value of the Link MSD MUST take precedence over the Node MSD”
and that addresses exactly your use case.

To summarize:
it is allowed to advertise both, Node MSD and Link MSDs from the same node
it is upto the path computational logic to decide how to use these values

Hope this clarifies.

Many thanks and have a great weekend!

Cheers,
Jeff
On Apr 24, 2020, 12:16 PM -0700, Martin Duke <[email-masked]>, wrote:
> > On Fri, Apr 24, 2020 at 11:55 AM Alvaro Retana <[email-masked]> wrote: