Label Switched Path (LSP) Object Flag Extension for Stateful PCEZTE CorporationNo.6 Huashi Park RdWuhanHubei430223Chinaxiong.quan@zte.com.cn
rtg
pcePCEPRFC 8231 describes a set of extensions to the 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.This document defines a new LSP-EXTENDED-FLAG TLV for the
LSP object for an extended Flag field.Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by
the Internet Engineering Steering Group (IESG). Further
information on Internet Standards is available in Section 2 of
RFC 7841.
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
.
Copyright Notice
Copyright (c) 2023 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
() 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
. Introduction
. Conventions Used in this Document
. Terminology
. Requirements Language
. PCEP Extension
. The LSP-EXTENDED-FLAG TLV
. Processing
. Advice for Specification of New Flags
. Backward Compatibility
. IANA Considerations
. LSP Object
. PCEP TLV Type Indicators
. LSP Extended Flags Field
. Management Considerations
. Security Considerations
. References
. Normative References
. Informative References
. Working Group Discussion
Acknowledgements
Contributors
Author's Address
Introduction describes the Path Computation Element
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 Paths (LSPs). PCEP Extensions for the Stateful PCE Model
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.As defined in , the length of the Flag field is
12 bits, and all of the bits have already been defined as shown in . This document extends the
Flag field of the LSP object for other use by defining a new LSP-EXTENDED-FLAG TLV for an extended Flag field in the LSP object (see ).
LSP Object Flag Field
Bit
Description
Reference
0
PCE-allocation
1
ERO-compression
2
Fragmentation
3
P2MP
4
Create
5-7
Operational (3 bits)
8
Administrative
9
Remove
10
SYNC
11
Delegate
Conventions Used in this DocumentTerminologyThe terminology is defined in and .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
when, and only when, they appear in all capitals, as shown here.
PCEP ExtensionThe LSP object is defined in .
This document defines a new LSP-EXTENDED-FLAG TLV for an extended Flag field in the LSP object.The LSP-EXTENDED-FLAG TLVThe format of the LSP-EXTENDED-FLAG TLV shown in follows the format of
all PCEP TLVs, as defined in .
Type (16 bits):
64
Length (16 bits):
This indicates the length of the value portion in bytes.
It MUST be in multiples of 4 and greater than 0.
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). The
LSP Extended Flags field SHOULD use the minimal amount of space
needed to encode the flag bits. 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 .ProcessingThe LSP Extended Flags field is an array of units of 32 flags that are
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. Flags that an implementation is not supporting MUST be set to
zero on transmission. Implementations that do not understand any particular
flag MUST ignore the flag.Note that PCEP peers MUST handle 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 MUST 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 MUST act as if the bits
beyond the length were not set.Advice for Specification of New FlagsFollowing the model provided in , 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 preexisting flags are set.
They are also expected to discuss any security implications of the
additional flags (if any) and their interactions with existing flags.Backward CompatibilityThe LSP-EXTENDED-FLAG TLV defined in this document does not introduce
any backward compatibility issues. An implementation that does not
understand or support the LSP-EXTENDED-FLAG TLV MUST ignore
the TLV, as per . Future documents that
define bits in the LSP-EXTENDED-FLAG TLV are expected to also define the error
handling required for cases in which the LSP-EXTENDED-FLAG TLV is missing when it MUST
be present.Further, any additional bits in the LSP-EXTENDED-FLAG TLV that are
not understood by an implementation MUST be ignored.
It is expected that future documents that define bits in the LSP-EXTENDED-FLAG TLV
will take that into consideration. IANA ConsiderationsLSP ObjectPCEP TLV Type IndicatorsIANA has allocated the following TLV Type Indicator value within
the "PCEP TLV Type Indicators" registry of the "Path Computation
Element Protocol (PCEP) Numbers" registry:
Value
Description
Reference
64
LSP-EXTENDED-FLAG
RFC 9357
LSP Extended Flags FieldIANA has created the "LSP-EXTENDED-FLAG TLV Flag Field" registry
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 . Each bit should be tracked
with the following qualities:
Bit number (counting from bit 0 as the most significant bit)
Capability Description
Reference
No values are currently defined. Bits 0-31 are initially marked
as "Unassigned". Bits with a higher ordinal than 31 will be added to the
registry in future documents if necessary.Management ConsiderationsImplementations 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.Security Considerations 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 .The flags for the LSP object and their associated security
considerations are specified in , , ,
and .This document provides for the future addition of flags in the LSP object.
Any future document that specifies new flags must also discuss any
associated security implications. No additional security issues are
raised in this document beyond those that exist in the referenced
documents.
Note that recommends
that the stateful PCEP extension be authenticated and encrypted
using Transport Layer Security (TLS) , as per the
recommendations and best current practices in .
Assuming that the recommendation is followed, then the flags will be protected by TLS.ReferencesNormative ReferencesKey words for use in RFCs to Indicate Requirement LevelsIn many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.Path Computation Element (PCE) Communication Protocol (PCEP)This document specifies the Path Computation Element (PCE) Communication Protocol (PCEP) for communications between a Path Computation Client (PCC) and a PCE, or between two PCEs. Such interactions include path computation requests and path computation replies as well as notifications of specific states related to the use of a PCE in the context of Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) Traffic Engineering. PCEP is designed to be flexible and extensible so as to easily allow for the addition of further messages and objects, should further requirements be expressed in the future. [STANDARDS-TRACK]Guidelines for Writing an IANA Considerations Section in RFCsMany protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.This is the third edition of this document; it obsoletes RFC 5226.Ambiguity of Uppercase vs Lowercase in RFC 2119 Key WordsRFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.Path Computation Element Communication Protocol (PCEP) Extensions for Stateful PCEThe Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Client (PCC) requests.Although PCEP explicitly makes no assumptions regarding the information available to the PCE, it also makes no provisions for PCE control of timing and sequence of path computations within and across PCEP sessions. This document describes a set of extensions to PCEP to enable stateful control of MPLS-TE and GMPLS Label Switched Paths (LSPs) via PCEP.Informative ReferencesCarrying Binding Label/Segment Identifier (SID) in PCE-based Networks.Ciena CorporationCisco Systems, Inc.Microsoft CorporationHuawei TechnologiesHuawei TechnologiesWork in ProgressPCEP Extension for SR-MPLS Entropy Label PositionZTE CorporationZTE CorporationChina Mobile This document proposes a set of extensions for PCEP to configure the
entropy label position for SR-MPLS networks.
Work in ProgressPCEPS with TLS 1.3Huawei Technologiessn3rdVigil Security, LLC RFC 8253 defines how to protect PCEP messages with TLS 1.2. This
document describes how to protect PCEP messages with TLS 1.3.
Discussion Venues
This note is to be removed before publishing as an RFC.
Discussion of this document takes place on the Path Computation
Element Working Group mailing list (pce@ietf.org), which is archived
at https://mailarchive.ietf.org/arch/browse/pce/.
Source for this draft and an issue tracker can be found at
https://github.com/dhruvdhody/draft-dhody-pce-pceps-tls13.
Work in ProgressOSPF Protocol Extensions for Path Computation Element (PCE) DiscoveryThere are various circumstances where it is highly desirable for a Path Computation Client (PCC) to be able to dynamically and automatically discover a set of Path Computation Elements (PCEs), along with information that can be used by the PCC for PCE selection. When the PCE is a Label Switching Router (LSR) participating in the Interior Gateway Protocol (IGP), or even a server participating passively in the IGP, a simple and efficient way to announce PCEs consists of using IGP flooding. For that purpose, this document defines extensions to the Open Shortest Path First (OSPF) routing protocol for the advertisement of PCE Discovery information within an OSPF area or within the entire OSPF routing domain. [STANDARDS-TRACK]IS-IS Protocol Extensions for Path Computation Element (PCE) DiscoveryThere are various circumstances where it is highly desirable for a Path Computation Client (PCC) to be able to dynamically and automatically discover a set of Path Computation Elements (PCEs), along with information that can be used by the PCC for PCE selection. When the PCE is a Label Switching Router (LSR) participating in the Interior Gateway Protocol (IGP), or even a server participating passively in the IGP, a simple and efficient way to announce PCEs consists of using IGP flooding. For that purpose, this document defines extensions to the Intermediate System to Intermediate System (IS-IS) routing protocol for the advertisement of PCE Discovery information within an IS-IS area or within the entire IS-IS routing domain. [STANDARDS-TRACK]PCEPS: Usage of TLS to Provide a Secure Transport for the Path Computation Element Communication Protocol (PCEP)The Path Computation Element Communication Protocol (PCEP) defines the mechanisms for the communication between a Path Computation Client (PCC) and a Path Computation Element (PCE), or among PCEs. This document describes PCEPS -- the usage of Transport Layer Security (TLS) to provide a secure transport for PCEP. The additional security mechanisms are provided by the transport protocol supporting PCEP; therefore, they do not affect the flexibility and extensibility of PCEP.This document updates RFC 5440 in regards to the PCEP initialization phase procedures.Path Computation Element Communication Protocol (PCEP) Extensions for PCE-Initiated LSP Setup in a Stateful PCE ModelThe Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Client (PCC) requests.The extensions for stateful PCE provide active control of Multiprotocol Label Switching (MPLS) Traffic Engineering Label Switched Paths (TE LSPs) via PCEP, for a model where the PCC delegates control over one or more locally configured LSPs to the PCE. This document describes the creation and deletion of PCE-initiated LSPs under the stateful PCE model.Stateful Path Computation Element (PCE) Protocol Extensions for Usage with Point-to-Multipoint TE Label Switched Paths (LSPs)The Path Computation Element (PCE) has been identified as an appropriate technology for the determination of the paths of point- to-multipoint (P2MP) TE Label Switched Paths (LSPs). This document provides extensions required for the Path Computation Element Communication Protocol (PCEP) so as to enable the usage of a stateful PCE capability in supporting P2MP TE LSPs.Updated Rules for Processing Stateful PCE Request Parameters FlagsExtensions to the Path Computation Element Communication Protocol (PCEP) to support stateful Path Computation Elements (PCEs) are defined in RFC 8231. One of the extensions is the Stateful PCE Request Parameters (SRP) object. That object includes a Flags field that is a set of 32 bit flags, and RFC 8281 defines an IANA registry for tracking assigned flags. However, RFC 8231 does not explain how an implementation should set unassigned flags in transmitted messages, nor how an implementation should process unassigned, unknown, or unsupported flags in received messages.This document updates RFC 8231 by defining the correct behaviors.Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are used to protect data exchanged over a wide range of application protocols and can also form the basis for secure transport protocols. Over the years, the industry has witnessed several serious attacks on TLS and DTLS, including attacks on the most commonly used cipher suites and their modes of operation. This document provides the latest recommendations for ensuring the security of deployed services that use TLS and DTLS. These recommendations are applicable to the majority of use cases.RFC 7525, an earlier version of the TLS recommendations, was published when the industry was transitioning to TLS 1.2. Years later, this transition is largely complete, and TLS 1.3 is widely available. This document updates the guidance given the new environment and obsoletes RFC 7525. In addition, this document updates RFCs 5288 and 6066 in view of recent attacks.Working Group Discussion
The working group discussed the idea of a fixed length (with 32 bits) for the
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 and use the same approach for
the PCE-CAP-FLAGS sub-TLV and are found to be useful.
AcknowledgementsThe authors would like to thank , , , and for their reviews, suggestions, and comments for this document.ContributorsThe following people have substantially contributed to this document:Huawei Technologiesdhruv.ietf@gmail.comEricssongregimirsky@gmail.comAuthor's AddressZTE CorporationNo.6 Huashi Park RdWuhanHubei430223Chinaxiong.quan@zte.com.cn