Re: [Pce] AD review of draft-ietf-pce-segment-routing-ipv6-20

Dhruv Dhody <dd@dhruvdhody.com> Wed, 31 January 2024 18:07 UTC

Return-Path: <dd@dhruvdhody.com>
X-Original-To: pce@ietfa.amsl.com
Delivered-To: pce@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 38D38C14F60D for <pce@ietfa.amsl.com>; Wed, 31 Jan 2024 10:07:21 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.904
X-Spam-Level:
X-Spam-Status: No, score=-1.904 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=dhruvdhody-com.20230601.gappssmtp.com
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 zX2qIGcERovH for <pce@ietfa.amsl.com>; Wed, 31 Jan 2024 10:07:17 -0800 (PST)
Received: from mail-oo1-xc2d.google.com (mail-oo1-xc2d.google.com [IPv6:2607:f8b0:4864:20::c2d]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 21BBFC14F681 for <pce@ietf.org>; Wed, 31 Jan 2024 10:07:11 -0800 (PST)
Received: by mail-oo1-xc2d.google.com with SMTP id 006d021491bc7-599f5e71d85so42355eaf.3 for <pce@ietf.org>; Wed, 31 Jan 2024 10:07:11 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dhruvdhody-com.20230601.gappssmtp.com; s=20230601; t=1706724430; x=1707329230; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=osjCcjoqc4z0uwiQnImNT8y9pCVJNxv0TqmjkihlhXE=; b=M0CSSLB0sCJjkl6ChZ/gMimIKGBeL+85yhk00vSOBs403DFDLw6yMhRLIHueqwWW/a fsPmr6s0o730rAIaUL8buA/zI9teZxm+MeB+TJirsj3CRuMNAolBsexovd4TdTxTsKSJ 5kpj6Ap3N23Sy3O1alAwskzw6lva4x6nSkLoNaGk9WSR2uv6mDIUUWrGVDhuQvnexZw0 1pTNzmDpl0eEtRnbU/ykyJTIO6cRPNz/Lh16hwdlGXNnnwtQg6Z5ZaBiAv74Es1f/X0a Ip7Yza+slzDsGxjEpYdwI+N2Cl10Z9EOEqjpI1R1NIJVhE+OVefL62gX+yxTPLJJOUeL SOAw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706724430; x=1707329230; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=osjCcjoqc4z0uwiQnImNT8y9pCVJNxv0TqmjkihlhXE=; b=lMhJ3VpPdxPBEcNOA/rWH6e0wHDxELJt1uBDFDXTo2NT1R3A3WancWtJqz1XcvSIb4 zdT5kx8pz69xZN3j71W+SUN+clg3y3XqmkA6mXdA/jdU9j8FOFq3fbj52nwXV7QKjupE by/nBfTLx+Td2Bj7sesjBfnLQImg5MidDKi4zSFncItNmQx3uaEQOFmBw05uidsRQBqA YCv/yLB/p6K1A3UrqYo09OtWjhveGPjGcjtEqkc7Dpl1KOLKGQ5Cov1g8zTJ6bAyfpQO 0tE1VIJoE7P1qQvc5COacLDlg5DcRgxUMWUzWHJ5W4bouQm80n5NyGb0HQ0CzVbGfpY0 fHqg==
X-Gm-Message-State: AOJu0Ywhh+5XeKi01GijCEPk4dAUT5BAucdVLSeDY0BNVwVi4pZFkwOP nm/8P6IzRv3udPUGT+S+xALyo7mUO0FO1SEcx1D0cajJCmN5ufm7UQEjDpY90EEl47se1zkxe7n y9ZaRviyjzea4wYGiAYnjaZyTcHS35Q1J8ReXag==
X-Google-Smtp-Source: AGHT+IGQ1lpfkzHNt0yniNCCYTeUr/rF1LGGlOUklKohWF7aaTVsz3kG+oUAerKLbb93ok4SFyDs59iovO55WL1laaE=
X-Received: by 2002:a4a:d132:0:b0:59a:6910:34e1 with SMTP id n18-20020a4ad132000000b0059a691034e1mr2468717oor.8.1706724429831; Wed, 31 Jan 2024 10:07:09 -0800 (PST)
MIME-Version: 1.0
References: <C0BD27CC-C794-4240-A9E5-DCFB1D526A51@juniper.net> <78d0701540a24c8b835a765b4a137777@huawei.com>
In-Reply-To: <78d0701540a24c8b835a765b4a137777@huawei.com>
From: Dhruv Dhody <dd@dhruvdhody.com>
Date: Wed, 31 Jan 2024 23:36:33 +0530
Message-ID: <CAP7zK5a19EAdqhLgQTX9ypf3JxMm-zKR0SV-T8TeyueVS0xOcQ@mail.gmail.com>
To: Cheng Li <c.l=40huawei.com@dmarc.ietf.org>
Cc: John Scudder <jgs@juniper.net>, "draft-ietf-pce-segment-routing-ipv6@ietf.org" <draft-ietf-pce-segment-routing-ipv6@ietf.org>, "pce@ietf.org" <pce@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000005eb8b2061041bff6"
Archived-At: <https://mailarchive.ietf.org/arch/msg/pce/u16QtsEGfjUbN1wDxdCVgspptmQ>
Subject: Re: [Pce] AD review of draft-ietf-pce-segment-routing-ipv6-20
X-BeenThere: pce@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Path Computation Element <pce.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/pce>, <mailto:pce-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/pce/>
List-Post: <mailto:pce@ietf.org>
List-Help: <mailto:pce-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pce>, <mailto:pce-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 31 Jan 2024 18:07:21 -0000

Hi Cheng,

In Section 9.2 (New SRv6-ERO NAI Type Registry) where you define a new
registry, please add -

The allocation policy for this new registry is by IETF Review [RFC8126].


Thanks!
Dhruv

On Wed, Jan 31, 2024 at 10:33 PM Cheng Li <c.l=40huawei.com@dmarc.ietf.org>
wrote:

> Hi John,
>
> Thank you so much for your comments, we think they are very helpful.
> We have modified the draft to address your comments accordingly, please
> review it again.
> If they can address your comments, we will update the draft very soon.
>
> Thanks,
> Cheng
>
>
>
> -----Original Message-----
> From: John Scudder <jgs@juniper.net>
> Sent: Thursday, January 25, 2024 12:49 AM
> To: draft-ietf-pce-segment-routing-ipv6@ietf.org
> Cc: pce@ietf.org
> Subject: AD review of draft-ietf-pce-segment-routing-ipv6-20
>
> Hi Authors, WG,
>
> Thanks for this document.
>
> I’ve supplied my questions and comments in the form of an edited copy of
> the draft. Minor editorial suggestions I’ve made in place without further
> comment, more substantive questions and comments are done in-line and
> prefixed with “jgs:”. You can use your favorite diff tool to review them;
> I’ve attached the iddiff output for your convenience if you’d like to use
> it. I’ve also pasted a traditional diff below in case you want to use it
> for in-line reply.
>
> One further point regarding “minor editorial suggestions”. While I did
> make a few, I didn’t do exhaustive copy-editing of this draft, and of
> course, the RFC Editor will do their usual comprehensive job. However, I
> did notice a pervasive need for a few particular kinds of changes (for
> example definite articles, agreement in number) that mar what’s otherwise a
> high-quality document and are likely to bother some reviewers. It’s
> optional, but it wouldn’t be a bad idea for you to pass the document
> through a grammar checker before we send it for IETF Review. Your call.
>
> Thanks,
>
> —John
>
> --- draft-ietf-pce-segment-routing-ipv6-20.txt  2024-01-24
> 14:39:13.000000000 -0500
> +++ draft-ietf-pce-segment-routing-ipv6-20-jgs-comments.txt     2024-01-24
> 18:40:57.000000000 -0500
> @@ -29,12 +29,15 @@
>     A Segment Routed Path can be derived from a variety of mechanisms,
>     including an IGP Shortest Path Tree (SPT), explicit configuration, or
>     a PCE.
> +--
> +jgs: I think it would be appropriate to expand PCE.
> +--
>
>     Since SR can be applied to both MPLS and IPv6 forwarding planes, a
> -   PCE should be able to compute SR-Path for both MPLS and IPv6
> +   PCE should be able to compute an SR path for both MPLS and IPv6
>     forwarding planes.  The PCEP extension and mechanisms to support SR-
>     MPLS have been defined.  This document describes the extensions
> -   required for SR support for IPv6 data plane in the Path Computation
> +   required for SR support for the IPv6 data plane in the Path
> + Computation
>     Element communication Protocol (PCEP).
>
>  Status of This Memo
> @@ -151,7 +154,7 @@
>     [RFC8754].
>
>     An SR path can be derived from an IGP Shortest Path Tree (SPT), but
> -   SR-TE (Segment Routing Traffic Engineering) paths may not follow IGP
> +   SR-TE (Segment Routing Traffic Engineering) paths might not follow
> + IGP
>     SPT.  Such paths may be chosen by a suitable network planning tool,
>     or a PCE and provisioned on the ingress node.
>
> @@ -186,7 +189,7 @@
>     stateful PCE for computing one or more SR-TE paths taking into
>     account various constraints and objective functions.  Once a path is
>     chosen, the stateful PCE can initiate an SR-TE path on a PCC using
> -   PCEP extensions specified in [RFC8281] using the SR specific PCEP
> +   PCEP extensions specified in [RFC8281] and the SR-specific PCEP
>     extensions specified in [RFC8664].  [RFC8664] specifies PCEP
>     extensions for supporting a SR-TE LSP for the MPLS data plane.  This
>     document extends [RFC8664] to support SR for the IPv6 data plane.
> @@ -228,6 +231,16 @@
>
>     The message formats in this document are specified using Routing
>     Backus-Naur Format (RBNF) encoding as specified in [RFC5511].
> +--
> +jgs: as far as I can tell, no they are not. Either remove this
> +paragraph, and the normative reference, or help me understand why I am
> +wrong.
> +
> +Speaking of RBNF, the fact this spec doesn't use it seems to put it out
> +of step with some of the other PCE document set. I'm assuming it's the
> +consensus of the WG that this is fine. (I don't have a problem with the
> +style used here.)
> +--
>
>     Further, following terms are used in the document,
>
> @@ -240,6 +253,11 @@
>     SID:  Segment Identifier.
>
>     SRv6:  Segment Routing for IPv6 forwarding plane.
> +--
> +jgs: in the introduction you expanded this as "Segment Routing over
> +IPv6 data plane", which seems like a better expansion to me. But either
> +way, please pick one and stick with it.
> +--
>
>     SRH:  IPv6 Segment Routing Header.
>
> @@ -255,6 +273,14 @@
>     Basic operations for PCEP speakers are as per [RFC8664].  SRv6 Paths
>     computed by a PCE can be represented as an ordered list of SRv6
>     segments of 128-bit value.
> +--
> +jgs: probably just "128 bit SRv6 segments", or if you feel that's not
> +explicit enough, "SRv6 segments, each of which is 128 bits in length."
> +(The problem with the current version is that first, 128 bits is the
> +length of the segment, not the value of it, and second, there's
> +possible ambiguity as to whether 128 bits is the length of the list, or
> +the length of each individual segment.)
> +--
>
>     [RFC8664] defined a new Explicit Route Object (ERO) subobject denoted
>     by "SR-ERO subobject" capable of carrying a SID as well as the @@
> -271,6 +297,16 @@
>
>     This document defines new subobjects "SRv6-ERO" and "SRv6-RRO" in the
>     ERO and the RRO respectively to carry the SRv6 SID (IPv6 Address).
> +--
> +jgs: it's not at all clear to me that it's formally correct to say an
> +SRv6 SID is the same as an IPv6 address; for example, the abstract of
> +draft-ietf-6man-sids-05 tells me that "Segment Identifiers (SIDs) used
> +by SRv6 *can resemble* IPv6 addresses and behave like them while
> +exhibiting *slightly different* behaviors in some situations" (my
> +emphasis).
> +
> +Probably the best fix is just to remove the text inside the parentheses.
> +--
>     SRv6-capable PCEP speakers MUST be able to generate and/or process
>     these subobjects.
>
> @@ -304,6 +340,15 @@
>     necessary information to guide the packets from the ingress node to
>     the egress node of the path, and hence there is no need for any
>     signaling protocol.
> +--
> +jgs: that last clause can't possibly be right as written. SR networks
> +aren't completely devoid of any and all signaling... consider that PCEP
> +itself is a signaling protocol of sorts. While it would be possible to
> +expand and rewrite the clause more precisely to be formally correct, I
> +think the easiest fix is just to delete it, since it's not directly
> +relevant to the subject at hand. (I see this language may have been
> +inherited from RFC 8664; I think it's wrong there too.)
> +--
>
>     For the use of an IPv6 control plane but an MPLS data plane,
>     mechanism remains the same as specified in [RFC8664].
> @@ -412,6 +457,10 @@
>           SRv6-SID.
>
>        -  Unassigned bits MUST be set to 0 and ignored on receipt.
> +--
> +jgs: I think this should be "set to 0 on transmission and ignored on
> +receipt", right?
> +--
>
>        A pair of (MSD-Type, MSD-Value): Where MSD-Type (1 octet) is as
>        per the IGP MSD Type registry created by [RFC8491] and populated @@
> -426,12 +475,29 @@
>     to ensure those midpoints are able to correctly process their
>     segments and for the tailend to dispose of the SRv6 encapsulation.
>     The SRv6 MSD capabilities of these other nodes MAY be learned as part
> +--
> +jgs: The above RFC 2119 style "MAY" should probably be "may", or better
> +still "might", I don't think you're stating a requirement here (or in
> +this case, since "MAY", a non-requirement). I assume you'd take the
> +position that it's beyond the scope of this specification to say how
> +the capabilities of the other nodes have to be learned.
> +--
>     of the topology information via IGP/BGP-LS or via PCEP if the PCE
>     also happens to have PCEP sessions to those nodes.
> +--
> +jgs: you need a reference for BGP-LS.
> +--
>
>     It is RECOMMENDED that the SRv6 MSD information be not included in
>     the SRv6-PCE-Capability sub-TLV in deployments where the PCE is able
>     to obtain this via IGP/BGP-LS as part of the topology information.
> +--
> +jgs: By using the RFC 2119 style "RECOMMENDED" you're making this an
> +almost-MUST. Do you intend that? If so, please consider providing
> +guidance as to when the requirement can be disregarded.
> +
> +But I think probably you mean "recommended".
> +--
>
>  4.2.  The RP/SRP Object
>
> @@ -478,6 +544,12 @@
>        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>
>                      Figure 2: SRv6-ERO Subobject Format
> +--
> +jgs: the fields marked "optional" aren't really completely optional,
> +are they? I'm not aware of a totally standard pattern for this kind of
> +field, but I have seen the term "conditional" used in such a context,
> +or even "conditional, see below".
> +--
>
>     The fields in the SRv6-ERO subobject are as follows:
>
> @@ -511,6 +583,13 @@
>     below) then the NT field has no meaning and MUST be ignored by the
>     receiver.  This document reuses NT types defined in [RFC8664], but
>     assigns them new meanings appropriate to SRv6.
> +--
> +jgs: I feel very uncomfortable about being told that you're using an
> +existing registry, but assigning different semantics to
> +already-allocated code points. I think the most straightforward fix to
> +this would be to create a new "PCEP SRv6-ERO NAI Types" registry,
> +populated with values 0, 2, 4 and 6, defined however you like.
> +--
>
>        If NT value is 0, the NAI MUST NOT be included.
>
> @@ -531,6 +610,11 @@
>        identify the IPv6 Adjacency and used with the SRv6 Adj-SID.
>
>        SR-MPLS specific NT types are not valid in SRv6-ERO.
> +--
> +jgs: if you take my suggestion of creating a new registry, the above
> +line becomes unnecessary. There would be no SR-MPLS specific NT types
> +in your new registry.
> +--
>
>     Flags: Used to carry additional information pertaining to the
>     SRv6-SID.  This document defines the following flag bits.  The other
> @@ -575,9 +659,23 @@
>     is recommended to signal it always if possible.  It could be used for
>     maintainability and diagnostic purpose.  If behavior is not known,
>     the opaque value '0xFFFF' is used [RFC8986].
> +--
> +jgs: please be explicit that the behavior values are taken from the
> +registry "SRv6 Endpoint Behaviors".
> +
> +It sure seems strange to me to choose to use a reserved value called
> +"opaque" to signal "behavior not known" instead of having a registered
> +value called "behavior not known". But, it's probably too late to
> +change this now.
> +--
>
>     SRv6 SID: SRv6 Identifier is an 128-bit IPv6 address representing the
>     SRv6 segment.
> +--
> +jgs: but is it in fact an address? See my comment with reference to
> +draft-ietf-6man-sids-05 earlier on. An easy fix would be to replace
> +"IPv6 address" with "value".
> +--
>
>     NAI: The NAI associated with the SRv6-SID.  The NAI's format depends
>     on the value in the NT field, and is described in [RFC8664].
> @@ -650,7 +748,7 @@
>     validation of SRv6 SIDs being instantiated in the network and checked
>     for conformance to the SRv6 SID allocation scheme chosen by the
>     operator as described in Section 3.2 of [RFC8986].  In the future,
> -   PCE can also be utilized to verify and automate the security of the
> +   PCE might also be utilized to verify and automate the security of
> + the
>     SRv6 domain by provisioning filtering rules at the domain boundaries
>     as described in Section 5 of [RFC8754].  The details of these
>     potential applications are outside the scope of this document.
> @@ -811,7 +909,7 @@
>  5.2.1.  SRv6 ERO Validation
>
>     If a PCC does not support the SRv6 PCE Capability and thus cannot
> -   recognize the SRv6-ERO or SRv6-RRO subobjects.  It should respond
> +   recognize the SRv6-ERO or SRv6-RRO subobjects, it should respond
>     according to the rules for a malformed object as described in
>     [RFC5440].
>
> @@ -832,6 +930,11 @@
>        MUST be 48, otherwise the Length MUST be 64.
>
>     *  NT types (1,3, and 5) are not valid for SRv6.
> +--
> +jgs: If you take my suggestion to set up a separate registry, you won't
> +need the above bullet, because NT types 1, 3, and 5 won't exist in that
> +registry.
> +--
>
>     *  If T bit is 1, then S bit MUST be zero.
>
> @@ -963,10 +1066,15 @@
>  7.2.  Information and Data Models
>
>     The PCEP YANG module is out of the scope of this document and defined
> -   in other drafts.  An augmented YANG module for SRv6 is also specified
> -   in another draft that allows for SRv6 capability and MSD
> +   in other documents.  An augmented YANG module for SRv6 is also
> specified
> +   in another document that allows for SRv6 capability and MSD
>     configurations as well as to monitor the SRv6 paths set in the
>     network.
> +--
> +jgs: please provide informative references to the "other documents" and
> +"another document" (which I've edited from "other drafts" and "another
> +draft").
> +--
>
>  7.3.  Liveness Detection and Monitoring
>
>
>
> _______________________________________________
> Pce mailing list
> Pce@ietf.org
> https://www.ietf.org/mailman/listinfo/pce
>