Subject: [spring] Deborah Brungard's No Objection on draft-ietf-spring-segment-routing-mpls-19: (with COMMENT)

From: Deborah Brungard via Datatracker <[email-masked]>
Date: Wed, 10 Apr 2019 12:37:02 -0700

Deborah Brungard has entered the following ballot position for
draft-ietf-spring-segment-routing-mpls-19: 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-spring-segment-routing-mpls/

----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------

Noting Mirja's comment asking why is this not Informational, I agree with the
current track "PS" as it defines (using RFC2119 keywords) SR-MPLS procedures
for an MPLS dataplane.

Section 2
(my previous Discuss point)
- 1.    The text in Section 1 states “An implementation SHOULD
check that an IGP node-SID is not associated with a prefix that is owned by
more than one router within the same routing domain. If so, it SHOULD NOT use
this Node-SID, MAY use another one if available, and SHOULD log an error”.

Sasha suggested MAY/s/SHOULD or MUST,  saying MUST aligns with Section
3.2/RFC8402, which uses the wording "MUST NOT" be used by another router.

While the document was changed to "SHOULD",  my point was that I agreed with
Sasha on this, to align with RFC8402, it needs to be a "MUST".

Though reading later in RFC8402's Section 9 Manageability Considerations, I see
it uses a "SHOULD". So I'll defer to the authors/working group on their
preference.

On my previous Discuss, I asked how does an implementation "check"?
In RFC8402's Manageability Considerations, it says "In addition to the
allocation policy/tooling that the operator will have in place, an
implementation SHOULD protect the network in case of conflict detection by
providing a deterministic resolution approach." So while I prefer RFC8402's
more explicit operational guidance vs. "check", I'll defer to the authors. My
concern is not so much for MPLS operators, this is nothing new, but to say
something more accurate than "check" in an RFC.

Nit (overall)
I was surprised/disappointed there was no alignment on terminology with
RFC8402. For example, RFC8402 defines terms for SR MPLS, e.g. SR-MPLS, but this
document doesn't use any of RFC8402's defined MPLS terms.

Suggestion at minimum a fix for the Abstract:
Segment Routing (SR) leverages the source routing paradigm.
/s/
Segment Routing (SR) leverages the source routing paradigm as defined in
[RFC8402]. And: This document specifies the forwarding behavior to allow
instantiating SR over the MPLS dataplane. /s/ This document specifies the
forwarding behavior to allow instantiating SR over the MPLS dataplane (SR-MPLS).

Nit: Section 2
I had difficulty parsing the first bullet:
>From a control plane perspective, [RFC3031] does not mandate a single signaling
protocol.  Segment Routing makes use of various control plane protocols such as
link state IGPs [I-D.ietf-isis-segment-routing-extensions],
[I-D.ietf-ospf-segment-routing-extensions] and
[I-D.ietf-ospf-ospfv3-segment-routing-extensions]. The flooding mechanisms of
link state IGPs fits very well with label stacking on ingress. Future control
layer protocol and/or policy/configuration can be used to specify the label
stack. /suggest/ From a control plane perspective, [RFC3031] does not mandate a
single control protocol or use of a control protocol. Segment Routing makes use
of various control plane protocols such as link state IGPs
[I-D.ietf-isis-segment-routing-extensions],
[I-D.ietf-ospf-segment-routing-extensions] and
[I-D.ietf-ospf-ospfv3-segment-routing-extensions]. Future control layer
protocols are not precluded and/or management policy/configuration can be used
to specify the label stack.