Hi Samuel,

Is it possible for the authors to share the diff of the proposed changes or
a pointer to github (if used)? You could also just post the update, as
well. The changes you proposed are split around and interrelated so looking
at them as a set will likely help us progress this discussion faster.

Also, available for a call, if that helps.

Thanks,
Ketan


On Thu, Apr 3, 2025 at 11:30 AM Samuel Sidor (ssidor) <ssi...@cisco.com>
wrote:

> Hi Ketan, Mike,
>
>
>
> Please see inline <S>.
>
>
>
> (Thanks a lot for review, Ketan)
>
>
>
> Regards,
>
> Samuel
>
>
>
> *From:* Ketan Talaulikar <ketant.i...@gmail.com>
> *Sent:* Wednesday, April 2, 2025 8:03 AM
> *To:* Mike Koldychev <mkold...@proton.me>
> *Cc:* The IESG <i...@ietf.org>;
> draft-ietf-pce-segment-routing-policy...@ietf.org; pce-cha...@ietf.org;
> pce@ietf.org
> *Subject:* Re: [Pce] Ketan Talaulikar's Discuss on
> draft-ietf-pce-segment-routing-policy-cp-25: (with DISCUSS and COMMENT)
>
>
>
> Hi Mike,
>
>
>
> Please check inline below for my responses with KT.
>
>
>
>
>
> On Tue, Apr 1, 2025 at 7:28 PM Mike Koldychev <mkold...@proton.me> wrote:
>
> Hi Ketan,
>
> Appreciate the useful feedback, please find my comments inline with
> <MK></MK>.
>
> Thanks,
> Mike.
>
>
> On Tuesday, April 1st, 2025 at 7:51 AM, Ketan Talaulikar via Datatracker <
> nore...@ietf.org> wrote:
>
> >
> >
> > Ketan Talaulikar has entered the following ballot position for
> > draft-ietf-pce-segment-routing-policy-cp-25: Discuss
> >
> > 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/about/groups/iesg/statements/handling-ballot-positions/
> > for more information about how to handle DISCUSS and COMMENT positions.
> >
> >
> > The document, along with other ballot positions, can be found here:
> >
> https://datatracker.ietf.org/doc/draft-ietf-pce-segment-routing-policy-cp/
> >
> >
> >
> > ----------------------------------------------------------------------
> > DISCUSS:
> > ----------------------------------------------------------------------
> >
> > Here are a couple of topics that need a discussion with the authors/WG:
> >
> > <discuss-1> Sections 3.1 and 3.2
> >
> >
> > I would like to discuss some of the normative text related to the
> handling
> > of identifiers in this section. I am also sharing some suggestions based
> on my
> > understanding - please correct me, if I am wrong.
> >
> > CURRENT
> > SR Policy Identifier MUST be the same for all SR Policy Candidate Paths
> in the
> > same SRPA.
> >
> > SUGGEST
> > LSPs that represent Candidate Paths within an SR Policy MUST carry the
> > same SR Policy Identifiers (carried in Extended Association ID TLV) in
> their
> > SRPA.
>
> <MK>
> "LSPs that represent Candidate Paths within an SR Policy" is a lot of
> words, the document already states that LSP represents the SR Candidate
> Path, I don't see a need to repeat that on every usage.
> </MK>
>
>
>
> KT> I beg to differ. Few extra words don't cost anything. Clarity in
> normative language is important. LSP is the "base" object in PCEP per my
> understanding and so the specification is clear when using that object as a
> reference. LSP represents a SR Policy CP, only when there is a valid SRPA
> associated with it.
>
>
>
> <S> Wouldn’t it be better to than rather add clarification in terminology
> section to clarify that LSPs represent Candidate Paths within an SR Policy
> and also that "LSP" used in this draft equivalent to an SRv6 path
> (represented as a list of SRv6
>
>    segments) if Path Setup Type is SRv6 (based on statement from RFC9603)?
> Then we don’t need to repeat that definition in multiple statements.
>
>
>
> For this one, we can then simplify to:
>
>
>
> Candidate Paths within an SR Policy MUST carry the same SR Policy
> Identifiers in their SRPA.
>
>
>
> (I removed part of Extended Association ID TLV as headend address is not
> encoded in that TLV)
>
>
>
>
> >
> > CURRENT
> > SR Policy Identifier MUST be constant for a given SR Policy Candidate
> Path for
> > the lifetime of the PCEP session.
> >
> > SUGGEST
> > LSPs that represent Candidate Paths within an SR Policy MUST NOT change
> their
> > SR Policy Identifiers for the lifetime of the LSP and the PCEP session.
> >
> > Reason: While the PCEP session is still open, LSPs cannot "move" from
> one SR
> > Policy to another. Right? However, is it OK to transition from not
> having an
> > SRPA to having one or vice versa?
>
> <MK>
> "MUST be constant" and "MUST NOT change" sounds the same to me.
>
>
>
> KT> Sure. However, the change is more than that - it uses the LSP object
> as the base/reference.
>
>
>
> <S> Can we apply same as described above – clarify in terminology and then
> use:
>
>
>
> Candidate Paths within an SR Policy MUST NOT change their SR Policy
> Identifiers.
>
> Or
>
> Candidate Paths within an SR Policy MUST NOT change their SR Policy
> Identifiers for the lifetime of the PCEP session.
>
>
>
> One of previous versions of the draft was using “lifetime of the LSP” and
> there were comments received that “lifetime” is not defined.
>
>
>
> Should be add "MUST be present" or something as well?
>
>
>
> KT> That was my question. It is up to the authors/WG to decide. If we say
> something along the lines of "SRPA MUST be present for all LSPs related to
> SR Policies", does that mean that error would get logged if any SR related
> encodings (e.g., SR EROs) are used with RFC8664 style when the SR
> Capability is supported by both PCEP speakers?
>
>
>
> <S> Yes, we have to add it, but “related to SR Policies” seems to be
> ambiguous. What about:
>
> “SRPA MUST be present for all SR Policy LSPs.” as “SR Policy LSP” is
> already defined in terminology as LSP with PST 1 or PST 3.
>
>
>
>
> I would further add here that this ID MUST be consistent among all the
> PCEP sessions. I.e., you cannot report different IDs in different PCEP
> sessions.
>
>
>
> KT> Sure. I agree.
>
> <S> Agreed, but it should apply only if ID is really reported - if no ID
> is reported to one session (e.g. because extension is not supported), but
> is reported to other one, then that should be considered as inconsistency.
>
>
>
> </MK>
>
> > CURRENT
> > SR Policy Identifier MUST be different for different SRPAs.
> >
> > What does this mean exactly? The SR Policy Indentifier is carried in the
> > Extended Association ID TLV and so it is part of the key of the
> Association
> > object. Isn't this obvious, can it be otherwise?
>
> <MK>
> It's basically saying "the SR Policy ID MUST be unique", we can remove if
> confusing.
> </MK>
>
>
>
> KT> Yes, please consider removing since it seemed superfluous to me -
> unless I am missing something.
>
> <S> Yes, we can remove.
>
>
> > CURRENT
> > If the identifier is inconsistent among Candidate Paths, changes during
> the
> > lifetime of the PCEP session, or is not unique across different SRPAs,
> the
> > receiving PCEP speaker MUST send a PCEP Error (PCErr) message ...
> >
> > I understand the part of changes (see my
> > suggestion above). But what is meant by "inconsistent" here? Also, I
> don't
> > understand the "not unique" part.
>
> <MK>
> I just meant this as a catch-all term for various corner cases.
>
>
> We can probably just say "If the above conditions are not satisfied, the
> receiving PCEP speaker MUST send a PCEP Error..."?
>
>
>
> KT> That would be ok by me. It made me wonder if "inconsistent" meant
> something else.
>
> <S> Ack, we can change it to statement suggested by Mike.
>
> </MK>
>
> >
> > Similar questions for the blob below in 3.2
> >
> > CURRENT
> > SR Policy Candidate Path Identifier MUST be constant for the lifetime of
> the
> > PCEP session. SR Policy Candidate Path Identifier MUST be different for
> > distinct Candidate Paths within the same SRPA. If SR Policy Candidate
> Path
> > Identifier changes during the lifetime of the PCEP session or is not
> unique
> > among distinct Candidate Paths, the PCEP speaker MUST send a PCErr
> message with
> > Error-Type = 26 "Association Error" and Error Value = 21 "SR Policy
> Candidate
> > Path Identifier Mismatch".
>
> <MK>
> This section is about a different field in the protocol, it's about the
> "SR Policy Candidate Path Identifier" instead of "SR Policy Identifier". We
> are just stating some basic rules about this key field. I don't find
> anything confusing/wrong here. Can you explain what your specific concern
> is about this paragraph?
> </MK>
>
>
>
> KT> Pretty much the same/similar things like we are discussing above for
> section 3.1 - whatever is the conclusion, similar updates may need to be
> applied to this section as well.
>
>
>
> <S> Ack, same can be applied to this section as well.
>
>
>
>
> >
> > <discuss-2> Section 4.2.2
> >
> >
> > CURRENT
> > Originator Address: Represented as a 128-bit value as specified in
> Section 2.4
> > of [RFC9256]. When sending a PCInitiate message, the PCE is acting as the
> > originator and therefore MUST set this to an address that it owns.
> >
> > Assume a dual/redundant PCE deployment. The use of MUST above will
> result in
> > double the number of LSPs at the PCC - one from each PCE. Is it possible
> to
> > use a common (anycast) IP address as the originator from each PCE while
> they
> > have their own/individual IP addresses for the session establishment?
> Perhaps
> > something to allow/enable as a configuration option? Is this something
> that
> > needs to be considered?
>
> <MK>
> We can think/discuss a bit more on this. Yes it can result in double the
> number of Candidate Paths in an SR Policy, but isn't that the point of
> redundancy?
>
>
>
> KT> PCEP has the redundancy model for RSVP-TE LSPs without requiring
> double the LSPs. So, why isn't the same possible for SR Policies?
>
>
>
> These are just entries in the PCC database, and PCC would choose one of
> these entries to actually carry the traffic.
>
>
>
> KT> If we follow the SR Policy Architecture (RFC9256), these duplicate CPs
> will find their way to the SRPM module (outside of the conceptual PCEP
> module). This may require the validation and path computation for double
> the LSPs.
>
>
>
> If one of the PCEs disconnects, the Candidate Paths that it owns can be
> wiped, but the redundant PCE's Candidate Paths would remain at the PCC,
> thus providing redundancy.
>
> But I do agree that MUST may be too limiting and can block future
> development of the protocol, we can change it to MAY to allow different
> redundancy models or perhaps a usecase that we didn't think of today.
>
>
>
> KT> Sounds good to me. I will leave the recommended way to the authors/WG
> - the point of this discussion was to check if the other option is not
> desired to be left open/available.
>
>
>
> <S> Ack, changing to MAY seems fine to me as well.
>
>
>
> </MK>
>
> >
> > ----------------------------------------------------------------------
> > COMMENT:
> > ----------------------------------------------------------------------
> >
> > I would also appreciate responses/updates for the following comments
> that are
> > inline in the idnits format output for the v24 of the document.
> >
> > 120 Path Computation Element Communication Protocol (PCEP) Extensions for
> > 121 Segment Routing [RFC8664] specifies extensions to the PCEP that allow
> > 122 a stateful Path Computation Element (PCE) to compute and initiate
> > 123 Traffic Engineering (TE) paths, as well as a Path Computation Client
> > 124 (PCC) to request a path subject to certain constraints and
> > 125 optimization criteria in SR networks. Although PCEP extensions
> > 126 introduced in [RFC8664] are defined for creation of SR-TE tunnels,
> >
> > <minor> I didn't find RFC8664 using the term "SR-TE tunnels". Instead,
> it uses
> >
> > the term "SR-TE paths".
> >
> > 127 these are not SR Policies and lack many important features described
> > 128 in [RFC9256].
>
>
>
> <S> We can change to SR-TE paths.
> >
> > <major> These "important features" are not listed in this document or
> anywhere
> >
> > else. It would be good to list at least some of them as a bullet list to
> guide
> > readers on features that would be missed by an implementation/deployment
> that
> > is only supporting RFC8664/RFC9603.
>
>
>
> <S> Ack, we can list some of them.
> >
> > <major> Are there any backwards compatibility considerations for these
> >
> > specifications as compared to RFC8664/9603? E.g., LSPs that were
> previously
> > reported without SRPA now start getting reported with the SRPA after a
> PCC
> > upgrade to a newer software version?
>
> <MK>
> I think we can say that it's not compatible with SR-TE Paths. I.e., you
> cannot have both versions running at the same time and when you upgrade you
> have to upgrade both PCC and PCE.
> </MK>
>
>
>
> KT> Please consider if there is a way to achieve the enablement of this
> feature without a large scale service impact - especially in a
> dual/redundant PCE deployment.
>
>
>
> <S> Do we really need to mention “when you upgrade you have to upgrade
> both PCC and PCE”? Isn’t that clear from capability handling anyway – if
> any of them does not support extension, then implementation cannot used
> SRPA (that is already clearly mentioned). So extension will be enabled only
> when both PCEP peers are upgraded.
>
>
>
>
> > 189 SR Policy LSP: An LSP set up using Path Setup Type [RFC8408] 1
> > 190 (Segment Routing) or 3 (SRv6).
> >
> > <major> The use of LSP (label switched path) for SRv6 sounds odd. I am
> aware
> >
> > that the term LSP in integral to PCEP though. However, some
> clarification for
> > the term as done in section 2 of RFC9603 would be helpful.
>
> <MK>
> Yes, the Label Switched Path is not really "Label Switched" and it's not
> even a "Path" (it can be multiple paths or even just a Color pointer). We
> can add a quick note, but would have been better in the PCEP SRv6
> document(s) instead.
> </MK>
>
>
>
> KT> It is already there in the PCEP SRv6 RFC9603 - I am simply suggesting
> to borrow the same text here as well.
>
>
>
> <S> Yes, we can add something similar to terminology:
>
>
>
> “Further, note that the term "LSP" used this draft would be equivalent to
> an SRv6 path (represented as a list of SRv6
>
>    segments) in the context of supporting SRv6 in PCEP.”
>
>
>
>
> > 192 SR Policy Association: A new association type used to group
> > 193 candidate paths belonging to same SR Policy. Depending on the
> > 194 discussion context, it can refer to the PCEP ASSOCIATION object of
> > 195 SR Policy type or to a group of LSPs that belong to the
> > 196 association.
> >
> > [minor] Suggest to add BGP-LS here with the reference to the base
> RFC9552 as
> > informational due to use in section 4.2.2. I also found IGP and ERO
> acronyms.
> >
> > 198 3. Overview
> >
> > <minor-editorial> This section talks about the use of SRPA and error
> handling
> >
> > while the SRPA is introduced in section 4. Could you please consider
> swapping
> > their order for better readability? OR moving the error handling portions
> > under the relevant sub-sections of section 4.
> >
> > 200 The SR Policy is represented by a new type of PCEP Association,
> > 201 called the SR Policy Association (SRPA) (see Section 4). The SR
> > 202 Candidate Paths of an SR Policy are the LSPs within the same SRPA.
> >
>
> <S> I assume that we don’t want to have “Overview” in the middle of the
> draft, so can we then just move 3.1/3.2/3.3 into section 4 then?
>
>
> > <major> The correct term is 'SR Policy Candidate Path' and not 'SR
> Candidate
> >
> > Path' per RFC9256. Please fix/correct in a few other places as well.
> >
> > 203 Encoding multiple Segment Lists within an SR Policy Candidate Path is
> > 204 described in [I-D.ietf-pce-multipath]. These considerations are not
> > 205 covered here.
>
>
>
> <S> Ack, we can change it.
> >
> > <minor> Perhaps ... The extensions in this document specify the encoding
> of a
> >
> > single segment list within an SR Policy Candidate Path. Encoding of
> multiple
> > segment lists is outside the scope of this document and specified in
> > [I-D.ietf-pce-multipath].
> >
> > 217 3.1. SR Policy Identifier
> >
> > 219 SR Policy Identifier uniquely identifies an SR Policy [RFC9256]
> > 220 within the network. SR Policy identifier is assigned by PCEP peer
> >
> > <major> s/network/SR domain
>
> <S> Ack.
> >
> >
> > 492 Discriminator: 32-bit value that encodes the Discriminator of the
> > 493 Candidate Path, as specified in Section 2.5 of [RFC9256]. This is
> > 494 the field that mainly distinguishes different SR Candidate Paths,
> > 495 coming from the same originator. It is allowed to be any number in
> > 496 the 32-bit range.
> >
> > <major> Perhaps ... it is a 32-bit unsigned integer value. This is also
> a more
> >
> > general comment applicable in other similar places.
>
>
>
> <S> Ack, we can change it.
> >
> > 552 5. SR Policy Signaling Extensions
> >
> > 554 This section introduces mechanisms that are described for SR Policies
> > 555 in [RFC9256] to PCEP, but which do not make use of the SRPA for
> > 556 signaling in PCEP. Since SRPA is not used, there needs to be a
> > 557 separate capability negotiation.
> >
> > <major> I found the above hard to parse. Is the intention here to state
> that
> >
> > since PCEP extensions for SR-TE path signaling have been around and
> these are
> > new extensions for SR Policy signaling (compliant to [RFC9256]), there
> is a
> > need to introduce capability negotiations?
>
> <MK>
> It's saying that there are some parts of this draft that don't use SRPA
> and therefore cannot rely on the PCEP Association capability negotiation
> (ASSOC-Type-List). So an additional capability negotiation mechanism is
> required.
> </MK>
>
>
>
> KT> OK. Please consider rephrasing for clarity - you could wordsmith my
> comment above.
>
>
>
> <S> What about just changing to:
>
> This section introduces mechanisms described that are described for SR
> Policies in [RFC9256]. These extensions do not make use of the SRPA for
> signaling in PCEP therefore cannot rely on the Association capability
> negotiation (ASSOC-Type-List) and separate capability negotiation is
> required.
>
>
> >
> > 626 5.2. Computation Priority TLV
> >
> > <minor-editorial> Suggest 5.2 to be LSP Object TLVs and for 5.2 through
> 5.4 to
> >
> > be indented under it. Or something similar, for clarity on the different
> types
> > of extensions.
>
> <MK>
> Yes, that would be good.
> </MK>
>
> <S> Ack.
>
> >
> > 628 The COMPUTATION-PRIORITY TLV (Figure 7) is an optional TLV for the
> > 629 LSP object. It is used to signal the numerical computation priority,
> > 630 as specified in Section 2.12 of [RFC9256]. If the TLV is absent from
> > 631 the LSP object and the P-flag in the SRPOLICY-CAPABILITY TLV is set
> > 632 to 1, a default Priority value of 128 is used.
> >
> > 634 0 1 2 3
> > 635 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
> > 636 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> > 637 | Type | Length |
> > 638 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> > 639 | Priority | Reserved |
> > 640 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> >
> > 642 Figure 7: COMPUTATION-PRIORITY TLV Format
> >
> > 644 Type: 68 for "COMPUTATION-PRIORITY" TLV.
> >
> > 646 Length: 4.
> >
> > 648 Priority: Numerical priority with which this LSP is to be recomputed
> > 649 by the PCE upon topology change. Lowest value is the highest
> > 650 priority.
> >
> > <major> I assume 8-bit unsigned integer values? Is zero allowed?
>
> <MK>
> We should add a pointer to rfc9256 Section 2.12, if not already done.
> </MK>
>
>
>
> KT> The reference is there in the section but not against the field. The
> convention in the document seems to be putting the reference for the fields
> as well, which is very clear.
>
>
>
> <S> We can clarify that it is 8-bit unsigned integer. Since 0 is valid
> value, then I don’t see reason for explicitly mentioning it.
>
>
>
> Thanks,
>
> Ketan
>
>
>
>
> >
> >
> > 652 Reserved: This field MUST be set to zero on transmission and MUST be
> > 653 ignored on receipt.
> >
> > 907 6.4. TE-PATH-BINDING TLV Flag field
> >
> > 909 An earlier version of this document added new bit within the "TE-
> > 910 PATH-BINDING TLV Flag field" registry of the "Path Computation
> > 911 Element Protocol (PCEP) Numbers" registry group, which was also early
> > 912 allocated by the IANA.
> >
> > 914 IANA is requested to cancel the early allocation made which is not
> > 915 needed anymore. As per the instructions from the chairs, please mark
> > 916 it as deprecated.
> >
> > <minor> Suggest .. IANA is requested to mark the bit position as
> deprecated
> >
>
> <S> Sure, I’m fine with that.
>
>
> > as follows:
> >
> > That said, I will leave it to the IANA team.
> >
> > 918 +------------+------------------------------------------+-----------+
> > 919 | Bit position | Description | Reference |
> > 920 +--------------+----------------------------------------+-----------+
> > 921 | 1 | Deprecated (Specified-BSID-only) | This.I-D |
> > 922 +--------------+----------------------------------------+-----------+
> >
> > 970 6.7. SR Policy Capability TLV Flag field
> >
> > 972 This document requests IANA to maintain a new registry under "Path
> > 973 Computation Element Protocol (PCEP) Numbers" registry group. The new
> > 974 registry is called "SR Policy Capability TLV Flag Field". New values
> > 975 are to be assigned by "IETF review" [RFC8126]. Each bit should be
> > 976 tracked with the following qualities:
> >
> > 978 * Bit (counting from bit 0 as the most significant bit).
> >
> > 980 * Description.
> >
> > 982 * Reference.
> >
> > <major> The section 5.1 has alphabetical identifiers for these bits.
> Strongly
> >
> > suggest to retain the same in the IANA table below in addition to the
> > description.
> >
> > 984
> +--------+-----------------------------------------------+-----------+
> > 985 | Bit | Description | Reference |
> > 986
> +--------+-----------------------------------------------+-----------+
> > 987 | 0 - 26 | Unassigned | This.I-D |
> > 988
> +--------+-----------------------------------------------+-----------+
> > 989 | 27 | Stateless Operation | This.I-D |
> > 990
> +--------+-----------------------------------------------+-----------+
> > 991 | 28 | Unassigned | This.I-D |
> > 992
> +--------+-----------------------------------------------+-----------+
> > 993 | 29 | Invalidation | This.I-D |
> > 994
> +--------+-----------------------------------------------+-----------+
> > 995 | 30 | Explicit NULL Label Policy | This.I-D |
> > 996
> +--------+-----------------------------------------------+-----------+
> > 997 | 31 | Computation Priority | This.I-D |
> > 998
> +--------+-----------------------------------------------+-----------+
> >
>
> <S> Sure, we can change it.
>
>
> > < EoR v24 >
> >
> >
> >
> >
> > _______________________________________________
> > Pce mailing list -- pce@ietf.org
> > To unsubscribe send an email to pce-le...@ietf.org
>
>
_______________________________________________
Pce mailing list -- pce@ietf.org
To unsubscribe send an email to pce-le...@ietf.org

Reply via email to