Dear Quan,
Thanks for your patience. Here’s my review of your document. For the most part
I have just made small style and grammar suggestions. I do have one larger
substantive comment that may need further discussion, as well as a change to
the IANA section I’ve flagged but which I’m guessing won’t need further
discussion.
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. I’d
appreciate feedback regarding whether you found this a useful way to receive my
comments as compared to a more traditional numbered list of comments with
selective quotation from the draft.
Thanks,
—John
--- draft-ietf-pce-lsp-extended-flags-04.txt 2022-09-20 18:56:37.000000000
-0400
+++ draft-ietf-pce-lsp-extended-flags-04-jgs-comments.txt 2022-09-23
17:16:30.000000000 -0400
@@ -8,7 +8,7 @@
Expires: 18 March 2023
- Label Switched Path (LSP) Object Flag Extension of Stateful PCE
+ Label Switched Path (LSP) Object Flag Extension for Stateful PCE
draft-ietf-pce-lsp-extended-flags-04
Abstract
@@ -16,7 +16,7 @@
RFC 8231 describes a set of extensions to Path Computation Element
Communication Protocol (PCEP) to enable stateful control of MPLS-TE
and GMPLS Label Switched Paths (LSPs) via PCEP. One of the
- extensions is the LSP object which includes a Flag field of the
+ extensions is the LSP object which includes a Flag field with a
length of 12 bits. However, all bits of the Flag field have already
been assigned in RFC 8231, RFC 8281, RFC 8623 and I-D.ietf-pce-
binding-label-sid.
@@ -97,13 +97,13 @@
[RFC5440] describes the Path Computation Element (PCE) Communication
Protocol (PCEP) which is used between a PCE and a Path Computation
Client (PCC) (or other PCE) to enable computation of Multi-protocol
- Label Switching (MPLS) for Traffic Engineering Label Switched Path
- (TE LSP).
+ Label Switching for Traffic Engineering (MPLS-TE) Label Switched Path
+ (LSP).
PCEP Extensions for the Stateful PCE Model [RFC8231] describes a set
of extensions to PCEP to enable active control of MPLS-TE and
Generalized MPLS (GMPLS) tunnels. One of the extensions is the LSP
- object which contains a flag field; bits in the flag field are used
+ object, which contains a flag field; bits in the flag field are used
to indicate delegation, synchronization, removal, etc.
@@ -115,15 +115,15 @@
As defined in [RFC8231], the length of the flag field is 12 bits and
- the value from bit 5 to bit 11 is used for operational,
+ the values from bit 5 to bit 11 are used for operational,
administrative, remove, synchronize and delegate bits respectively.
- The bit value 4 is assigned in [RFC8281] for create for PCE-Initiated
- LSPs. The bits from 1 to 3 is assigned in [RFC8623] for Explicit
+ The bit value 4 is assigned in [RFC8281] for create PCE-Initiated
+ LSPs. The bits from 1 to 3 are assigned in [RFC8623] for Explicit
Route Object (ERO)-compression, fragmentation and Point-to-Multipoint
(P2MP) respectively. The bit 0 is assigned in
[I-D.ietf-pce-binding-label-sid] to PCE-allocation. All bits of the
- Flag field has been assigned already. Thus, it is required to extend
- the flag field for the LSP Object for future use.
+ Flag field have been assigned already. Thus, it is required to extend
+ the flag field of the LSP Object for future use.
This document proposes to define a new LSP-EXTENDED-FLAG TLV for an
extended flag field in the LSP object.
@@ -151,7 +151,7 @@
3.1. The LSP-EXTENDED-FLAG TLV
The format of the LSP-EXTENDED-FLAG TLV follows the format of all
- PCEP TLVs as defined in [RFC5440] and is shown in the Figure 1.
+ PCEP TLVs as defined in [RFC5440] and is shown in Figure 1.
@@ -184,7 +184,7 @@
Figure 1: Figure 1: LSP-EXTENDED-FLAG TLV Format
- Type (16 bits): the value is TBD1 by IANA.
+ Type (16 bits): TBD1
Length (16 bits): multiple of 4 octets.
@@ -200,7 +200,7 @@
3.2. Processing
- The LSP Extended Flags field is an array of units of 32 flags and to
+ The LSP Extended Flags field is an array of units of 32 flags, to
be allocated starting from the most significant bit. The bits of the
LSP Extended Flags field will be assigned by future documents. This
document does not define any flags. Unassigned flags MUST be set to
@@ -208,7 +208,55 @@
that do not understand any particular flag MUST ignore the flag.
This flags should follow the specification as per [RFC8786].
- Note that, PCEP peers MAY encounter different length of the LSP-
+---
+jgs: RFC 8786 is primarily a patch document, that makes corrections
+specifically to the use of Request Parameters Flags. So, I think that
+strictly speaking, it doesn't make sense to say that "This flags should
+follow the specification as per [RFC8786]", first of all, because 8786
+isn't a standalone specification, and second, because it doesn't relate
+to the LSP object.
+
+I agree that it's fairly obvious what you mean to say, which is something
+like "RFC 8786 has some rules, they are good rules, please consider them
+to apply to this TLV of this object also". It would be my preference,
+though, that you just state the rule for your TLV here instead of
+incorporating them by reference.
+
+Based on a quick review of RFC 8786 it looks like you've already
+incorporated most of it in your own text. The only relevant part that
+I think remains is this part of Section 3.1:
+
+ each new
+ specification that defines additional flags is expected to
+ describe the interaction between these new flags and any existing
+ flags. In particular, new specifications are expected to explain
+ how to handle the cases when both new and pre-existing flags are
+ set.
+
+Is there anything else you think is needed, that your document doesn't
+already cover? If not, I would favor:
+
+- Delete the sentence above ("This flags should follow the specification as
+ per [RFC8786].")
+- Add a section to this document called "Advice for Specification of New
+ Flags", that contains the needed text. Maybe something like:
+
+4. Advice for Specification of New Flags
+
+ Following the model provided in [RFC 8786] Section 3.1, we provide
+ the following advice for new specifications that define additional
+ flags. Each such specification is expected to describe the
+ interaction between these new flags and any existing flags. In
+ particular, new specifications are expected to explain how to handle
+ the cases when both new and pre-existing flags are set.
+
+RFC 8786 would be an Informative reference, then.
+
+But that is just a suggestion, if you'd like to fix this some other way
+that's OK, let's discuss.
+---
+
+ Note that PCEP peers MAY encounter varying lengths of the LSP-
EXTENDED-FLAG TLV.
If a PCEP speaker receives the LSP-EXTENDED-FLAG TLV of a length more
@@ -233,8 +281,8 @@
A router that does not understand or support the LSP-EXTENDED-FLAG
TLV will silently ignore the TLV as per [RFC5440]. It is expected
- that future document that define bits in the LSP-EXTENDED-FLAG TLV
- would also define the error case handling required for missing LSP-
+ that future documents that define bits in the LSP-EXTENDED-FLAG TLV
+ will also define the error case handling required for missing LSP-
EXTENDED-FLAG TLV if it MUST be present.
5. IANA Considerations
@@ -271,8 +319,13 @@
* Defining RFC
- No values are currently defined.
-
+ No values are currently defined. Bits 0-31 should initially be marked
+ as "Unassigned". Bits with a higher ordinal than 31 will be added to the
+ registry in future documents if necessary
+
+jgs: The above addition is per Jon Hardwick's rtgdir review, I assume
+it was an oversight and not omitted deliberately, but if you actually
+don't want the text we should discuss further.
@@ -309,7 +362,7 @@
At the time of posting this version of this document, there are no
known implementations of this TLV. It is believed that this would be
- implemented along side the documents that allocate flags in the TLV.
+ implemented alongside the documents that allocate flags in the TLV.
7. Management Considerations
PCE Q. Xiong
Internet-Draft ZTE Corporation
Intended status: Standards Track 14 September 2022
Expires: 18 March 2023
Label Switched Path (LSP) Object Flag Extension for Stateful PCE
draft-ietf-pce-lsp-extended-flags-04
Abstract
RFC 8231 describes a set of extensions to Path Computation Element
Communication Protocol (PCEP) to enable stateful control of MPLS-TE
and GMPLS Label Switched Paths (LSPs) via PCEP. One of the
extensions is the LSP object which includes a Flag field with a
length of 12 bits. However, all bits of the Flag field have already
been assigned in RFC 8231, RFC 8281, RFC 8623 and I-D.ietf-pce-
binding-label-sid.
[Note to RFC Editor - Replace I-D.ietf-pce-binding-label-sid to RFC
XXXX, once the RFC number is assigned.]
This document proposes to define a new LSP-EXTENDED-FLAG TLV for the
LSP object for an extended flag field.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 18 March 2023.
Copyright Notice
Copyright (c) 2022 IETF Trust and the persons identified as the
document authors. All rights reserved.
Xiong Expires 18 March 2023 [Page 1]
Internet-Draft LSP Object Flag Extn September 2022
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
extracted from this document must include Revised BSD License text as
described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Revised BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions used in this document . . . . . . . . . . . . . . 3
2.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3
2.2. Requirements Language . . . . . . . . . . . . . . . . . . 3
3. PCEP Extension . . . . . . . . . . . . . . . . . . . . . . . 3
3.1. The LSP-EXTENDED-FLAG TLV . . . . . . . . . . . . . . . . 3
3.2. Processing . . . . . . . . . . . . . . . . . . . . . . . 4
4. Backward Compatibility . . . . . . . . . . . . . . . . . . . 5
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
5.1. LSP Object . . . . . . . . . . . . . . . . . . . . . . . 5
5.1.1. PCEP TLV Type Indicators . . . . . . . . . . . . . . 5
5.1.2. LSP Extended Flags Field . . . . . . . . . . . . . . 5
6. Implementation Status . . . . . . . . . . . . . . . . . . . . 6
7. Management Considerations . . . . . . . . . . . . . . . . . . 6
8. Security Considerations . . . . . . . . . . . . . . . . . . . 6
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7
10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 7
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
11.1. Normative References . . . . . . . . . . . . . . . . . . 7
11.2. Informative References . . . . . . . . . . . . . . . . . 8
Appendix A. WG Discussion . . . . . . . . . . . . . . . . . . . 9
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 9
1. Introduction
[RFC5440] describes the Path Computation Element (PCE) Communication
Protocol (PCEP) which is used between a PCE and a Path Computation
Client (PCC) (or other PCE) to enable computation of Multi-protocol
Label Switching for Traffic Engineering (MPLS-TE) Label Switched Path
(LSP).
PCEP Extensions for the Stateful PCE Model [RFC8231] describes a set
of extensions to PCEP to enable active control of MPLS-TE and
Generalized MPLS (GMPLS) tunnels. One of the extensions is the LSP
object, which contains a flag field; bits in the flag field are used
to indicate delegation, synchronization, removal, etc.
Xiong Expires 18 March 2023 [Page 2]
Internet-Draft LSP Object Flag Extn September 2022
As defined in [RFC8231], the length of the flag field is 12 bits and
the values from bit 5 to bit 11 are used for operational,
administrative, remove, synchronize and delegate bits respectively.
The bit value 4 is assigned in [RFC8281] for create PCE-Initiated
LSPs. The bits from 1 to 3 are assigned in [RFC8623] for Explicit
Route Object (ERO)-compression, fragmentation and Point-to-Multipoint
(P2MP) respectively. The bit 0 is assigned in
[I-D.ietf-pce-binding-label-sid] to PCE-allocation. All bits of the
Flag field have been assigned already. Thus, it is required to extend
the flag field of the LSP Object for future use.
This document proposes to define a new LSP-EXTENDED-FLAG TLV for an
extended flag field in the LSP object.
2. Conventions used in this document
2.1. Terminology
The terminology is defined as [RFC5440] and [RFC8231].
2.2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
3. PCEP Extension
The LSP Object is defined in Section 7.3 of [RFC8231]. This document
proposes to define a new LSP-EXTENDED-FLAG TLV for an extended flag
field in the LSP object.
3.1. The LSP-EXTENDED-FLAG TLV
The format of the LSP-EXTENDED-FLAG TLV follows the format of all
PCEP TLVs as defined in [RFC5440] and is shown in Figure 1.
Xiong Expires 18 March 2023 [Page 3]
Internet-Draft LSP Object Flag Extn September 2022
0 1 2 3
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type=TBD1 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
// LSP Extended Flags //
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Figure 1: LSP-EXTENDED-FLAG TLV Format
Type (16 bits): TBD1
Length (16 bits): multiple of 4 octets.
LSP Extended Flags: this contains an array of units of 32-bit flags
numbered from the most significant as bit zero, where each bit
represents one LSP flag (for operation, feature, or state).
Currently no bits are assigned. Unassigned bits MUST be set to zero
on transmission and MUST be ignored on receipt.
As an example of usage of the LSP-EXTENDED-FLAG TLV, the E-flag is
requested for entropy label configuration as proposed in
[I-D.peng-pce-entropy-label-position].
3.2. Processing
The LSP Extended Flags field is an array of units of 32 flags, to
be allocated starting from the most significant bit. The bits of the
LSP Extended Flags field will be assigned by future documents. This
document does not define any flags. Unassigned flags MUST be set to
zero on transmission and MUST be ignored on receipt. Implementations
that do not understand any particular flag MUST ignore the flag.
This flags should follow the specification as per [RFC8786].
---
jgs: RFC 8786 is primarily a patch document, that makes corrections
specifically to the use of Request Parameters Flags. So, I think that
strictly speaking, it doesn't make sense to say that "This flags should
follow the specification as per [RFC8786]", first of all, because 8786
isn't a standalone specification, and second, because it doesn't relate
to the LSP object.
I agree that it's fairly obvious what you mean to say, which is something
like "RFC 8786 has some rules, they are good rules, please consider them
to apply to this TLV of this object also". It would be my preference,
though, that you just state the rule for your TLV here instead of
incorporating them by reference.
Based on a quick review of RFC 8786 it looks like you've already
incorporated most of it in your own text. The only relevant part that
I think remains is this part of Section 3.1:
each new
specification that defines additional flags is expected to
describe the interaction between these new flags and any existing
flags. In particular, new specifications are expected to explain
how to handle the cases when both new and pre-existing flags are
set.
Is there anything else you think is needed, that your document doesn't
already cover? If not, I would favor:
- Delete the sentence above ("This flags should follow the specification as
per [RFC8786].")
- Add a section to this document called "Advice for Specification of New
Flags", that contains the needed text. Maybe something like:
4. Advice for Specification of New Flags
Following the model provided in [RFC 8786] Section 3.1, we provide
the following advice for new specifications that define additional
flags. Each such specification is expected to describe the
interaction between these new flags and any existing flags. In
particular, new specifications are expected to explain how to handle
the cases when both new and pre-existing flags are set.
RFC 8786 would be an Informative reference, then.
But that is just a suggestion, if you'd like to fix this some other way
that's OK, let's discuss.
---
Note that PCEP peers MAY encounter varying lengths of the LSP-
EXTENDED-FLAG TLV.
If a PCEP speaker receives the LSP-EXTENDED-FLAG TLV of a length more
than it currently supports or understands, it will simply ignore the
bits beyond that length.
If a PCEP speaker receives the LSP-EXTENDED-FLAG TLV of a length less
than the one supported by the implementation, it will consider the
bits beyond the length to be unset.
Xiong Expires 18 March 2023 [Page 4]
Internet-Draft LSP Object Flag Extn September 2022
4. Backward Compatibility
The LSP-EXTENDED-FLAG TLV defined in this document does not introduce
any interoperability issues.
A router that does not understand or support the LSP-EXTENDED-FLAG
TLV will silently ignore the TLV as per [RFC5440]. It is expected
that future documents that define bits in the LSP-EXTENDED-FLAG TLV
will also define the error case handling required for missing LSP-
EXTENDED-FLAG TLV if it MUST be present.
5. IANA Considerations
5.1. LSP Object
5.1.1. PCEP TLV Type Indicators
IANA is requested to allocate the following TLV Type Indicator value
within the "PCEP TLV Type Indicators" subregistry of the "Path
Computation Element Protocol (PCEP) Numbers" registry:
+=======+===================+=================+
| Value | Description | Reference |
+=======+===================+=================+
| TBD1 | LSP-EXTENDED-FLAG | [This document] |
+-------+-------------------+-----------------+
Table 1
5.1.2. LSP Extended Flags Field
IANA is requested to create a new subregistry called "LSP-EXTENDED-
FLAG TLV Flag Field", within the "Path Computation Element Protocol
(PCEP) Numbers" registry to manage the LSP Extended Flags field of
the LSP-EXTENDED-FLAG TLV. New values are assigned by Standards
Action [RFC8126]. Each bit should be tracked with the following
qualities:
* Bit number (counting from bit 0 as the most significant bit)
* Capability description
* Defining RFC
No values are currently defined. Bits 0-31 should initially be marked
as "Unassigned". Bits with a higher ordinal than 31 will be added to the
registry in future documents if necessary
jgs: The above addition is per Jon Hardwick's rtgdir review, I assume
it was an oversight and not omitted deliberately, but if you actually
don't want the text we should discuss further.
Xiong Expires 18 March 2023 [Page 5]
Internet-Draft LSP Object Flag Extn September 2022
6. Implementation Status
[NOTE TO RFC EDITOR : This whole section and the reference to
[RFC7942] is to be removed before publication as an RFC]
This section records the status of known implementations of the
protocol defined by this specification at the time of posting of this
Internet-Draft, and is based on a proposal described in [RFC7942].
The description of implementations in this section is intended to
assist the IETF in its decision processes in progressing drafts to
RFCs. Please note that the listing of any individual implementation
here does not imply endorsement by the IETF. Furthermore, no effort
has been spent to verify the information presented here that was
supplied by IETF contributors. This is not intended as, and must not
be construed to be, a catalog of available implementations or their
features. Readers are advised to note that other implementations may
exist.
According to [RFC7942], "this will allow reviewers and working groups
to assign due consideration to documents that have the benefit of
running code, which may serve as evidence of valuable experimentation
and feedback that have made the implemented protocols more mature.
It is up to the individual working groups to use this information as
they see fit".
At the time of posting this version of this document, there are no
known implementations of this TLV. It is believed that this would be
implemented alongside the documents that allocate flags in the TLV.
7. Management Considerations
Implementations receiving set LSP Extended Flags that they do not
recognize MAY log this. That could be helpful for diagnosing
backward compatibility issues with future features that utilize those
flags.
8. Security Considerations
[RFC8231] sets out security considerations for PCEP when used for
communication with a stateful PCE. This document does not change
those considerations. For LSP Object processing, see [RFC8231].
This document provides for future extension of PCEP. No additional
security issues are raised in this document beyond those that exist
in the referenced documents.
Xiong Expires 18 March 2023 [Page 6]
Internet-Draft LSP Object Flag Extn September 2022
9. Acknowledgements
The authors would like to thank Loa Andersson, Adrian Farrel, Aijun
Wang, and Gyan Mishra for their review, suggestions and comments to
this document.
10. Contributors
The following people have substantially contributed to this document:
Dhruv Dhody
Huawei Technologies
EMail: dhruv.i...@gmail.com
Greg Mirsky
Ericsson
Email: gregimir...@gmail.com
11. References
11.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
Element (PCE) Communication Protocol (PCEP)", RFC 5440,
DOI 10.17487/RFC5440, March 2009,
<https://www.rfc-editor.org/info/rfc5440>.
[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for
Writing an IANA Considerations Section in RFCs", BCP 26,
RFC 8126, DOI 10.17487/RFC8126, June 2017,
<https://www.rfc-editor.org/info/rfc8126>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path
Computation Element Communication Protocol (PCEP)
Extensions for Stateful PCE", RFC 8231,
DOI 10.17487/RFC8231, September 2017,
<https://www.rfc-editor.org/info/rfc8231>.
Xiong Expires 18 March 2023 [Page 7]
Internet-Draft LSP Object Flag Extn September 2022
[RFC8786] Farrel, A., "Updated Rules for Processing Stateful PCE
Request Parameters Flags", RFC 8786, DOI 10.17487/RFC8786,
May 2020, <https://www.rfc-editor.org/info/rfc8786>.
11.2. Informative References
[I-D.ietf-pce-binding-label-sid]
Sivabalan, S., Filsfils, C., Tantsura, J., Previdi, S.,
and C. L. (editor), "Carrying Binding Label/Segment
Identifier (SID) in PCE-based Networks.", Work in
Progress, Internet-Draft, draft-ietf-pce-binding-label-
sid-15, 20 March 2022, <https://www.ietf.org/archive/id/
draft-ietf-pce-binding-label-sid-15.txt>.
[I-D.peng-pce-entropy-label-position]
Xiong, Q., Peng, S., and F. Qin, "PCEP Extension for SR-
MPLS Entropy Label Position", Work in Progress, Internet-
Draft, draft-peng-pce-entropy-label-position-08, 29 August
2022, <https://www.ietf.org/archive/id/draft-peng-pce-
entropy-label-position-08.txt>.
[RFC5088] Le Roux, JL., Ed., Vasseur, JP., Ed., Ikejiri, Y., and R.
Zhang, "OSPF Protocol Extensions for Path Computation
Element (PCE) Discovery", RFC 5088, DOI 10.17487/RFC5088,
January 2008, <https://www.rfc-editor.org/info/rfc5088>.
[RFC5089] Le Roux, JL., Ed., Vasseur, JP., Ed., Ikejiri, Y., and R.
Zhang, "IS-IS Protocol Extensions for Path Computation
Element (PCE) Discovery", RFC 5089, DOI 10.17487/RFC5089,
January 2008, <https://www.rfc-editor.org/info/rfc5089>.
[RFC7942] Sheffer, Y. and A. Farrel, "Improving Awareness of Running
Code: The Implementation Status Section", BCP 205,
RFC 7942, DOI 10.17487/RFC7942, July 2016,
<https://www.rfc-editor.org/info/rfc7942>.
[RFC8281] Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "Path
Computation Element Communication Protocol (PCEP)
Extensions for PCE-Initiated LSP Setup in a Stateful PCE
Model", RFC 8281, DOI 10.17487/RFC8281, December 2017,
<https://www.rfc-editor.org/info/rfc8281>.
[RFC8623] Palle, U., Dhody, D., Tanaka, Y., and V. Beeram, "Stateful
Path Computation Element (PCE) Protocol Extensions for
Usage with Point-to-Multipoint TE Label Switched Paths
(LSPs)", RFC 8623, DOI 10.17487/RFC8623, June 2019,
<https://www.rfc-editor.org/info/rfc8623>.
Xiong Expires 18 March 2023 [Page 8]
Internet-Draft LSP Object Flag Extn September 2022
Appendix A. WG Discussion
The WG discussed the idea of a fixed length (with 32 bits) for LSP-
EXTENDED-FLAG TLV. Though 32 bits would be sufficient for quite a
while, the use of variable length with a multiple of 32-bits allows
for future extensibility where we would never run out of flags and
there would not be a need to define yet another TLV in the future.
Further, note that [RFC5088] and [RFC5089] use the same approach for
the PCE-CAP-FLAGS Sub-TLV and are found to be useful.
Author's Address
Quan Xiong
ZTE Corporation
No.6 Huashi Park Rd
Wuhan
Hubei, 430223
China
Email: xiong.q...@zte.com.cn
Xiong Expires 18 March 2023 [Page 9]
Title: Diff: draft-ietf-pce-lsp-extended-flags-04.txt - draft-ietf-pce-lsp-extended-flags-04-jgs-comments.txt
|
|
|
|
|
|
|
Skipping
|
|
Skipping
|
|
|
|
|
|
|
|
|
|
PCE Q. Xiong
|
|
PCE Q. Xiong
|
|
Internet-Draft ZTE Corporation
|
|
Internet-Draft ZTE Corporation
|
|
Intended status: Standards Track 14 September 2022
|
|
Intended status: Standards Track 14 September 2022
|
|
Expires: 18 March 2023
|
|
Expires: 18 March 2023
|
|
|
|
|
|
|
|
|
|
Label Switched Path (LSP) Object Flag Extension of Stateful PCE
|
|
Label Switched Path (LSP) Object Flag Extension for Stateful PCE
|
|
draft-ietf-pce-lsp-extended-flags-04
|
|
draft-ietf-pce-lsp-extended-flags-04
|
|
|
|
|
|
Abstract
|
|
Abstract
|
|
|
|
|
|
RFC 8231 describes a set of extensions to Path Computation Element
|
|
RFC 8231 describes a set of extensions to Path Computation Element
|
|
Communication Protocol (PCEP) to enable stateful control of MPLS-TE
|
|
Communication Protocol (PCEP) to enable stateful control of MPLS-TE
|
|
and GMPLS Label Switched Paths (LSPs) via PCEP. One of the
|
|
and GMPLS Label Switched Paths (LSPs) via PCEP. One of the
|
|
extensions is the LSP object which includes a Flag field of the
|
|
extensions is the LSP object which includes a Flag field with a
|
|
length of 12 bits. However, all bits of the Flag field have already
|
|
length of 12 bits. However, all bits of the Flag field have already
|
|
been assigned in RFC 8231, RFC 8281, RFC 8623 and I-D.ietf-pce-
|
|
been assigned in RFC 8231, RFC 8281, RFC 8623 and I-D.ietf-pce-
|
|
binding-label-sid.
|
|
binding-label-sid.
|
|
|
|
|
|
[Note to RFC Editor - Replace I-D.ietf-pce-binding-label-sid to RFC
|
|
[Note to RFC Editor - Replace I-D.ietf-pce-binding-label-sid to RFC
|
|
XXXX, once the RFC number is assigned.]
|
|
XXXX, once the RFC number is assigned.]
|
|
|
|
|
|
This document proposes to define a new LSP-EXTENDED-FLAG TLV for the
|
|
This document proposes to define a new LSP-EXTENDED-FLAG TLV for the
|
|
|
|
|
|
Skipping
|
|
Skipping
|
|
Appendix A. WG Discussion . . . . . . . . . . . . . . . . . . . 9
|
|
Appendix A. WG Discussion . . . . . . . . . . . . . . . . . . . 9
|
|
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 9
|
|
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 9
|
|
|
|
|
|
1. Introduction
|
|
1. Introduction
|
|
|
|
|
|
[RFC5440] describes the Path Computation Element (PCE) Communication
|
|
[RFC5440] describes the Path Computation Element (PCE) Communication
|
|
Protocol (PCEP) which is used between a PCE and a Path Computation
|
|
Protocol (PCEP) which is used between a PCE and a Path Computation
|
|
Client (PCC) (or other PCE) to enable computation of Multi-protocol
|
|
Client (PCC) (or other PCE) to enable computation of Multi-protocol
|
|
Label Switching (MPLS) for Traffic Engineering Label Switched Path
|
|
Label Switching for Traffic Engineering (MPLS-TE) Label Switched Path
|
|
(TE LSP).
|
|
(LSP).
|
|
|
|
|
|
PCEP Extensions for the Stateful PCE Model [RFC8231] describes a set
|
|
PCEP Extensions for the Stateful PCE Model [RFC8231] describes a set
|
|
of extensions to PCEP to enable active control of MPLS-TE and
|
|
of extensions to PCEP to enable active control of MPLS-TE and
|
|
Generalized MPLS (GMPLS) tunnels. One of the extensions is the LSP
|
|
Generalized MPLS (GMPLS) tunnels. One of the extensions is the LSP
|
|
object which contains a flag field; bits in the flag field are used
|
|
object, which contains a flag field; bits in the flag field are used
|
|
to indicate delegation, synchronization, removal, etc.
|
|
to indicate delegation, synchronization, removal, etc.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
As defined in [RFC8231], the length of the flag field is 12 bits and
|
|
As defined in [RFC8231], the length of the flag field is 12 bits and
|
|
the value from bit 5 to bit 11 is used for operational,
|
|
the values from bit 5 to bit 11 are used for operational,
|
|
administrative, remove, synchronize and delegate bits respectively.
|
|
administrative, remove, synchronize and delegate bits respectively.
|
|
The bit value 4 is assigned in [RFC8281] for create for PCE-Initiated
|
|
The bit value 4 is assigned in [RFC8281] for create PCE-Initiated
|
|
LSPs. The bits from 1 to 3 is assigned in [RFC8623] for Explicit
|
|
LSPs. The bits from 1 to 3 are assigned in [RFC8623] for Explicit
|
|
Route Object (ERO)-compression, fragmentation and Point-to-Multipoint
|
|
Route Object (ERO)-compression, fragmentation and Point-to-Multipoint
|
|
(P2MP) respectively. The bit 0 is assigned in
|
|
(P2MP) respectively. The bit 0 is assigned in
|
|
[I-D.ietf-pce-binding-label-sid] to PCE-allocation. All bits of the
|
|
[I-D.ietf-pce-binding-label-sid] to PCE-allocation. All bits of the
|
|
Flag field has been assigned already. Thus, it is required to extend
|
|
Flag field have been assigned already. Thus, it is required to extend
|
|
the flag field for the LSP Object for future use.
|
|
the flag field of the LSP Object for future use.
|
|
|
|
|
|
This document proposes to define a new LSP-EXTENDED-FLAG TLV for an
|
|
This document proposes to define a new LSP-EXTENDED-FLAG TLV for an
|
|
extended flag field in the LSP object.
|
|
extended flag field in the LSP object.
|
|
|
|
|
|
2. Conventions used in this document
|
|
2. Conventions used in this document
|
|
|
|
|
|
2.1. Terminology
|
|
2.1. Terminology
|
|
|
|
|
|
|
|
|
|
Skipping
|
|
Skipping
|
|
|
|
|
|
The LSP Object is defined in Section 7.3 of [RFC8231]. This document
|
|
The LSP Object is defined in Section 7.3 of [RFC8231]. This document
|
|
proposes to define a new LSP-EXTENDED-FLAG TLV for an extended flag
|
|
proposes to define a new LSP-EXTENDED-FLAG TLV for an extended flag
|
|
field in the LSP object.
|
|
field in the LSP object.
|
|
|
|
|
|
3.1. The LSP-EXTENDED-FLAG TLV
|
|
3.1. The LSP-EXTENDED-FLAG TLV
|
|
|
|
|
|
The format of the LSP-EXTENDED-FLAG TLV follows the format of all
|
|
The format of the LSP-EXTENDED-FLAG TLV follows the format of all
|
|
PCEP TLVs as defined in [RFC5440] and is shown in the Figure 1.
|
|
PCEP TLVs as defined in [RFC5440] and is shown in Figure 1.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Skipping
|
|
Skipping
|
|
// LSP Extended Flags //
|
|
// LSP Extended Flags //
|
|
| |
|
|
| |
|
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
|
|
|
|
|
|
|
|
|
Figure 1: Figure 1: LSP-EXTENDED-FLAG TLV Format
|
|
Figure 1: Figure 1: LSP-EXTENDED-FLAG TLV Format
|
|
|
|
|
|
|
|
|
|
Type (16 bits): the value is TBD1 by IANA.
|
|
Type (16 bits): TBD1
|
|
|
|
|
|
Length (16 bits): multiple of 4 octets.
|
|
Length (16 bits): multiple of 4 octets.
|
|
|
|
|
|
LSP Extended Flags: this contains an array of units of 32-bit flags
|
|
LSP Extended Flags: this contains an array of units of 32-bit flags
|
|
numbered from the most significant as bit zero, where each bit
|
|
numbered from the most significant as bit zero, where each bit
|
|
represents one LSP flag (for operation, feature, or state).
|
|
represents one LSP flag (for operation, feature, or state).
|
|
Currently no bits are assigned. Unassigned bits MUST be set to zero
|
|
Currently no bits are assigned. Unassigned bits MUST be set to zero
|
|
on transmission and MUST be ignored on receipt.
|
|
on transmission and MUST be ignored on receipt.
|
|
|
|
|
|
As an example of usage of the LSP-EXTENDED-FLAG TLV, the E-flag is
|
|
As an example of usage of the LSP-EXTENDED-FLAG TLV, the E-flag is
|
|
requested for entropy label configuration as proposed in
|
|
requested for entropy label configuration as proposed in
|
|
[I-D.peng-pce-entropy-label-position].
|
|
[I-D.peng-pce-entropy-label-position].
|
|
|
|
|
|
3.2. Processing
|
|
3.2. Processing
|
|
|
|
|
|
The LSP Extended Flags field is an array of units of 32 flags and to
|
|
The LSP Extended Flags field is an array of units of 32 flags, to
|
|
be allocated starting from the most significant bit. The bits of the
|
|
be allocated starting from the most significant bit. The bits of the
|
|
LSP Extended Flags field will be assigned by future documents. This
|
|
LSP Extended Flags field will be assigned by future documents. This
|
|
document does not define any flags. Unassigned flags MUST be set to
|
|
document does not define any flags. Unassigned flags MUST be set to
|
|
zero on transmission and MUST be ignored on receipt. Implementations
|
|
zero on transmission and MUST be ignored on receipt. Implementations
|
|
that do not understand any particular flag MUST ignore the flag.
|
|
that do not understand any particular flag MUST ignore the flag.
|
|
This flags should follow the specification as per [RFC8786].
|
|
This flags should follow the specification as per [RFC8786].
|
|
|
|
|
|
|
|
jgs: RFC 8786 is primarily a patch document, that makes corrections
|
|
|
|
specifically to the use of Request Parameters Flags. So, I think that
|
|
|
|
strictly speaking, it doesn't make sense to say that "This flags should
|
|
|
|
follow the specification as per [RFC8786]", first of all, because 8786
|
|
|
|
isn't a standalone specification, and second, because it doesn't relate
|
|
|
|
to the LSP object.
|
|
|
|
I agree that it's fairly obvious what you mean to say, which is something
|
|
|
|
like "RFC 8786 has some rules, they are good rules, please consider them
|
|
|
|
to apply to this TLV of this object also". It would be my preference,
|
|
|
|
though, that you just state the rule for your TLV here instead of
|
|
|
|
incorporating them by reference.
|
|
|
|
Based on a quick review of RFC 8786 it looks like you've already
|
|
|
|
incorporated most of it in your own text. The only relevant part that
|
|
|
|
I think remains is this part of Section 3.1:
|
|
|
|
each new
|
|
|
|
specification that defines additional flags is expected to
|
|
|
|
describe the interaction between these new flags and any existing
|
|
|
|
flags. In particular, new specifications are expected to explain
|
|
|
|
how to handle the cases when both new and pre-existing flags are
|
|
|
|
set.
|
|
|
|
Is there anything else you think is needed, that your document doesn't
|
|
|
|
already cover? If not, I would favor:
|
|
|
|
- Delete the sentence above ("This flags should follow the specification as
|
|
|
|
per [RFC8786].")
|
|
|
|
- Add a section to this document called "Advice for Specification of New
|
|
|
|
Flags", that contains the needed text. Maybe something like:
|
|
|
|
4. Advice for Specification of New Flags
|
|
|
|
Following the model provided in [RFC 8786] Section 3.1, we provide
|
|
|
|
the following advice for new specifications that define additional
|
|
|
|
flags. Each such specification is expected to describe the
|
|
|
|
interaction between these new flags and any existing flags. In
|
|
|
|
particular, new specifications are expected to explain how to handle
|
|
|
|
the cases when both new and pre-existing flags are set.
|
|
|
|
RFC 8786 would be an Informative reference, then.
|
|
|
|
But that is just a suggestion, if you'd like to fix this some other way
|
|
|
|
that's OK, let's discuss.
|
|
Note that, PCEP peers MAY encounter different length of the LSP-
|
|
Note that PCEP peers MAY encounter varying lengths of the LSP-
|
|
EXTENDED-FLAG TLV.
|
|
EXTENDED-FLAG TLV.
|
|
|
|
|
|
If a PCEP speaker receives the LSP-EXTENDED-FLAG TLV of a length more
|
|
If a PCEP speaker receives the LSP-EXTENDED-FLAG TLV of a length more
|
|
than it currently supports or understands, it will simply ignore the
|
|
than it currently supports or understands, it will simply ignore the
|
|
bits beyond that length.
|
|
bits beyond that length.
|
|
|
|
|
|
If a PCEP speaker receives the LSP-EXTENDED-FLAG TLV of a length less
|
|
If a PCEP speaker receives the LSP-EXTENDED-FLAG TLV of a length less
|
|
than the one supported by the implementation, it will consider the
|
|
than the one supported by the implementation, it will consider the
|
|
|
|
|
|
Skipping
|
|
Skipping
|
|
|
|
|
|
4. Backward Compatibility
|
|
4. Backward Compatibility
|
|
|
|
|
|
The LSP-EXTENDED-FLAG TLV defined in this document does not introduce
|
|
The LSP-EXTENDED-FLAG TLV defined in this document does not introduce
|
|
any interoperability issues.
|
|
any interoperability issues.
|
|
|
|
|
|
A router that does not understand or support the LSP-EXTENDED-FLAG
|
|
A router that does not understand or support the LSP-EXTENDED-FLAG
|
|
TLV will silently ignore the TLV as per [RFC5440]. It is expected
|
|
TLV will silently ignore the TLV as per [RFC5440]. It is expected
|
|
that future document that define bits in the LSP-EXTENDED-FLAG TLV
|
|
that future documents that define bits in the LSP-EXTENDED-FLAG TLV
|
|
would also define the error case handling required for missing LSP-
|
|
will also define the error case handling required for missing LSP-
|
|
EXTENDED-FLAG TLV if it MUST be present.
|
|
EXTENDED-FLAG TLV if it MUST be present.
|
|
|
|
|
|
5. IANA Considerations
|
|
5. IANA Considerations
|
|
|
|
|
|
5.1. LSP Object
|
|
5.1. LSP Object
|
|
|
|
|
|
5.1.1. PCEP TLV Type Indicators
|
|
5.1.1. PCEP TLV Type Indicators
|
|
|
|
|
|
|
|
|
|
Skipping
|
|
Skipping
|
|
|
|
|
|
* Bit number (counting from bit 0 as the most significant bit)
|
|
* Bit number (counting from bit 0 as the most significant bit)
|
|
|
|
|
|
* Capability description
|
|
* Capability description
|
|
|
|
|
|
* Defining RFC
|
|
* Defining RFC
|
|
|
|
|
|
|
|
|
|
No values are currently defined.
|
|
No values are currently defined. Bits 0-31 should initially be marked
|
|
|
|
as "Unassigned". Bits with a higher ordinal than 31 will be added to the
|
|
|
|
registry in future documents if necessary
|
|
|
|
jgs: The above addition is per Jon Hardwick's rtgdir review, I assume
|
|
|
|
it was an oversight and not omitted deliberately, but if you actually
|
|
|
|
don't want the text we should discuss further.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6. Implementation Status
|
|
6. Implementation Status
|
|
|
|
|
|
Skipping
|
|
Skipping
|
|
to assign due consideration to documents that have the benefit of
|
|
to assign due consideration to documents that have the benefit of
|
|
running code, which may serve as evidence of valuable experimentation
|
|
running code, which may serve as evidence of valuable experimentation
|
|
and feedback that have made the implemented protocols more mature.
|
|
and feedback that have made the implemented protocols more mature.
|
|
It is up to the individual working groups to use this information as
|
|
It is up to the individual working groups to use this information as
|
|
they see fit".
|
|
they see fit".
|
|
|
|
|
|
At the time of posting this version of this document, there are no
|
|
At the time of posting this version of this document, there are no
|
|
known implementations of this TLV. It is believed that this would be
|
|
known implementations of this TLV. It is believed that this would be
|
|
implemented along side the documents that allocate flags in the TLV.
|
|
implemented alongside the documents that allocate flags in the TLV.
|
|
|
|
|
|
7. Management Considerations
|
|
7. Management Considerations
|
|
|
|
|
|
Implementations receiving set LSP Extended Flags that they do not
|
|
Implementations receiving set LSP Extended Flags that they do not
|
|
recognize MAY log this. That could be helpful for diagnosing
|
|
recognize MAY log this. That could be helpful for diagnosing
|
|
backward compatibility issues with future features that utilize those
|
|
backward compatibility issues with future features that utilize those
|
|
flags.
|
|
flags.
|
|
|
|
|
_______________________________________________
Pce mailing list
Pce@ietf.org
https://www.ietf.org/mailman/listinfo/pce