<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent">

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" docName="draft-ietf-pce-association-policy-16" number="9005" ipr="trust200902" obsoletes="" submissionType="IETF" category="std" consensus="true" updates="" xml:lang="en" tocInclude="true" tocDepth="4" symRefs="true" sortRefs="true" version="3">

  <front>
    <title abbrev="PCEP Extensions for Policy Association">Path Computation Element Communication
    Protocol (PCEP) Extension for Associating Policies and Label Switched
    Paths (LSPs)</title>
    <seriesInfo name="RFC" value="9005"/>
    <author fullname="Stephane Litkowski" initials="S." surname="Litkowski">
      <organization>Cisco Systems, Inc.</organization>
      <address>
        <postal>
          <street>11 Rue Camille Desmoulins</street>
          <city>Issy-les-Moulineaux</city>
          <region/>
          <code>92130</code>
          <country>France</country>
        </postal>
        <email>slitkows@cisco.com</email>
      </address>
    </author>
    <author fullname="Siva Sivabalan" initials="S." surname="Sivabalan">
      <organization>Ciena</organization>
      <address>
        <postal>
          <street>385 Terry Fox Drive</street>
          <city>Kanata</city>
          <region>Ontario</region>
          <code>K2K 0L1</code>
          <country>Canada</country>
        </postal>
        <email>msiva282@gmail.com</email>
      </address>
    </author>
    <author fullname="Jeff Tantsura" initials="J" surname="Tantsura">
      <organization>Juniper Networks</organization>
      <address>
        <email>jefftant.ietf@gmail.com</email>
      </address>
    </author>

    <author fullname="Jonathan Hardwick" initials="J" surname="Hardwick">
      <organization>Metaswitch Networks</organization>
      <address>
        <postal>
          <street>33 Genotin Road</street>
          <city>Enfield</city>
          <code/>
          <country>United Kingdom</country>
        </postal>
        <email>Jonathan.Hardwick@metaswitch.com</email>
      </address>
    </author>
    <author fullname="李呈" asciiFullname="Cheng Li">
      <organization ascii="Huawei Technologies">华为技术有限公司</organization>
      <address>
        <postal>
	 <street ascii="Huawei Campus, No. 156 Beiqing Rd.">华为北研所</street>
          <city ascii="Beijing">北京</city>
          <region/>
          <code>100095</code>
          <country ascii="China">中国</country>
        </postal>
        <phone/>
        <email>c.l@huawei.com</email>
        <uri/>
      </address>
    </author>
    <date month="March" year="2021"/>
    <area>Routing</area>
    <workgroup>PCE Working Group</workgroup>
    <keyword>Association</keyword>
    <keyword>Policy</keyword>
    <abstract>
      <t>This document introduces a simple mechanism to associate policies with
      a group of Label Switched Paths (LSPs) via an extension to the Path
      Computation Element Communication Protocol (PCEP). The extension
      allows a PCEP speaker to advertise to a PCEP peer that a particular LSP
      belongs to a particular Policy Association Group (PAG).</t>
    </abstract>
  </front>
  <middle>
    <section toc="default" numbered="true">
      <name>Introduction</name>
      <t><xref target="RFC5440" format="default"/> describes the Path Computation Element
      Communication Protocol (PCEP), which enables the communication between a
      Path Computation Client (PCC) and a Path Control Element (PCE) or
      between two PCEs based on the PCE architecture <xref target="RFC4655" format="default"/>.
      <xref target="RFC5394" format="default"/> provides additional details on policy within
      the PCE architecture and also provides context for the support of PCE
      policy.</t>
      <t>"Path Computation Element Communication Protocol (PCEP) Extensions for Stateful PCE" (<xref target="RFC8231" format="default"/>)
      describes a set of extensions to PCEP to enable active control of
      Multiprotocol Label Switching Traffic Engineering (MPLS-TE) and
      Generalized MPLS (GMPLS) tunnels. <xref target="RFC8281" format="default"/> describes the
      setup and teardown of PCE-initiated LSPs under the active stateful PCE
      model without the need for local configuration on the PCC, thus
      allowing for a dynamic network. Currently, the LSPs can either be
      signaled via Resource Reservation Protocol Traffic Engineering (RSVP-TE)
      or segment routed as specified in <xref target="RFC8664" format="default"/>.</t>
      <t><xref target="RFC8697" format="default"/> introduces a generic mechanism to create a
      grouping of LSPs that can then be used to define associations between a
      set of LSPs and a set of attributes (such as configuration parameters or
      behaviors) and is equally applicable to stateful PCE (active and passive
      modes) and stateless PCE.</t>
      <t>This document specifies a PCEP extension to associate one or more
      LSPs with policies using the generic association mechanism.</t>
      <t>A PCEP speaker may want to influence the PCEP peer with respect to
      path selection and other policies. This document describes a PCEP
      extension to associate policies by creating a Policy Association Group
      (PAG) and encoding this association in PCEP messages. The specification
      is applicable to both stateful and stateless PCEP sessions.</t>
      <t>Note that the actual policy definition and the associated parameters
      are out of scope of this document.</t>
      <section toc="default" numbered="true">
        <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&nbsp;14 <xref target="RFC2119"/> <xref target="RFC8174"/> 
    when, and only when, they appear in all capitals, as shown here.
        </t>

     </section>
    </section>
    <section toc="default" numbered="true">
      <name>Terminology</name>
      <t>The following terminology is used in this document.</t>
      <dl newline="false" spacing="normal">
        <dt>Association parameters:</dt>
        <dd>As described in <xref target="RFC8697" format="default"/>, the combination of the mandatory fields
          Association Type, Association ID, and Association Source in the
          ASSOCIATION object uniquely identifies the association group. If the
          optional TLVs -- Global Association Source or Extended Association ID -- are included, then they are included in combination with mandatory
          fields to uniquely identify the association group.</dd>
        <dt>Association information:</dt>
        <dd>As described in <xref target="RFC8697" format="default"/>, the ASSOCIATION object could include other
          optional TLVs based on the Association Types that provide
          "information" related to the association.</dd>



        <dt>LSR:</dt>
        <dd>Label Switching Router</dd>
        <dt>MPLS:</dt>
        <dd>Multiprotocol Label Switching</dd>
        <dt>PAG:</dt>
        <dd>Policy Association Group</dd>
        <dt>PAT:</dt>
        <dd>Policy Association Type</dd>
        <dt>PCC:</dt>
        <dd>Path Computation Client; any client application requesting a
      path computation to be performed by a Path Computation Element.</dd>
        <dt>PCE:</dt>
        <dd>Path Computation Element; an entity (component,
          application, or network node) that is capable of computing a network
          path or route based on a network graph and applying computational
          constraints.</dd>
        <dt>PCEP:</dt>
        <dd>Path Computation Element Communication
          Protocol</dd>
      </dl>
    </section>
    <section toc="default" numbered="true">
      <name>Motivation</name>
      <t>Paths computed using PCE can be subjected to various policies at both
      the PCE and the PCC. For example, in a centralized TE scenario, network operators may instantiate LSPs and specify
      policies for traffic accounting, path monitoring, telemetry, etc., for
      some LSPs via the stateful PCE. Similarly, a PCC could request a user-specific
      or service-specific policy to be applied at the PCE, such as a constraints
      relaxation policy, to meet optimal QoS and resiliency levels.</t>
      <t>PCEP speakers can use the generic mechanism of <xref target="RFC8697" format="default"/> to associate a set of LSPs with a policy, without the need to know the
   details of such a policy.  This simplifies network operations, avoids
   frequent software upgrades, and provides the ability to
   introduce new policies more quickly.</t>
      <figure anchor="fig1">
        <name>Sample Use Cases for Carrying Policies over PCEP</name>
        <artwork align="left" alt="" name="" type=""><![CDATA[
                                                         PAG Y
                                          {Service-Specific Policy
                                                    for constraint
            Monitor LSP                                relaxation}
                 |                                          |
                 | PAG X                    PCReq/PCRpt     |    
                 V {Monitor LSP}            {PAG Y}         V 
              +-----+                   ----------------> +-----+
   _ _ _ _ _ _| PCE |                  |                  | PCE |
  |           +-----+                  |      ----------> +-----+
  | PCInitiate/PCUpd                   |     |    PCReq/PCRpt
  |{PAG X}                             |     |    {PAG Y}
  |                                    |     |
  |              .-----.               |     |         .-----.
  |             (       )              |  +----+      (       )
  |         .--(         )--.          |  |PCC1|--.--(         )--.
  V        (                 )         |  +----+ (                 )
+---+     (                   )        |        (                   )
|PCC|----(   (G)MPLS network    )   +----+     ( (G)MPLS network   )
+---+     (                   )     |PCC2|------(                   )
PAG X      (                 )      +----+       (                 )
{Monitor    '--(         )--'                     '--(         )--'
LSP}            (       )                             (       )
                 '-----'                               '-----'

Case 1: Policy requested by PCE        Case 2: Policy requested by 
        and enforced by PCC                    PCC and enforced by 
                                               PCE   
]]></artwork>
      </figure>
      <section toc="default" numbered="true">
        <name>Policy-Based Constraints</name>
        <t>In the context of a policy-enabled path computation framework <xref target="RFC5394" format="default"/>, path computation policies may be applied at a PCC, a PCE, or both.
        A Label Switching Router (LSR) with a policy-enabled PCC can receive: </t>
        <ul spacing="normal">
          <li>A service request via signaling, including
        over a Network-Network Interface (NNI) or User-Network Interface (UNI)
        reference point.</li>
          <li>A configuration request over a management
        interface to establish a service.</li>
        </ul>
        <t>The PCC may apply user-specific or
        service-specific policies to decide how the path selection process
        should be constrained -- that is, which constraints, diversities,
        optimization criteria, and constraint-relaxation strategies should be
        applied to increase the likelihood that the service LSP(s) will be successfully established and will provide the necessary QoS and resilience
        against network failures. The user-specific or service-specific policies are applied to the PCC and are then passed to the PCE along with the path
        computation request in the form of constraints <xref target="RFC5394" format="default"/>.</t>
        <t>The PCEP speaker can use the generic mechanism as per <xref target="RFC8697" format="default"/> to associate a set of LSPs with user-specific or service-specific policies. This would simplify the path
        computation message exchanges in PCEP.</t>
      </section>
    </section>
    <section toc="default" numbered="true">
      <name>Overview</name>
      <t>As per <xref target="RFC8697" format="default"/>, LSPs are associated with other LSPs
      with which they interact by adding them to a common association group.
      Grouping can also be used to define the association between LSPs and the policies associated with them. As described in <xref target="RFC8697" format="default"/>,
      the association group is uniquely identified by the combination of the
      following fields in the ASSOCIATION object: Association Type,
      Association ID, Association Source, and (if present) Global Association
      Source or Extended Association ID. This document defines a new
      Association Type called "Policy Association" with value 3 based on the
      generic ASSOCIATION object. This new Association Type is called
"Policy Association Type" (PAT).</t>
      <t><xref target="RFC8697" format="default"/> specifies the mechanism for the capability
      advertisement of the Association Types supported by a PCEP speaker by
      defining an ASSOC-Type-List TLV to be carried within an OPEN object. This
      capability exchange for the PAT <bcp14>MUST</bcp14> be done before using the
      Policy Association. Thus, the PCEP speaker <bcp14>MUST</bcp14> include the PAT in
      the ASSOC-Type-List TLV and <bcp14>MUST</bcp14> receive the same from the PCEP peer
      before using the PAG in PCEP messages.</t>
      <t>The Policy Association Type (3) is operator configured (as specified in <xref target="RFC8697" format="default"/>),
      i.e., the association is created by the operator manually on the PCEP
      peers, and an LSP belonging to this association is conveyed via PCEP
      messages to the PCEP peer. There is no need to convey an explicit
      Operator-configured Association Range, which could only serve to
      artificially limit the available Association IDs. Thus, for the Policy Association Type, the Operator-configured Association Range <bcp14>MUST
      NOT</bcp14> be set and <bcp14>MUST</bcp14> be ignored if received.</t>
      <t>A PAG can have one or more LSPs. The association parameters including
      Association Identifier, Policy Association Type (PAT), as well as the
      Association Source IP address are manually configured by the operator and
      are used to identify the PAG as described in <xref target="RFC8697" format="default"/>.
      The Global Association Source and Extended Association ID <bcp14>MAY</bcp14> also be
      included.</t>

      <t>As per the processing rules specified in <xref target="RFC8697" sectionFormat="of" section="6.4"/>, if a PCEP speaker does not support this Policy
      Association Type, it would return a PCEP error (PCErr) message with Error-Type 26
      "Association Error" and Error-value 1 "Association type is not
      supported". The PAG and the policy
      <bcp14>MUST</bcp14> be configured on the PCEP peers as per the operator-configured
      association procedures. All further processing is as per <xref target="RFC8697" sectionFormat="of" section="6.4"/>. If a PCE speaker receives a PAG in a PCEP
      message and the Policy Association information is not configured, it
      <bcp14>MUST</bcp14> return a PCErr message with Error-Type 26 "Association Error" and
      Error-value 4 "Association unknown". 
      </t>
      <t>Associating a particular LSP with multiple policy groups is allowed
      from a protocol perspective; however, there is no assurance that the
      PCEP speaker will be able to apply multiple policies. If a PCEP speaker
      does not support handling of multiple policies for an LSP, it <bcp14>MUST NOT</bcp14>
      add the LSP into the association group and <bcp14>MUST</bcp14> return a PCErr with
      Error-Type 26 "Association Error" and Error-value 7 "Cannot join the
      association group".</t>
    </section>
    <section toc="default" numbered="true">
      <name>Policy Association Group</name>
      <t>Association groups and their memberships are defined using the
      ASSOCIATION object defined in <xref target="RFC8697" format="default"/>. Two object types
      for IPv4 and IPv6 are defined. The ASSOCIATION object includes
      "Association type" indicating the type of the association group. This
      document adds a new Association Type, Policy Association Type (PAT).</t>
      <t>PAG may carry optional TLVs including but not limited to:</t>
 <dl newline="true">
        <dt>POLICY-PARAMETERS-TLV:</dt><dd>Used to communicate opaque information useful to applying the policy, described in <xref target="policy-tlv" format="default"/>.</dd>
        <dt>VENDOR-INFORMATION-TLV:</dt><dd>Used to communicate arbitrary vendor-specific behavioral information, described in <xref target="RFC7470" format="default"/>.</dd>
      </dl>
      <section anchor="policy-tlv" toc="default" numbered="true">
        <name>POLICY-PARAMETERS-TLV</name>
<t>
   The ASSOCIATION object (for PAT) can carry an optional  
   POLICY-PARAMETERS-TLV with opaque information that is needed to apply 
   the policy at the PCEP peer. In some cases, to apply a PCE policy
        successfully, it is required to also associate some policy parameters
        that need to be evaluated. This TLV is used to carry those policy
        parameters. The TLV could include one or more policy-related
        parameters. The encoding format and the order <bcp14>MUST</bcp14> be known to the
        PCEP peers; this could be done during the configuration of the policy
        (and its association parameters) for the PAG. The TLV format is as per
        the format of the PCEP TLVs, as defined in <xref target="RFC5440" format="default"/>
        and shown in <xref target="fig-policy-tlv" format="default"/>. Only one
        POLICY-PARAMETERS-TLV can be carried, and only the first occurrence is
        processed. Any others <bcp14>MUST</bcp14> be ignored.</t>
        <figure anchor="fig-policy-tlv">
          <name>The POLICY-PARAMETERS-TLV Format</name>
          <artwork align="left" alt="" name="" type=""><![CDATA[
    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=48               |          Length               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               | 
   //                     Policy Parameters                       //
   |                                                               |
   +---------------------------------------------------------------+
]]></artwork>
        </figure>

        <t>The POLICY-PARAMETERS-TLV type is 48, and it has a variable
        length. The Value field is variable and padded to a 4-byte alignment;
        padding is not included in the Length field. The PCEP peer
        implementation needs to be aware of the encoding format, order, and
        meaning of the policy parameters well in advance based on the
        policy. Note that from the protocol point of view, this data is opaque
        and can be used to carry parameters in any format understood by the
        PCEP peers and associated with the policy. The exact use of this TLV is
        beyond the scope of this document. Examples are included for
        illustration purposes in <xref target="example" format="default"/>.</t>
        <t>If the PCEP peer is unaware of the policy parameters associated
        with the policy and it receives the POLICY-PARAMETERS-TLV, it <bcp14>MUST</bcp14>
        reject the PCEP message and send a PCErr message with Error-Type 26
        "Association Error" and Error-value 12 "Not expecting policy
        parameters". Further, if at least one parameter in the
        POLICY-PARAMETERS-TLV received by the PCEP speaker is considered unacceptable in the context of the associated policy (e.g., out of
        range value, badly encoded value, etc.), the PCEP speaker <bcp14>MUST</bcp14> reject the
        PCEP message and send a PCErr message with Error-Type 26 "Association
        Error" and Error-value 13 "Unacceptable policy parameters".</t>
        <t>Note that the vendor-specific behavioral information is encoded in the VENDOR-INFORMATION-TLV, which can be used along with this TLV.</t>
      </section>
    </section>
    <section toc="default" numbered="true">
      <name>Security Considerations</name>
      <t>The security considerations described in <xref target="RFC8697" format="default"/>, 
   <xref target="RFC8231" format="default"/>, <xref target="RFC5394" format="default"/>, and <xref target="RFC5440" format="default"/> apply to the 
   extensions described in this document as well. In particular,
   a malicious PCEP speaker could be spoofed and used as an attack vector
   by creating spurious Policy Associations as described in <xref target="RFC8697" format="default"/>. 
   Further, as described in <xref target="RFC8697" format="default"/>, a spurious LSP can have policies that are inconsistent with those of the
   legitimate LSPs of the group and, thus, cause problems in the handling of the policy for the
   legitimate LSPs. It should be noted that Policy Association could provide an adversary with the
   opportunity to eavesdrop on the relationship between the LSPs. <xref target="RFC8697" format="default"/> suggests that the implementations and operators use indirect values as a way to hide any sensitive business
   relationships. Thus, securing the PCEP session using Transport Layer Security (TLS)
   <xref target="RFC8253" format="default"/>, as per the recommendations and best current practices in
   BCP 195 <xref target="RFC7525" format="default"/>, is <bcp14>RECOMMENDED</bcp14>.</t>

      <t>Further, extra care needs to be taken by the implementation with respect to the
      POLICY-PARAMETERS-TLV while decoding, verifying, and applying these
      policy variables. This TLV parsing could be exploited by an
      attacker; thus, extra care must be taken while configuring a Policy Association that uses the POLICY-PARAMETERS-TLV and making sure that the data is easy to parse and verify before use. Ensuring agreement among all
relevant PCEP peers as to the format and layout of the policy parameters information is key for 
correct operations. Note that the parser for POLICY-PARAMETERS-TLV is particularly
sensitive since it is opaque to PCEP and can be used to
convey data with many different internal structures/formats. The choice of decoder is dependent on the additional metadata
associated with the policy; thus, additional risk of using a wrong decoder and getting garbage results is incurred. Using standard and well-known policy formats could help
alleviate those risks.
</t>
      <t/>
    </section>
    <section toc="default" numbered="true">
      <name>IANA Considerations</name>
      <section toc="default" numbered="true">
        <name>ASSOCIATION Object Type Indicators</name>
        <t>This document defines a new Association Type in the subregistry
        "ASSOCIATION Type Field" of the "Path Computation Element Protocol
        (PCEP) Numbers" registry that was originally defined in <xref target="RFC8697" format="default"/>.</t>

<table>  
  <name/>
  <thead>
    <tr>
      <th>Value</th>
      <th>Name</th>
      <th>Reference</th>
    </tr>
  </thead>
  <tbody>         
    <tr>
      <td>3</td>
      <td>Policy Association</td>
      <td>RFC 9005</td>
    </tr>
  </tbody>
</table>
      </section>
      <section toc="default" numbered="true">
        <name>PCEP TLV Type Indicators</name>
        <t>The following TLV Type Indicator value has been registered within the
        "PCEP TLV Type Indicators" subregistry of the "Path Computation
        Element Protocol (PCEP) Numbers" registry.</t>
<table>  
  <name/>
  <thead>
    <tr>
      <th>Value</th>
      <th>Description</th>
      <th>Reference</th>
    </tr>
  </thead>
  <tbody>         
    <tr>
      <td>48</td>
      <td>POLICY-PARAMETERS-TLV</td>
      <td>RFC 9005</td>
    </tr>
  </tbody>
</table>
      </section>
      <section toc="default" numbered="true">
        <name>PCEP Errors</name>
        <t>This document defines new Error-values for Error-Type 26
        "Association Error" defined in <xref target="RFC8697" format="default"/>. IANA has allocated new error values within the "PCEP-ERROR Object
        Error Types and Values" subregistry of the "Path Computation Element Protocol (PCEP) Numbers" registry as
        follows:</t>

<table> 
  <name/>
  <thead>
    <tr>
      <th>Error-Type</th>
      <th>Meaning</th>
      <th>Error-value</th>
      <th>Reference</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>26</td>
      <td>Association Error</td>
      <td></td>
      <td><xref target="RFC8697"/></td>
    </tr>
    <tr>
      <td></td>
      <td></td>
      <td>12: Not expecting policy parameters</td>
      <td>RFC 9005</td>
    </tr>
    <tr>
      <td></td>
      <td></td>
      <td>13: Unacceptable policy parameters</td>
      <td>RFC 9005</td>
    </tr>
  </tbody>
</table>
      </section>
    </section>
    <section toc="default" numbered="true">
      <name>Manageability Considerations</name>
      <section toc="default" numbered="true">
        <name>Control of Function and Policy</name>

        <t>An operator <bcp14>MUST</bcp14> be allowed to configure the Policy Associations at
        PCEP peers and associate them with the LSPs. They <bcp14>MAY</bcp14> also allow
        configuration to related policy parameters and provide information on 
        the encoding format and order to parse the
        associated POLICY-PARAMETERS-TLV.</t>
      </section>
      <section toc="default" numbered="true">
        <name>Information and Data Models</name>
        <t><xref target="RFC7420" format="default"/> describes the PCEP MIB; there are no new
        MIB objects for this document.</t>
        <t>The PCEP YANG module is defined in <xref target="I-D.ietf-pce-pcep-yang" format="default"/>. That module supports associations
        as defined in <xref target="RFC8697" format="default"/>; thus, it supports the Policy
        Association Groups.</t>

        <t>An implementation <bcp14>SHOULD</bcp14> allow the operator to view the PAG
        configured. Further implementation <bcp14>SHOULD</bcp14> allow one to view associations
        reported by each peer and the current set of LSPs in the PAG.</t>
      </section>
      <section toc="default" numbered="true">
        <name>Liveness Detection and Monitoring</name>
        <t>The mechanisms defined in this document do not imply any new liveness
        detection and monitoring requirements in addition to those already
        listed in <xref target="RFC5440" format="default"/> and <xref target="RFC8231" format="default"/>.</t>
      </section>
      <section toc="default" numbered="true">
        <name>Verifying Correct Operations</name>
        <t>Verifying the correct operation of a policy can be
   performed by monitoring various parameters as described in <xref target="RFC5440" format="default"/> and <xref target="RFC8231" format="default"/>. A PCEP implementation
   <bcp14>SHOULD</bcp14> provide information on failed path computation due to applying policy and log error events, e.g., parsing failure for a POLICY-PARAMETERS-TLV.</t>
      </section>
      <section toc="default" numbered="true">
        <name>Requirements on Other Protocols</name>
        <t>The mechanisms defined in this document do not imply any new
        requirements on other protocols.</t>
      </section>
      <section toc="default" numbered="true">
        <name>Impact on Network Operations</name>
        <t>The mechanisms defined in this document do not have any impact on
        network operations in addition to those already listed in <xref target="RFC5440" format="default"/>, <xref target="RFC8231" format="default"/>, and <xref target="RFC8281" format="default"/>.</t>
      </section>
    </section>
  </middle>
  <back>

<displayreference target="I-D.ietf-pce-pcep-yang" to="PCE-PCEP-YANG"/>

    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5440.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8231.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8253.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8697.xml"/>
      </references>
      <references>
        <name>Informative References</name>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4655.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5905.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5394.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7420.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7470.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7525.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8281.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8664.xml"/>

<reference anchor='I-D.ietf-pce-pcep-yang'>
<front>
<title>A YANG Data Model for Path Computation Element Communications Protocol (PCEP)</title>

<author initials='D' surname='Dhody' fullname='Dhruv Dhody' role="editor">
    <organization />
</author>

<author initials='J' surname='Hardwick' fullname='Jonathan Hardwick'>
    <organization />
</author>

<author initials='V' surname='Beeram' fullname='Vishnu Beeram'>
    <organization />
</author>

<author initials='J' surname='Tantsura' fullname='Jeff Tantsura'>
    <organization />
</author>

<date month='February' day='22' year='2021' />

<abstract><t>This document defines a YANG data model for the management of Path Computation Element communications Protocol (PCEP) for communications between a Path Computation Client (PCC) and a Path Computation Element (PCE), or between two PCEs.  The data model includes configuration and state data.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-ietf-pce-pcep-yang-16' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-ietf-pce-pcep-yang-16.txt' />
</reference>

      </references>
    </references>
    <section anchor="example" toc="default" numbered="true">
      <name>Example of Policy Parameters</name>
      <t>An example could be a monitoring and telemetry policy, P1, that is
      dependent on a profile (GOLD/SILVER/BRONZE) as set by the operator. The
      PCEP peers need to be aware of policy P1 (and its associated
      characteristics) in advance as well the fact that the policy parameter
      will encode the profile of a type string in the POLICY-PARAMETERS-TLV. As
      an example, LSP1 could encode the PAG with the POLICY-PARAMETERS-TLV
      using the string "GOLD".</t>
      <t>The following is another example where the path computation at the PCE could be dependent
      on when the LSP was configured at the PCC. For such a policy, P2, the
      timestamp can be encoded in the POLICY-PARAMETERS-TLV, and the exact
      encoding could be the 64-bit timestamp format as defined in <xref target="RFC5905" format="default"/>.</t>
      <t>While the above example has a single field in the
      POLICY-PARAMETERS-TLV, it is possible to include multiple fields, but
      the exact order, encoding format, and meanings need to be known in
      advance at the PCEP peers.</t>
    </section>
    <section toc="default" numbered="false">
      <name>Acknowledgments</name>
      <t>We would like to acknowledge and thank <contact fullname="Santiago Alvarez"/>, <contact fullname="Zafar Ali"/>, <contact fullname="Luis Tomotaki"/>, <contact fullname="Victor Lopez"/>, <contact fullname="Rob Shakir"/>, and <contact fullname="Clarence Filsfils"/> for working on earlier draft versions with similar motivation.</t>
      <t>Special thanks to the authors of <xref target="RFC8697" format="default"/>. This
      document borrowed some of its text. The authors would like to
      thank <contact fullname="Aijun Wang"/>, <contact fullname="Peng Shuping"/>, and <contact fullname="Gyan Mishra"/> for their useful
      comments.</t>
      <t>Thanks to <contact fullname="Hariharan Ananthakrishnan"/> for shepherding this document. Thanks to <contact fullname="Deborah Brungard"/> for providing comments and being the responsible AD for this document.</t>
      <t>Thanks to <contact fullname="Nic Leymann"/> for the RTGDIR review.</t>
      <t>Thanks to <contact fullname="Benjamin Kaduk"/> and <contact fullname="Murray Kucherawy"/> for their comments during the IESG review.</t>
    </section>
    <section toc="default" numbered="false">
      <name>Contributors</name>
<t>
The following individuals have contributed extensively: </t>

   <contact fullname="Mahendra Singh Negi" >
        <organization>RtBrick Inc</organization>
        <address>
          <postal>
            <street>N-17L, 18th Cross Rd, HSR Layout</street>
            <city>Bangalore</city>
            <region>Karnataka</region><code>560102</code>
            <country>India</country>
          </postal>
          <email>mahend.ietf@gmail.com</email>
        </address>
      </contact>

   <contact fullname="Dhruv Dhody">
        <organization>Huawei Technologies</organization>
        <address>
          <postal>
            <street>Divyashree Techno Park, Whitefield</street>
            <city>Bangalore</city>
            <region>Karnataka</region><code>560066</code>
            <country>India</country>
          </postal>
          <email>dhruv.ietf@gmail.com</email>
        </address>
      </contact>


<t>
The following individuals have contributed text that was incorporated: 
</t>
   <contact fullname="Qin Wu">
        <organization>Huawei Technologies</organization>
        <address>
          <postal>
            <street>101 Software Avenue, Yuhua District</street>
            <city>Nanjing</city>
            <region>Jiangsu</region><code>210012</code>
            <country>China</country>
          </postal>
          <email>sunseawq@huawei.com</email>
        </address>
      </contact>

   <contact fullname="Xian Zhang">
        <organization>Huawei Technologies</organization>
        <address>
          <postal>
            <street>Bantian, Longgang District</street>
            <city>Shenzhen</city>
            <region></region><code>518129</code>
            <country>China</country>
          </postal>
          <email>zhang.xian@huawei.com</email>
        </address>
      </contact>

   <contact fullname="Udayasree Palle">
        <organization></organization>
        <address>
          <postal>
            <street></street>
            <city></city>
            <region></region><code></code>
            <country></country>
          </postal>
          <email>udayasreereddy@gmail.com</email>
        </address>
      </contact>

   <contact fullname="Mike Koldychev">
        <organization>Cisco Systems, Inc.</organization>
        <address>
          <postal>
            <street></street>
            <city></city>
            <region></region><code></code>
            <country>Canada</country>
          </postal>
          <email>mkoldych@cisco.com</email>
        </address>
      </contact>
    </section>

  </back>
</rfc>
