PCE Working Group                                                  C. Li
Internet-Draft                                                  H. Zheng
Intended status: Standards Track                     Huawei Technologies
Expires: 1 March 2025                                       S. Sivabalan
                                                                   Ciena
                                                                S. Sidor
                                                                  Z. Ali
                                                     Cisco Systems, Inc.
                                                          28 August 2024


 Conveying Vendor-Specific Information in the Path Computation Element
    (PCE) Communication Protocol (PCEP) extensions for Stateful PCE.
                 draft-ietf-pce-stateful-pce-vendor-07

Abstract

   A Stateful Path Computation Element (PCE) maintains information on
   the current network state, including computed Label Switched Path
   (LSPs), reserved resources within the network, and the pending path
   computation requests.  This information may then be considered when
   computing new traffic-engineered LSPs, and for any associated and
   dependent LSPs, received from a Path Computation Client (PCC).

   RFC 7470 defines a facility to carry vendor-specific information in
   stateless PCE Communication Protocol (PCEP) messages.

   This document extends this capability for the Stateful PCEP messages.

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 1 March 2025.






Li, et al.                Expires 1 March 2025                  [Page 1]

Internet-Draft               VENDOR-STATEFUL                 August 2024


Copyright Notice

   Copyright (c) 2024 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 (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
     1.1.  Requirements Language . . . . . . . . . . . . . . . . . .   3
     1.2.  Use of RBNF . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Procedures for the Vendor Information Object  . . . . . . . .   4
   3.  Procedures for the Vendor Information TLV . . . . . . . . . .   6
   4.  Manageability Considerations  . . . . . . . . . . . . . . . .   6
     4.1.  Control of Function and Policy  . . . . . . . . . . . . .   7
     4.2.  Information and Data Models . . . . . . . . . . . . . . .   7
     4.3.  Liveness Detection and Monitoring . . . . . . . . . . . .   7
     4.4.  Verifying Correct Operations  . . . . . . . . . . . . . .   7
     4.5.  Requirements On Other Protocols . . . . . . . . . . . . .   7
     4.6.  Impact On Network Operations  . . . . . . . . . . . . . .   7
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   8
   6.  Implementation Status . . . . . . . . . . . . . . . . . . . .   8
     6.1.  Cisco Systems . . . . . . . . . . . . . . . . . . . . . .   8
   7.  Security Considerations . . . . . . . . . . . . . . . . . . .   9
   8.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .   9
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   9
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .   9
     9.2.  Informative References  . . . . . . . . . . . . . . . . .  10
   Appendix A.  Contributor Addresses  . . . . . . . . . . . . . . .  11
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  11

1.  Introduction

   The Path Computation Element Communication Protocol (PCEP) [RFC5440]
   provides mechanisms for a Path Computation Element (PCE) to perform
   path computation in response to a Path Computation Client (PCC)
   request.






Li, et al.                Expires 1 March 2025                  [Page 2]

Internet-Draft               VENDOR-STATEFUL                 August 2024


   A Stateful PCE is capable of considering, for the purposes of the
   path computation, not only the network state in terms of links and
   nodes (referred to as the Traffic Engineering Database or TED) but
   also the status of active services (previously computed paths, and
   currently reserved resources, stored in the Label Switched Paths
   Database (LSP-DB)).  [RFC8051] describes general considerations for a
   Stateful PCE deployment and examines its applicability and benefits,
   as well as its challenges and limitations through a number of use
   cases.

   [RFC8231] describes a set of extensions to PCEP to provide stateful
   control.  A Stateful PCE has access to not only the information
   carried by the network's Interior Gateway Protocol (IGP), but also
   the set of active paths and their reserved resources for its
   computations.  The additional state allows the PCE to compute
   constrained paths while considering individual LSPs and their
   interactions.  [RFC8281] describes the setup, maintenance, and
   teardown of PCE-initiated LSPs under the Stateful PCE model.  These
   extensions add new messages in PCEP for Stateful PCE.

   [RFC7470] defines the Vendor Information object that can be used to
   carry arbitrary, proprietary information such as vendor-specific
   constraints in stateless PCEP.  It also defines the VENDOR-
   INFORMATION-TLV that can be used to carry arbitrary information
   within any existing or future PCEP object that supports TLVs.

   The Vendor Information Object and the VENDOR-INFORMATION-TLV are also
   valuable in the Stateful PCE model.  The VENDOR-INFORMATION-TLV can
   be included within any of the new objects introduced in PCEP for
   Stateful PCE as defined in [RFC7470].  This document extends stateful
   PCEP messages to incorporate the Vendor Information Object.

1.1.  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.

1.2.  Use of RBNF

   The message formats in this document are illustrated using Routing
   Backus-Naur Form (RBNF) encoding, as specified in [RFC5511].  The use
   of RBNF is illustrative only and may elide certain important details;
   the normative specification of messages is found in the prose
   description.  If there is any divergence between the RBNF and the
   prose, the prose is considered authoritative.



Li, et al.                Expires 1 March 2025                  [Page 3]

Internet-Draft               VENDOR-STATEFUL                 August 2024


2.  Procedures for the Vendor Information Object

   A Path Computation LSP State Report message (also referred to as
   PCRpt message) [RFC8231] is a PCEP message sent by a PCC to a PCE to
   report the current state of an LSP.  A PCC that wants to convey
   proprietary or vendor-specific information or metrics to a PCE does
   so by including a Vendor Information object in the PCRpt message.
   The contents and format of the object, including the VENDOR-
   INFORMATION object and the VENDOR-INFORMATION-TLV, are described in
   Section 4 of [RFC7470].  The PCE determines how to interpret the
   information in the Vendor Information object by examining the
   Enterprise Number it contains.

   The Vendor Information object is OPTIONAL in a PCRpt message.
   Multiple instances of the object MAY be contained in a single PCRpt
   message.  Different instances of the object MAY have different
   Enterprise Numbers.

   The message formats in this document are specified using Routing
   Backus-Naur Format (RBNF) encoding as specified in [RFC5511].

   The format of the PCRpt message (with [RFC8231] as the base) is
   updated as follows:

         <PCRpt Message> ::= <Common Header>
                             <state-report-list>
      Where:

         <state-report-list> ::= <state-report>[<state-report-list>]

         <state-report> ::= [<SRP>]
                            <LSP>
                            <path>
                            [<vendor-info-list>]
       Where:
         <vendor-info-list> ::= <VENDOR-INFORMATION>
                                [<vendor-info-list>]

         <path> is defined in [RFC8231].

   A Path Computation LSP Update Request message (also referred to as
   PCUpd message) [RFC8231] is a PCEP message sent by a PCE to a PCC to
   update the attributes of an LSP.  The Vendor Information object can
   be included in a PCUpd message to convey proprietary or vendor-
   specific information.

   The format of the PCUpd message (with [RFC8231] as the base) is
   updated as follows:



Li, et al.                Expires 1 March 2025                  [Page 4]

Internet-Draft               VENDOR-STATEFUL                 August 2024


         <PCUpd Message> ::= <Common Header>
                             <update-request-list>
      Where:

         <update-request-list> ::= <update-request>
                             [<update-request-list>]

         <update-request> ::= <SRP>
                              <LSP>
                              <path>
                              [<vendor-info-list>]
      Where:
         <vendor-info-list> ::= <VENDOR-INFORMATION>
                                [<vendor-info-list>]

         <path> is defined in [RFC8231].

   A Path Computation LSP Initiate Message (also referred to as
   PCInitiate message) [RFC8281] is a PCEP message sent by a PCE to a
   PCC to trigger an LSP instantiation or deletion.  The Vendor
   Information object can be included in a PCInitiate message to convey
   proprietary or vendor-specific information.

   The format of the PCInitiate message (with [RFC8281] as the base) is
   updated as follows:


























Li, et al.                Expires 1 March 2025                  [Page 5]

Internet-Draft               VENDOR-STATEFUL                 August 2024


        <PCInitiate Message> ::= <Common Header>
                                 <PCE-initiated-lsp-list>
     Where:

        <PCE-initiated-lsp-list> ::= <PCE-initiated-lsp-request>
                                     [<PCE-initiated-lsp-list>]

        <PCE-initiated-lsp-request> ::=
                             (<PCE-initiated-lsp-instantiation>|
                              <PCE-initiated-lsp-deletion>)

        <PCE-initiated-lsp-instantiation> ::= <SRP>
                                              <LSP>
                                              [<END-POINTS>]
                                              <ERO>
                                              [<attribute-list>]
                                              [<vendor-info-list>]

        Where:

        <vendor-info-list> ::= <VENDOR-INFORMATION>
                               [<vendor-info-list>]

        <PCE-initiated-lsp-deletion> and <attribute-list> is as per
        [RFC8281].

   A legacy implementation that does not recognize the Vendor
   Information object will act according to the procedures set out in
   [RFC8231] and [RFC8281].  An implementation that supports the Vendor
   Information object, but receives one carrying an Enterprise Number
   that it does not support, MUST ignore the object in the same way as
   described in [RFC7470].

3.  Procedures for the Vendor Information TLV

   The Vendor Information TLV can be used to carry vendor-specific
   information that applies to a specific PCEP object by including the
   TLV in the object.  This includes objects used in Stateful PCE
   extensions such as Stateful PCE Request Parameter (SRP) and LSP
   objects.  All the procedures are as per section 3 of [RFC7470].

4.  Manageability Considerations

   All manageability requirements and considerations listed in
   [RFC5440], [RFC7470], [RFC8231], and [RFC8281] apply to PCEP protocol
   extensions defined in this document.  In addition, the requirements
   and considerations listed in this section apply.




Li, et al.                Expires 1 March 2025                  [Page 6]

Internet-Draft               VENDOR-STATEFUL                 August 2024


4.1.  Control of Function and Policy

   The requirements for control of function and policy for vendor-
   specific information as set out in [RFC7470] continue to apply to
   Stateful PCEP extensions specified in this document.

4.2.  Information and Data Models

   The PCEP YANG module is specified in [I-D.ietf-pce-pcep-yang].  Any
   standard YANG module will not include details of vendor-specific
   information.

4.3.  Liveness Detection and Monitoring

   Mechanisms defined in this document do not imply any new liveness
   detection and monitoring requirements in addition to those already
   listed in [RFC5440].

4.4.  Verifying Correct Operations

   Mechanisms defined in this document do not imply any new operation
   verification requirements in addition to those already listed in
   [RFC5440] and [RFC8231].

4.5.  Requirements On Other Protocols

   Mechanisms defined in this document do not imply any new requirements
   on other protocols.

4.6.  Impact On Network Operations

   Mechanisms defined in [RFC5440] and [RFC8231] also apply to PCEP
   extensions defined in this document.

   Section 6.6 of [RFC7470] highlights how the presence of additional
   vendor-specific information in PCEP messages may congest the
   operations and how to detect and handle it.  A similar approach
   SHOULD be considered for Stateful PCEP messages and for a PCE.

   Encoding optimization for the Vendor Information Object, for example,
   in case of the object with the same content encoded for multiple
   LSPs, is considered out of the scope of this document and may be
   proposed in the future as a separate document applicable to other
   PCEP objects.







Li, et al.                Expires 1 March 2025                  [Page 7]

Internet-Draft               VENDOR-STATEFUL                 August 2024


5.  IANA Considerations

   There are no IANA actions in this document, only a clarification.
   [RFC7470] defines the Enterprise Numbers allocated by IANA and
   managed through an IANA registry [RFC2578].  This document clarifies
   the Private Enterprise Numbers (PEN) as described in the IANA
   registry.  The registration procedures and the registry location are
   described by [RFC9371].

6.  Implementation Status

   [NOTE TO RFC EDITOR : This whole section and the reference to RFC
   7942 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".

6.1.  Cisco Systems

   *  Organization: Cisco Systems, Inc.

   *  Implementation: Cisco IOS-XR PCE and PCC

   *  Description: Vendor Information Object used in PCRpt, PCUpd and
      PCInitiate messages.

   *  Maturity Level: Production

   *  Coverage: Full

   *  Contact: ssidor@cisco.com



Li, et al.                Expires 1 March 2025                  [Page 8]

Internet-Draft               VENDOR-STATEFUL                 August 2024


7.  Security Considerations

   The protocol extensions defined in this document do not change the
   nature of PCEP.  Therefore, the security considerations set out in
   [RFC5440], [RFC7470], [RFC8231] and [RFC8281] apply unchanged.

   As per [RFC8231] it is RECOMMENDED that these PCEP extensions only be
   activated on authenticated and encrypted sessions across PCEs and
   PCCs using Transport Layer Security (TLS) [RFC8253], as per the
   recommendations and best current practices in RFC 9325 [BCP195]
   (unless explicitly set aside in [RFC8253]).

   The use of vendor-specific information as defined in [RFC7470] and in
   this document may provide a covert channel that could be misused by
   PCEP speaker implementations or by malign software at PCEP speakers.
   There is little protection against this, however, an operator that
   monitors the PCEP sessions can determine that vendor-specific
   information is being used and ask their suppliers (the PCE and PCC
   implementers) to provide a mechanism to decode the vendor-specific
   information.

8.  Acknowledgments

   Thanks to Adrian Farrel, Avantika, Mahendra Singh Negi, Udayasree
   Palle, and Swapna K for their suggestions.

9.  References

9.1.  Normative References

   [BCP195]   Best Current Practice 195,
              <https://www.rfc-editor.org/info/bcp195>.
              At the time of writing, this BCP comprises the following:

              Moriarty, K. and S. Farrell, "Deprecating TLS 1.0 and TLS
              1.1", BCP 195, RFC 8996, DOI 10.17487/RFC8996, March 2021,
              <https://www.rfc-editor.org/info/rfc8996>.

              Sheffer, Y., Saint-Andre, P., and T. Fossati,
              "Recommendations for Secure Use of Transport Layer
              Security (TLS) and Datagram Transport Layer Security
              (DTLS)", BCP 195, RFC 9325, DOI 10.17487/RFC9325, November
              2022, <https://www.rfc-editor.org/info/rfc9325>.

   [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>.



Li, et al.                Expires 1 March 2025                  [Page 9]

Internet-Draft               VENDOR-STATEFUL                 August 2024


   [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>.

   [RFC5511]  Farrel, A., "Routing Backus-Naur Form (RBNF): A Syntax
              Used to Form Encoding Rules in Various Routing Protocol
              Specifications", RFC 5511, DOI 10.17487/RFC5511, April
              2009, <https://www.rfc-editor.org/info/rfc5511>.

   [RFC7470]  Zhang, F. and A. Farrel, "Conveying Vendor-Specific
              Constraints in the Path Computation Element Communication
              Protocol", RFC 7470, DOI 10.17487/RFC7470, March 2015,
              <https://www.rfc-editor.org/info/rfc7470>.

   [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>.

   [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>.

9.2.  Informative References

   [I-D.ietf-pce-pcep-yang]
              Dhody, D., Beeram, V. P., Hardwick, J., and J. Tantsura,
              "A YANG Data Model for Path Computation Element
              Communications Protocol (PCEP)", Work in Progress,
              Internet-Draft, draft-ietf-pce-pcep-yang-25, 21 May 2024,
              <https://datatracker.ietf.org/doc/html/draft-ietf-pce-
              pcep-yang-25>.

   [RFC2578]  McCloghrie, K., Ed., Perkins, D., Ed., and J.
              Schoenwaelder, Ed., "Structure of Management Information
              Version 2 (SMIv2)", STD 58, RFC 2578,
              DOI 10.17487/RFC2578, April 1999,
              <https://www.rfc-editor.org/info/rfc2578>.





Li, et al.                Expires 1 March 2025                 [Page 10]

Internet-Draft               VENDOR-STATEFUL                 August 2024


   [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>.

   [RFC8051]  Zhang, X., Ed. and I. Minei, Ed., "Applicability of a
              Stateful Path Computation Element (PCE)", RFC 8051,
              DOI 10.17487/RFC8051, January 2017,
              <https://www.rfc-editor.org/info/rfc8051>.

   [RFC8253]  Lopez, D., Gonzalez de Dios, O., Wu, Q., and D. Dhody,
              "PCEPS: Usage of TLS to Provide a Secure Transport for the
              Path Computation Element Communication Protocol (PCEP)",
              RFC 8253, DOI 10.17487/RFC8253, October 2017,
              <https://www.rfc-editor.org/info/rfc8253>.

   [RFC9371]  Baber, A. and P. Hoffman, "Registration Procedures for
              Private Enterprise Numbers (PENs)", RFC 9371,
              DOI 10.17487/RFC9371, March 2023,
              <https://www.rfc-editor.org/info/rfc9371>.

Appendix A.  Contributor Addresses

   Dhruv Dhody
   Huawei
   India

   EMail: dhruv.ietf@gmail.com

   Mike Koldychev
   Ciena

   EMail: mkoldych@proton.me

Authors' Addresses

   Cheng Li
   Huawei Technologies
   Huawei Campus, No. 156 Beiqing Rd.
   Beijing
   100095
   China
   Email: c.l@huawei.com


   Haomian Zheng
   Huawei Technologies
   H1, Huawei Xiliu Beipo Village, Songshan Lake



Li, et al.                Expires 1 March 2025                 [Page 11]

Internet-Draft               VENDOR-STATEFUL                 August 2024


   Dongguan
   Guangdong, 523808
   China
   Email: zhenghaomian@huawei.com


   Siva Sivabalan
   Ciena
   385 Terry Fox Drive
   Kanata Ontario K2K 0L1
   Canada
   Email: msiva282@gmail.com


   Samuel Sidor
   Cisco Systems, Inc.
   Email: ssidor@cisco.com


   Zafar Ali
   Cisco Systems, Inc.
   Email: zali@cisco.com





























Li, et al.                Expires 1 March 2025                 [Page 12]