<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.23 (Ruby 3.3.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-stone-pce-update-open-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.27.0 -->
  <front>
    <title abbrev="PCEP-UPDATE-OPEN">PCE Communication Protocol (PCEP) extensions for updating Open Message content</title>
    <seriesInfo name="Internet-Draft" value="draft-stone-pce-update-open-01"/>
    <author fullname="Andrew Stone">
      <organization>Nokia</organization>
      <address>
        <email>andrew.stone@nokia.com</email>
      </address>
    </author>
    <author fullname="Cheng Li">
      <organization>Huawei</organization>
      <address>
        <email>c.l@huawei.com</email>
      </address>
    </author>
    <author fullname="Samuel Sidor">
      <organization>Cisco</organization>
      <address>
        <email>ssidor@cisco.com</email>
      </address>
    </author>
    <date/>
    <area>Routing</area>
    <workgroup>PCE Working Group</workgroup>
    <abstract>
      <?line 42?>

<t>This document describes extensions to the Path Computation Element (PCE) Communication Protocol (PCEP) to permit a PCEP Speaker to update information previously exchanged during PCEP session establishment via the Open message.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Path Computation Element Working Group mailing list (pce@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/pce/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/astone282/draft-stone-pce-update-open"/>.</t>
    </note>
  </front>
  <middle>
    <?line 47?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The Path Computation Element (PCE) Communication Protocol (PCEP) <xref target="RFC5440"/> provides mechanisms for PCEs to perform path computations in response to requests from Path Computation Clients (PCCs).</t>
      <t><xref target="RFC5440"/> outlines the message exchange procedures that PCEP Speakers must follow upon initial connection to establish a PCEP Session. This procedure includes sending an Open Message containing an OPEN Object, which conveys various session characteristics such as protocol timers. The OPEN Object can be extended with TLVs to convey additional session characteristics, such as PCE capabilities (e.g., <xref target="RFC8408"/>) or specific values and ranges (e.g., <xref target="RFC8664"/> and <xref target="I-D.ietf-pce-controlled-id-space"/>). This information is exchanged only once per session and cannot be dynamically modified without tearing down and re-establishing the PCEP session, which can be operationally disruptive.</t>
      <t>Additionally, <xref target="RFC5440"/> specify a Notification Message (PCNtf) containing a NOTIFICATION Object, which a PCEP Speaker may use to notify the other speaker of an event.</t>
      <t>This document proposes a generic mechanism allowing a PCEP Speaker (PCC or PCE) to update previously exchanged Open Message information using a PCNtf Message with a new notification called "Open Refresh". This approach mitigates the need to terminate the session to modify any exchanged information.</t>
      <t>Note that <xref target="I-D.ietf-pce-controlled-id-space"/> also proposes using PCNtf Message to relay Open Messages between PCEs about each PCE's connected peers. It is anticipated that <xref target="I-D.ietf-pce-state-sync"/> will use a similar notification mechanism with a unique notification type, as the semantics of a PCEP Speaker exchanging its information differ from exchanging information related to a connected state-sync PCEs.</t>
      <t>This document describes a generic extension and mechanism to update Open Object content but future documents <bcp14>MAY</bcp14> describe further semantics on a per TLV basis.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>Open Refresh: The act of modifying content previously exchanged during PCEP Open Message in an ad-hoc manner without terminating the PCEP session.</t>
      <t>Open Refresh Notification message: An Open Refresh notification message is a new Notification Type to be used in the PCNtf Message (<xref target="RFC5440"/>) that will also contain the open information to be refreshed.</t>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <t>This section discusses some high-level considerations that should be considered when supporting Open Refresh. While scenarios described here exist in present-day PCEP, they require explicitly tearing down the PCEP session which gives a clear indication of potential system impact. With ad-hoc manipulation of open information, the impact of a possible change may not be evident so this section attempts to describe some of these considerations.</t>
      <section anchor="capability-change">
        <name>Capability Change</name>
        <t>One use case of the Open message is to exchange device software capabilities and feature enablement to determine whether a PCEP Speaker may support a given operation defined in PCEP extensions. If a PCEP speaker supports removal of a capability using Open Refresh, then all states related to the capability <bcp14>MUST</bcp14> be reset and removed and <bcp14>MUST</bcp14> follow the guidelines set out by the capability should the other PCEP speaker no longer support the capability. This may impact device-wide state and network traffic. For example, <xref target="RFC8281"/> defines the STATEFUL-PCE-CAPABILITY-TLV to indicate support for PCE-Initiated LSPs. The removal of this capability would result in PCE-Initiated LSPs being deleted from each PCEP Speaker.</t>
      </section>
      <section anchor="node-wide-property-change">
        <name>Node-wide Property Change</name>
        <t>One use case of the Open message is to exchange device-level configurations or settings. In the case of statefully delegated LSPs (<xref target="RFC8231"/>, the modification of these values may trigger path calculations for established LSPs with a possibility of LSP tear down.</t>
      </section>
      <section anchor="frequency-of-open-refresh">
        <name>Frequency of Open Refresh</name>
        <t>A PCEP implementation should consider the impact on the entire network before sending frequent Open Refresh Notifications. It could consider applying some form of dampening or back-off mechanism.</t>
      </section>
    </section>
    <section anchor="procedures">
      <name>Procedures</name>
      <section anchor="capability-advertisement">
        <name>Capability Advertisement</name>
        <t>A PCEP Speaker indicates support of Open Refresh during the PCEP Initialization phase (<xref target="RFC5440"/>). As per <xref target="RFC5440"/>, a PCEP Speaker sends an Open Message with exactly one OPEN object. This document defines a new flag, OPEN-REFRESH-CAPABILITY (R-bit), in the Open Message Flags field to indicate the support of the Open Refresh feature.</t>
        <ul spacing="normal">
          <li>
            <t>R (OPEN-REFRESH-CAPABILITY - 1 bit - TBD1): If set to 1 by a PCEP speaker, the PCEP speaker indicates that the PCEP speaker supports updating the information in the Open message without resetting the session.</t>
          </li>
        </ul>
        <t>If a PCEP speaker receives an Open Message that does not set the OPEN-REFRESH-CAPABILITY flag, the PCEP Speaker <bcp14>MUST NOT</bcp14> send Open Refresh messages to the remote PCEP speaker.</t>
      </section>
      <section anchor="open-refresh">
        <name>Open Refresh</name>
        <t>An Open Refresh is transmitted by sending a PCNtf Message (<xref target="RFC5440"/>) containing a NOTIFICATION Object with Notification-type=TBD2 (Open-Refresh):</t>
        <ul spacing="normal">
          <li>
            <t>Notification-value=1: Refresh the Open information. The NOTIFICATION Object encodes any TLV that can be encoded in an OPEN Object. The NOTIFICATION Object contains a snapshot of all unmodified and modified TLVs. Upon receiving an Open-Refresh Notification message, the PCEP Speaker compares the newly received TLVs with the previously received TLVs to determine what has changed. An omission of a TLV <bcp14>MUST</bcp14> be treated as a removal of the TLV and perform a necessary side effect(s) to the system state as if the TLV was never exchanged during session establishment via Open message.</t>
          </li>
        </ul>
        <section anchor="addingremoving-values-or-sub-tlvs">
          <name>Adding/removing values or Sub-TLVs</name>
          <t>If the PCEP Speaker determines it cannot support the Open-Refresh differential change(s), the PCEP Speaker generates a PCEP Error (PCErr) with Error-type=TBD3 (Unsupported-Open-Refresh) and error-value TBD4 and it <bcp14>SHOULD</bcp14> terminate the PCEP session.</t>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO Security</t>
    </section>
    <section anchor="managability-considerations">
      <name>Managability Considerations</name>
      <t>TODO</t>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>[Note to the RFC Editor - remove this section before publication, as well as remove the reference to RFC 7942.]</t>
      <t>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 <xref target="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.</t>
      <t>According to <xref target="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".</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="open-object-flag-field">
        <name>Open Object Flag Field</name>
        <t>IANA is requested to allocate a new bit value in the "Open Object Flag Field" registry:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Bit</th>
              <th align="center">Description</th>
              <th align="right">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">TBD1</td>
              <td align="center">OPEN-REFRESH-CAPABILITY</td>
              <td align="right">This document</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="notification-object">
        <name>NOTIFICATION Object</name>
        <t>IANA is requested to allocate a new Notification-type value in the "Notification Object" registry:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Notification-type</th>
              <th align="left">Name</th>
              <th align="left">Notification-value</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">TBD2</td>
              <td align="left">Open-Refresh</td>
              <td align="left">0: Unassigned</td>
              <td align="left">This document</td>
            </tr>
            <tr>
              <td align="left"> </td>
              <td align="left"> </td>
              <td align="left">1: Refresh the Open information</td>
              <td align="left">This document</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="pcep-error">
        <name>PCEP Error</name>
        <t>IANA is requested to allocate a new Error-type value in the "PCEP-ERROR Object Error Types and Values" registry:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Error-type</th>
              <th align="left">Meaning</th>
              <th align="left">Error-value</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">TBD3</td>
              <td align="left">Open-Refresh Error</td>
              <td align="left">0: Unassigned</td>
              <td align="left">This document</td>
            </tr>
            <tr>
              <td align="left"> </td>
              <td align="left"> </td>
              <td align="left">1: Open-Refresh is not supported</td>
              <td align="left">This document</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC5440">
          <front>
            <title>Path Computation Element (PCE) Communication Protocol (PCEP)</title>
            <author fullname="JP. Vasseur" initials="JP." role="editor" surname="Vasseur"/>
            <author fullname="JL. Le Roux" initials="JL." role="editor" surname="Le Roux"/>
            <date month="March" year="2009"/>
            <abstract>
              <t>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]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5440"/>
          <seriesInfo name="DOI" value="10.17487/RFC5440"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In 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.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 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.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC8664">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Segment Routing</title>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <author fullname="W. Henderickx" initials="W." surname="Henderickx"/>
            <author fullname="J. Hardwick" initials="J." surname="Hardwick"/>
            <date month="December" year="2019"/>
            <abstract>
              <t>Segment Routing (SR) enables any head-end node to select any path without relying on a hop-by-hop signaling technique (e.g., LDP or RSVP-TE). It depends only on "segments" that are advertised by link-state Interior Gateway Protocols (IGPs). An SR path can be derived from a variety of mechanisms, including an IGP Shortest Path Tree (SPT), an explicit configuration, or a Path Computation Element (PCE). This document specifies extensions to the Path Computation Element Communication Protocol (PCEP) that allow a stateful PCE to compute and initiate Traffic-Engineering (TE) paths, as well as a Path Computation Client (PCC) to request a path subject to certain constraints and optimization criteria in SR networks.</t>
              <t>This document updates RFC 8408.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8664"/>
          <seriesInfo name="DOI" value="10.17487/RFC8664"/>
        </reference>
        <reference anchor="RFC8408">
          <front>
            <title>Conveying Path Setup Type in PCE Communication Protocol (PCEP) Messages</title>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <author fullname="I. Minei" initials="I." surname="Minei"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <author fullname="J. Hardwick" initials="J." surname="Hardwick"/>
            <date month="July" year="2018"/>
            <abstract>
              <t>A Path Computation Element (PCE) can compute Traffic Engineering (TE) paths through a network; these paths are subject to various constraints. Currently, TE paths are Label Switched Paths (LSPs) that are set up using the RSVP-TE signaling protocol. However, other TE path setup methods are possible within the PCE architecture. This document proposes an extension to the PCE Communication Protocol (PCEP) to allow support for different path setup methods over a given PCEP session.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8408"/>
          <seriesInfo name="DOI" value="10.17487/RFC8408"/>
        </reference>
        <reference anchor="RFC8231">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Stateful PCE</title>
            <author fullname="E. Crabbe" initials="E." surname="Crabbe"/>
            <author fullname="I. Minei" initials="I." surname="Minei"/>
            <author fullname="J. Medved" initials="J." surname="Medved"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <date month="September" year="2017"/>
            <abstract>
              <t>The 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.</t>
              <t>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.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8231"/>
          <seriesInfo name="DOI" value="10.17487/RFC8231"/>
        </reference>
        <reference anchor="RFC8281">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for PCE-Initiated LSP Setup in a Stateful PCE Model</title>
            <author fullname="E. Crabbe" initials="E." surname="Crabbe"/>
            <author fullname="I. Minei" initials="I." surname="Minei"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <date month="December" year="2017"/>
            <abstract>
              <t>The 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.</t>
              <t>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.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8281"/>
          <seriesInfo name="DOI" value="10.17487/RFC8281"/>
        </reference>
        <reference anchor="RFC7942">
          <front>
            <title>Improving Awareness of Running Code: The Implementation Status Section</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>This document describes a simple process that allows authors of Internet-Drafts to record the status of known implementations by including an Implementation Status section. 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.</t>
              <t>This process is not mandatory. Authors of Internet-Drafts are encouraged to consider using the process for their documents, and working groups are invited to think about applying the process to all of their protocol specifications. This document obsoletes RFC 6982, advancing it to a Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="205"/>
          <seriesInfo name="RFC" value="7942"/>
          <seriesInfo name="DOI" value="10.17487/RFC7942"/>
        </reference>
        <reference anchor="I-D.ietf-pce-controlled-id-space">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) extension to advertise the PCE Controlled Identifier Space</title>
            <author fullname="Cheng Li" initials="C." surname="Li">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Hang Shi" initials="H." surname="Shi">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Aijun Wang" initials="A." surname="Wang">
              <organization>China Telecom</organization>
            </author>
            <author fullname="Weiqiang Cheng" initials="W." surname="Cheng">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Chao Zhou" initials="C." surname="Zhou">
              <organization>HPE</organization>
            </author>
            <date day="21" month="October" year="2024"/>
            <abstract>
              <t>   The Path Computation Element Communication Protocol (PCEP) provides a
   mechanism for the Path Computation Elements (PCEs) to perform path
   computations in response to Path Computation Clients (PCCs) requests.
   The Stateful PCE extensions allow stateful control of Multiprotocol
   Label Switching (MPLS) Traffic Engineering (TE) Label Switched Paths
   (LSPs) using PCEP.  Furthermore, PCE can be used for computing paths
   in the SR networks.

   Stateful PCE provides active control of MPLS-TE LSPs via PCEP, for a
   model where the PCC delegates control over one or more locally
   configured LSPs to the PCE.  Further, stateful PCE could also create
   and remove PCE-initiated LSPs by itself.  A PCE-based Central
   Controller (PCECC) simplify the processing of a distributed control
   plane by integrating with elements of Software-Defined Networking
   (SDN).

   In some use cases, such as PCECC provisioning or Binding Segment
   Identifier (SID) for Segment Routing (SR) allocation, there are
   requirements for a stateful PCE to make allocation of labels, SIDs,
   etc.  These use cases require PCE to be aware of various identifier
   spaces from where to make allocations on behalf of a PCC.  This
   document defines a generic mechanism by which a PCC can inform the
   PCE of the identifier space set aside for the PCE control via PCEP.
   The identifier could be an MPLS label, a SID, or any other identifier
   that can be allocated and managed by the PCE.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-controlled-id-space-01"/>
        </reference>
        <reference anchor="I-D.ietf-pce-state-sync">
          <front>
            <title>Procedures for Communication between Stateful Path Computation Elements</title>
            <author fullname="Haomian Zheng" initials="H." surname="Zheng">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Stephane Litkowski" initials="S." surname="Litkowski">
              <organization>Cisco</organization>
            </author>
            <author fullname="Siva Sivabalan" initials="S." surname="Sivabalan">
              <organization>Ciena Corporation</organization>
            </author>
            <author fullname="Cheng Li" initials="C." surname="Li">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="13" month="January" year="2025"/>
            <abstract>
              <t>   The Path Computation Element (PCE) Communication Protocol (PCEP)
   provides mechanisms for PCEs to perform path computation in response
   to a Path Computation Client (PCC) request.  The Stateful PCE
   extensions allow stateful control of Multi-Protocol Label Switching
   (MPLS) Traffic Engineering (TE) Label Switched Paths (LSPs) using
   PCEP.

   A Path Computation Client (PCC) can synchronize LSP state information
   to a Stateful Path Computation Element (PCE).  A PCC can have
   multiple PCEP sessions towards multiple PCEs.  In some use cases,
   inter-PCE stateful communication can bring additional resiliency in
   the design, for instance, when some PCC-PCE session fails.

   This document describes the procedures to allow stateful
   communication between PCEs for various use cases and also the
   procedures to prevent computational loops.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-state-sync-11"/>
        </reference>
      </references>
    </references>
    <?line 178?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to acknowledge Dhruv Dhody for the discussion and ideas related to this document.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
Mq5tAT/LM3Iu4tBu40qzUnaFxFdCVE4Zjf/YvEqaSUOts3h+pmQOZEtnZzir
5/XEaTydM1SDwJ9dJshUK1+X2D4vmeg2mMx2wIpY35mBFQSLj2tyu0GZTXvB
gVP2LUCPqyf3ii7yTCoT6qIjhkgR7TUv1wSPPb5MCDc3mhMHzDbztRcLKYFk
yOicOXYQOe8KlL5ghbTlm5g+x1wOAJ7V1rQgA032rQmfX8fBB1YZOLqoOWoP
L8yk625sFQFhTrOum4RJJ53ZDLwcOM6UnkdjH8oM+M5vfd1FExcVrCBVHA0n
TJlthkv68Gi5a+88aaaSDMpvTjaY7nkgqdD7lVgpXGNrOQ+LloJlZcW9Kgs9
B8aM1VlGVEWv8sTUNcurN4dIWKJv4Tk3t9Pb07O7ixAyhcfTq+nb84vz259D
yvNQjg8R08jmq+TwnOtNUuHFzZWv3joGYX/uqGDNGoBOq6T0dh4sAZ1z9JqE
07AwKM8SG0cSR/+Qxf70qPHhRX/Y4Vtom9tFVUMb1YKmJOwiP0y9WWRdVjt1
ojYs8aI9xp7X9GtoWtBAKrUWaCSCfXVJZi0LuyD7S7dBJ5EHGOlJNDVcvYOn
sAIsol6silcMgYx/oqcz7k6kEb/vxgMqOlGrJeegKBbhvKPW4NLDMjk/IWRh
Gl+bGUhomqbBXDYs1ZOJU+h91N8GNCnhBM8Yx40XCBzDcw2XjFDCTEf3YTaf
tySX89lV0yQZIuA0foBjWMena85b41Ht1q7x64GGajrR5BFx1sQ3F1W+JEfo
JeexmjqmyJ2HB0MgJE25reYKWxShGpXcA/B9kIxpuw//Th0gwSuEYp7oxQEP
D69Pz65Pb951gljtXYczW+4f1NSit+kZpsLDrEniXqRz9dNqpZlXa8anAKKt
6lrtPbV3qA4VNsf/t29PDvcnhOQEkdjqkDCyj+oHnYy9ZSPmGFvvmzzQNOnZ
Xbv9lXQ7/mvmx/DezGop33a+KUxkhDYMrMZixRneUD7ns/kW1i59iKWaU9QO
UfN89oy+old1/eyTFMFr2VeCxPkgtAeMlBCv0Klb2ZJACqpvenyf5ZrP9WzE
a7vBHVIF/R3M/QpuQRcaXoT9CflKbySj33eHk0bKxlDdFgVnlV1bA9SymE2y
4YqUTVE3DPld7Hl/p6P49HL+qBRULtU5YFDIGzUV0qbRxjV2/YMakWN1l3NB
Tw7SaZqGnysZdvgANZh10TR21smmdjrZRzRNLzuVT3/EgIRBGwAoTznjMVUp
mb9XErpESquZTlkYLZUvXvRyuOFxdO66IU6oE9FBCrgRZWAzn0ODe26/9lJP
nj0vccq2C63xM0WmLbbLtqfvCQZ3BC/g79SOTBd/ZVFpsk+lSBM31YyYi+M4
3tJzoyFIVdZt1S7p6hlPWjm+JBBxccwd5uNuDAOVR47Tosi4j4gv+2I8ftTE
x2u1d5f6jU0c9mKF1W14OJ+L4POIH0JmX7D3m36DohVp8cZEUCvRomGNd3ly
2bylke91qhdN1bBjNF/E9FnCDf6vXPCLtA/F6sANdRrbEucOPWHu1zSeKeQV
rBv5UgnusDZUy7p2ClespPaI16Z16T5t/OugQIX7c2+JXY4FIpe9T6n467Ma
V/tyc+NQ1xvM1GlN3/HXvvri0XQtIWWh4zRRk9pz6hWB/4QndJMrfR88nmnH
TXwiZtwi1Ynq9ZF+8TeDvwoMybu85oRDketmVX1cvjnwFyHUOISxnchJN8Q0
nDqRMc7h5F4uoyg1TkrobFGQexC9JqGd1ywA7AqFsOM+qGnTbGKbIxPAUiJG
pVrhRAO+yKV6kwHp5QbwG2eF0K66FCIRUY5IU3EFNzigogfIQXFHODWj7jCs
INUkAKJu9Q/uGqkTUHcIpBWihcElVszJyuDutZ1VcEZX37p4CWsVaieG42s0
X40THaWb9Fg6JwdcVJY6yUQRD9omVPNuexfzZFvUxAh7Xhsd0y0dldA6frBO
Fm21LGXgcCWqBbjxQVcuEfk385NMGCU5DzHKETuGbwJRHUo5wax5Pxxp7a/4
+drf1c6yQJVdDdoGnDSaBnApScMH4QyYNrecBYsqTaX7Fpv6nobreVM8MMJL
GyPiaCHIYi2Z35EybOsq0jwwMRH5zl4rKKouM0QXdA/gAxUaIcxYCd/09wJV
XmNOxy+3D83XRsMLN+ntk+goM2w5IrRkgJt+mG6hHxJNr31OfFmdEV1GdqEJ
1tXXvz4oYQ1m0ELNifwKgnseOtq92girLGD0YgOa9KjeYtqjOunAQ+/zSIzJ
46N/gkkTujl/pF/0LZyo4aTmw29pCrFyvHiKrj4Oyo7HQDSygz59mTq2iOJA
OT2uJAsPNLO9Ap7plekcc5tjfl57UES44/P42Z/PTwi9gl9t2aHHMB7Vy4m6
SyU+obTtz7YVHneMUo/Dn88Q6yet29KXLzNqS2sG1uQ/iDq9vr68rh1eSBH1
vAWnfmTSNjBxZ71HlCWagad3stMOM9r5ecbEX2Lv/8PCr3dbVg77vH2fM/AT
1oZ5e9v59NYwyp325b+uIfglxJtGRJUSEy8Y/YOPE/kjMxN/N5rrxJnRJ7nF
k78Qc76Bl9h7pmW6mW7UybKoHvBvFm+4X0X299cHNfADVvWg59qRbhz8Dz7y
NjqkJwAA

-->

</rfc>
