<?xml version="1.0" encoding="US-ASCII"?>
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC3472 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3472.xml">
<!ENTITY RFC4655 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4655.xml">
<!ENTITY RFC4657 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4657.xml">
<!ENTITY RFC5088 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5088.xml">
<!ENTITY RFC5089 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5089.xml">
<!ENTITY RFC5420 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5420.xml">
<!ENTITY RFC5440 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5440.xml">
<!ENTITY RFC5511 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5511.xml">
<!ENTITY RFC6163 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6163.xml">
<!ENTITY RFC7449 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.7449.xml">
<!ENTITY RFC7570 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.7570.xml">
<!ENTITY RFC7579 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.7579.xml">
<!ENTITY RFC7698 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.7698.xml">
<!ENTITY RFC7699 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.7699.xml">
<!ENTITY RFC7942 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.7942.xml">
<!ENTITY RFC8174 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.8174.xml">
<!ENTITY RFC8363 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.8363.xml">
<!ENTITY RFC8779 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.8779.xml">
<!ENTITY RFC8780 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.8780.xml">
]>

<rfc category="std" docName="draft-ietf-pce-flexible-grid-13" ipr="trust200902">
  <front>
    <title abbrev="PCEP Ext for Flexi-grid">PCEP Extension for Flexible Grid Networks</title>

    <author fullname="Haomian Zheng" initials="H." surname="Zheng" role="editor">
      <organization>Huawei Technologies Co., Ltd.</organization>
      <address>
        <email>zhenghaomian@huawei.com</email>
      </address>
    </author>

    <author fullname="Young Lee" initials="Y." surname="Lee">
      <organization>Samsung</organization>
      <address>
        <email>younglee.tx@gmail.com</email>
      </address>
    </author>

    <author fullname="Ramon Casellas" initials="R." surname="Casellas">
      <organization>CTTC</organization>
      <address>
        <email>ramon.casellas@cttc.es</email>
      </address>
    </author>

    <author fullname="Daniele Ceccarelli" initials="D." surname="Ceccarelli">
      <organization>Cisco</organization>
      <address>
        <email>dceccare@cisco.com</email>
      </address>
    </author>

    <date />

    <area>Routing Area</area>

    <workgroup>PCE Working Group</workgroup>

    <keyword>PCEP</keyword>
    <keyword>Flexi-grid</keyword>
    <keyword>Path Computation Element</keyword>

    <abstract>

      <t>This document provides the Path Computation Element Communication Protocol (PCEP) extensions
      for the support of Routing and Spectrum Assignment (RSA) in Flexible Grid networks.</t>

    </abstract>

  </front>

  <middle>
    <section title="Terminology">

      <t>This document uses the terminology defined in
         <xref target="RFC4655" />, <xref target="RFC5440" />, and <xref target="RFC7698" />.</t>

    </section>

    <section title="Requirements Language">

      <t>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
         <xref target="RFC2119" /> <xref target="RFC8174" /> when, and only when,
         they appear in all capitals, as shown here.</t>

    </section>

    <section title="Introduction">

      <t><xref target="RFC4655" /> defines a Path Computation Element (PCE)-based path computation
      architecture and explains how a Path Computation Element (PCE) may compute Label Switched Paths
      (LSP) in Multiprotocol Label Switching Traffic Engineering (MPLS-TE) and Generalized MPLS (GMPLS)
      networks at the request of Path Computation Clients (PCCs).  A PCC is said to be any network
      component that makes such a request and may be, for instance, an Optical Switching Element within
      a Wavelength Division Multiplexing (WDM) network.  The PCE, itself, can be located anywhere within
      the network, and may be within an optical switching element, a Network Management System (NMS) or
      Operational Support System (OSS), or may be an independent network server.</t>

      <t>The PCE communications Protocol (PCEP) is the communication protocol used between a PCC and a
      PCE, and can also be used between cooperating PCEs.  <xref target="RFC4657" /> sets out the common
      protocol requirements for PCEP.  Additional application-specific requirements for PCEP are deferred
      to separate documents.</t>

      <t><xref target="RFC8780" /> provides the PCEP extensions for the support of Routing and Wavelength
      Assignment (RWA) in Wavelength Switched Optical Networks (WSON) based on the requirements specified
      in <xref target="RFC6163" /> and <xref target="RFC7449" />.</t>

      <t>To allow efficient allocation of optical spectral bandwidth for systems that have high bit-rates,
      the International Telecommunication Union Telecommunication Standardization Sector (ITU-T) has
      extended its Recommendations <xref target="ITU-T_G.694.1" /> to include an enhanced Dense Wavelength
      Division Multiplexing (DWDM) grid by defining a set of nominal central frequencies, channel spacings,
      and the concept of the "frequency slot". In such an environment, a data-plane connection is switched
      based on allocated, variable-sized frequency ranges within the optical spectrum, creating what is
      known as a flexible grid (flexi-grid). <xref target="RFC7698" /> provides Framework and Requirements
      for GMPLS-Based Control of Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) Networks.</t>

      <t>The terms "Routing and Spectrum Assignment" (RSA) is introduced in <xref target="RFC7698" /> to
      refer to the process determines a route and frequency slot for an LSP. Hence, when a path is computed,
      the spectrum assignment process determines the central frequency and slot width.  The term "Spectrum
      Switched Optical Networks" is also introduced in <xref target="RFC7698" /> to refer to a flexi-grid
      enabled DWDM network, which can be controlled by a GMPLS or PCE control plane.</t>

      <t>This document provides PCEP extensions to support RSA in Flexi-grid networks.</t>

      <t><xref target="CRSA" /> shows one typical PCE-based implementation, which is referred to as the Combined Routing
      and Spectrum Assignment (RSA) <xref target="RFC7698" />. With this architecture, the two processes of
      routing and spectrum assignment are accessed via a single PCE. This architecture is the base
      architecture from which the PCEP extensions are specified in this document.</t>

      <figure anchor="CRSA" title="Combined Routing and Spectrum Assignment Architecture">
        <artwork align="center" name="" type="" alt="">
          <![CDATA[
                       +----------------------------+
         +-----+       |     +-------+     +--+     |
         |     |       |     |Routing|     |SA|     |
         | PCC |<----->|     +-------+     +--+     |
         |     |       |                            |
         +-----+       |             PCE            |
                       +----------------------------+
          ]]>
        </artwork>
      </figure>

    </section>

    <section anchor="SpectrumAssignment" title="Spectrum Assignment (SA) Object">

      <t>This document aligns with GMPLS extensions for PCEP <xref target="RFC8779" /> for generic property
      such as label, label-set and label assignment noting that frequency is a type of label. Frequency
      restrictions and constraints are also formulated in terms of labels per <xref target="RFC7579" />.</t>

      <t>Spectrum allocation can be performed by the PCE by different means:

         <ol type="a" spacing="normal">

            <li>By means of Explicit Label Control (ELC) where the PCE allocates which label to use for
            each interface/node along the path.</li>

            <li>By means of a Label Set where the PCE provides a range of potential frequency slots to
            allocate by each node along the path.</li>

         </ol>
      </t>

      <t>Option b. allows distributed spectrum allocation (performed during signaling) to complete spectrum
      assignment. Additionally, given a range of potential spectrums to allocate, a PC Request SHOULD convey
      the heuristic / mechanism to the allocation.</t>

      <t>The format Routing Backus-Naur Form (RBNF) <xref target="RFC5511" /> of a PCReq message per
      <xref target="RFC5440" /> after incorporating the Spectrum Assignment (SA) Object is as follows:</t>

      <figure>
        <artwork align="center" name="" type="" alt="">
          <![CDATA[
            <PCReq Message> ::= <Common Header>
                                   [<svec-list>]
                                   <request-list>
               Where:
            <request-list>::=<request>[<request-list>]
            <request>::= <RP>
                         <GENERALIZED ENDPOINTS>
                            [<SA>]
                            [other optional objects...]
          ]]>
        </artwork>
      </figure>

      <t>If the SA Object is present in the PCReq message, it MUST be encoded after the GENERALIZED ENDPOINTS Object.</t>

      <t>The SA Object-Class is TBD1 (to be assigned by IANA). The SA Object-Type is 1.</t>

      <t>The format of the Spectrum Assignment (SA) Object body is as shown in <xref target="SAobj" />.</t>

      <figure anchor="SAobj" title ="SA Object">
        <artwork align="center" name="" type="" alt="">
          <![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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |          Reserved             |           Flags             |M|
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   //                      Optional TLVs                          //
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
          ]]>
        </artwork>
      </figure>

      <t>Reserved (16 bits)</t>

      <t>Flags (16 bits)</t>

      <t>One Flag bit is allocated as follows:</t>

      <t>M (Mode - 1 bit): M bit is used to indicate the mode of spectrum assignment. When the M bit is set to 1,
      this indicates that the spectrum assigned by the PCE must be explicit. That is, the selected way to
      convey the allocated spectrum is by means of Explicit Label Control (ELC) <xref target="RFC3472" />
      for each hop of a computed LSP. Otherwise, when the M bit is set to 0, the spectrum assigned by the PCE needs not be explicit
      (i.e., it can be suggested in the form of Label Set Objects in the corresponding response, to allow
      distributed SA). In such case, the PCE MUST return a Label Set Field as described in Section 2.6 of
      <xref target="RFC7579" /> in the response. See <xref target="RSAPathReply" /> of this document for the encoding discussion
      of a Label Set Field in a PCRep message.</t>

      <section anchor="FSS-TLV" title="Frequency Slot Selection TLV">

        <t>The Frequency Slot Selection TLV is used to indicate the frequency slot selection constraint in
        regard to the order of frequency slot assignment to be returned by the PCE. This TLV is only applied
        when the M bit is set in the SA Object specified in <xref target="SpectrumAssignment" />. This TLV
        SHOULD NOT be present and MUST be ignored when the M bit is set to 0.</t>

        <t>The Frequency Slot Selection TLV value field is defined as:</t>

        <figure title ="">
          <artwork align="center" name="" type="" alt="">
            <![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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |S|  FSA Method  |                   Reserved                   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
             ]]>
          </artwork>
        </figure>

        <t>Frequency Slot Assignment (FSA) Method (7 bits):

          <ul spacing="normal">

             <li>0: unspecified (any); This does not constrain the SA method used by a PCC  This value is implied
             when the Frequency Slot Selection TLV is absent.</li>

             <li>1: First-Fit.  All the feasible frequency slots are numbered (based on 'n' parameter), and this
             SA method chooses the available frequency slot with the lowest index, where 'n' is the parameter in
             f = 193.1 THz + n x 0.00625 THz where 193.1THz is the ITU-T 'anchor frequency' and 'n' is a positive
             integer including 0 <xref target="RFC7698" />.</li>

             <li>2: Random.  This SA method chooses a feasible frequency slot value of 'n' randomly.</li>

             <li>3-127: Unassigned.</li>

          </ul>
        </t>

        <t>S (Symmetry, 1 bit):  This flag is only meaningful when the request is for a bidirectional LSP
        (see <xref target="RFC5440" />). 0 denotes requiring the same frequency slot in both directions; 1
        denotes that different spectrums on both directions are allowed.</t>

        <t>The Frequency Slot Selection TLV type is TBD2 (to be assigned by IANA).</t>

        <t>If a PCE does not support the attribute(s), its behavior is specified below:

          <ul spacing="normal">

            <li>S bit clear not supported: a PathErr MUST be generated with the Error Code "Routing Problem"
            (24) with error sub-code "Unsupported Frequency Slot Selection Symmetry value" (TBD3).</li>

            <li>FSA method not supported: a PathErr MUST be generated with the Error Code "Routing Problem"
            (24) with error sub-code "Unsupported Frequency Slot Assignment value" (TBD4).</li>

          </ul>
        </t>

      </section>

      <section anchor="FS-RC-TLV" title="Frequency Slot Restriction Constraint TLV">

        <t>For any request that contains a frequency slot assignment, the requester (PCC) must be able to
        specify a restriction on the frequency slots to be used. This restriction is to be interpreted by
        the PCE as a constraint on the tuning ability of the origination laser transmitter or on any other
        maintenance related constraints.</t>

        <t>The Frequency Slot Restriction Constraint TLV type is TBD5 (to be assigned by IANA).
        This TLV MAY appear more than once to be able to specify multiple restrictions.  The TLV data is
        defined as shown in <xref target="SRCtlv" />.</t>

        <figure anchor="SRCtlv" title ="Spectrum Restriction Constraint TLV Encoding">
          <artwork align="center" name="" type="" alt="">
      <![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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Action          |    Count      |          Reserved           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                     Link Identifiers                          |
    |                          . . .                                |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                Frequency Slot Restriction Field               |
    //                        . . . .                              //
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      ]]>
          </artwork>
        </figure>

        <t>The fields in the TLV are as follows:

          <ul spacing="normal">

            <li> Action: 8 bits.
              <ul spacing="normal">
                 <li>0 - Inclusive List indicates that one or more link identifiers are included in the
                 Link Set. Each identifies a separate link that is part of the set.</li>

                 <li>1 - Inclusive Range indicates that the Link Set defines a range of links.  It
                 contains two link identifiers. The first identifier indicates the start of the range
                 (inclusive). The second identifier indicates the end of the range (inclusive). All
                 links with numeric values between the bounds are considered to be part of the set. A
                 value of zero in either position indicates that there is no bound on the corresponding
                 portion of the range. Note that the Action field can be set to 0 when unnumbered link
                 identifier is used.</li>
              </ul></li>

            <li>Count: The number of the link identifiers (8 bits).</li>

            <li>Reserved: Reserved for future use (16 bits).</li>

            <li>Link Identifiers: Identifies each link ID for which restriction is applied. The length is
            dependent on the link format and the Count field. See Section 4.3.1 in <xref target="RFC8780" />
            for Link Identifier encoding. </li>

          </ul>
        </t>

        <t>A PCC MAY add a frequency slot restriction that applies to all links by setting the Count
        field to zero and specifying just a set of frequency slots.</t>

        <t>Note that all link identifiers in the same list must be of the same type.</t>

        <section anchor="FSR Field" title="Frequency Slot Restriction Field">

          <t>The Frequency Slot Restriction Field of the Frequency slot restriction TLV is encoded as defined
          in Section 4.2 of <xref target="RFC8363" />.</t>

        </section>

      </section>

    </section>

    <section anchor="RSAPathReply" title="Encoding of an RSA Path Reply">

       <t>This section provides the encoding of an RSA Path Reply, in the PCRep/PCUpd message, for frequency
       slot allocation as discussed in <xref target = "SpectrumAssignment" />. The Spectrum Allocation TLV type
       is TBD6 (to be assigned by IANA). The TLV data is defined as shown in <xref target="SAfig" />.</t>

       <t><xref target="RFC7570" /> describes how an attribute TLV (<xref target="RFC5420" />) can be carried
       in an ERO as a TLV within an LSP Attribute Subobject to provide a per-hop description of an LSP attribute.
       The Spectrum Assignment TLV can be carried in the LSP Attribute Subobject to indicate the spectrum to be
       assigned on the identified link.</t>

       <figure anchor="SAfig" title ="Spectrum Allocation TLV Encoding">
         <artwork align="center" name="" type="" alt="">
           <![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             |        Length               |M|
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                     Link Identifier                           |
    |                          . . .                                |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                    Allocated Spectrum                         |
    //                        . . . .                              //
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    ]]>
         </artwork>
       </figure>

       <t><ul spacing="normal">

          <li>Type (16 bits): The type of the TLV (TBD6).</li>

          <li>Length (15 bits): The length of the TLV including the Type and Length fields.</li>

          <li>M (Mode): 1 bit
             <ul spacing="normal">
               <li>1 indicates the allocation is under Explicit Label Control.</li>
               <li>0 indicates the allocation is expressed in Label Sets.</li>
             </ul></li>

          <li>Link Identifiers: Identifies each link ID for which restriction is applied. The length is
          dependent on the link format and the Count field. See Section 4.3.1 in <xref target="RFC8780" />
          for Link Identifier encoding.</li>

          <li>Allocated Spectrum (variable): Indicates the spectrum allocated to the link identifier.
          See Section 4.3 of <xref target="RFC7699" /> for encoding details.</li>

       </ul></t>

       <t>Note that all link identifiers in the same list must be of the same type.</t>

       <section anchor="Error-Indicator" title="Error Indicator">

          <t>To indicate errors associated with the RSA request, a new Error Type and subsequent
          error-values are defined as follows for inclusion in the PCEP-ERROR Object:</t>

          <t>A new Error-Type (TBD7) and subsequent error-values are defined as follows:

          <ul spacing="normal">

            <li>Error-Type=TBD7; Error-value=1: if a PCE receives an RSA request and the PCE is not capable
            of processing the request due to insufficient memory, the PCE MUST send a PCErr message with a
            PCEP-ERROR Object (Error-Type=TBD7) and an Error-value(Error-value=1).  The PCE stops processing
            the request.  The corresponding RSA request MUST be cancelled at the PCC.</li>

            <li>Error-Type=TBD7; Error-value=2: if a PCE receives an RSA request and the PCE is not capable
            of RSA computation, the PCE MUST send a PCErr message with a PCEP-ERROR Object (Error-Type=TBD7)
            and an Error-value (Error-value=2). The PCE stops processing the request.  The corresponding RSA
            computation MUST be cancelled at the PCC.</li>

         </ul></t>

       </section>

       <section anchor="NO-PATH-Indicator" title="NO-PATH Indicator">

          <t>To communicate the reasons for not being able to find RSA for the path request, the NO-PATH
          Object can be used in the corresponding response.  The format of the NO-PATH Object body is defined
          in [RFC5440].  The object may contain a NO-PATH-VECTOR TLV to provide additional information about
          why a path computation has failed.</t>

          <t> One new bit flag is defined to be carried in the Flags field in the NO-PATH-VECTOR TLV carried
          in the NO-PATH Object.

          <ul spacing="normal">

            <li>Bit TBD8: When set, the PCE indicates no feasible route was found that meets all the
            constraints (e.g., spectrum restriction, etc.) associated with RSA.</li>

         </ul></t>

       </section>

    </section>

    <section anchor="Management" title="Manageability Considerations">

       <t>Manageability of flexi-grid Routing and Spectrum Assignment (RSA) with PCE must address the
       following considerations:</t>

       <section anchor="Control Function" title="Control of Function and Policy">

         <t>In addition to the parameters already listed in Section 8.1 of <xref target="RFC5440" />, a
         PCEP implementation SHOULD allow configuring the following PCEP session parameters on a PCC:

         <ul spacing="normal">

            <li> The ability to send a Flexi-Grid RSA request. </li>

         </ul></t>

         <t>In addition to the parameters already listed in Section 8.1 of <xref target="RFC5440" />,
         a PCEP implementation SHOULD allow configuring the following PCEP session parameters on a PCE:

         <ul spacing="normal">

            <li>The support for Flexi-Grid RSA.</li>

            <li>A set of Flexi-Grid RSA specific policies (authorized sender, request rate limiter, etc).</li>

         </ul></t>

         <t>These parameters may be configured as default parameters for any PCEP session the PCEP speaker
         participates in, or may apply to a specific session with a given PCEP peer or a specific group of
         sessions with a specific group of PCEP peers.</t>

       </section>

       <section anchor="Info DM" title="Information and Data Models">

          <t>Extensions to the PCEP YANG module may include to cover the Flexi-Grid RSA information introduced
          in this document. 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 Section
          8.3 of <xref target="RFC5440" />.</t>

       </section>

       <section anchor="Correct Operation" title="Verifying Correct Operation">

          <t>Mechanisms defined in this document do not imply any new verification requirements in addition to
          those already listed in section 8.4 of <xref target="RFC5440" />.</t>

       </section>

       <section anchor="Protocols and Components" title="Requirements on Other Protocols and Functional Components">

          <t>The PCE Discovery mechanisms (<xref target="RFC5088" /> and <xref target="RFC5089" />) may be used
          to advertise Flexi-Grid RSA path computation capabilities to PCCs.</t>

       </section>

       <section anchor="Impact on Network Operation" title="Impact on Network Operation">

          <t>Mechanisms defined in this document do not imply any new network operation requirements in addition
          to those already listed in Section 8.6 of <xref target="RFC5440" />.</t>

       </section>

    </section>

    <section anchor="Implementation" title="Implementation Status">

       <t>[NOTE TO RFC EDITOR: This whole section and the reference to <xref target="RFC7942" /> is to be removed
       before publication as an RFC]</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" />.</t>

       <t>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 anchor="Huawei Technologies" title="Huawei Technologies">

          <t>At the time of posting the -10 version of this document, Huawei has implemented some of the features
          specified in this document, on the WDM network.  Details are as follow: </t>

          <figure>
            <artwork align="center" name="" type="" alt="">
              <![CDATA[
                Organization: Huawei Technologies Co.,Ltd.
                Implementation: Huawei's WDM systems
                Description: supporting PCE Protocol with WDM extensions
                Maturity Level: supported features
                Coverage: Partial
                Contact: zhenghaomian@huawei.com
              ]]>
            </artwork>
          </figure>

       </section>

    </section>

    <section anchor="Security" title="Security Considerations">

       <t>This document has no requirement for a change to the security models within PCEP. However, the additional
       information distributed in order to address the RSA problem represents a disclosure of network capabilities
       that an operator may wish to keep private. Consideration should be given to securing this information.</t>

    </section>

    <section anchor="IANA" title="IANA Considerations">

       <t>This document requests IANA actions to allocate code points for the objects and sub-registries defined in
       this document.</t>

       <section anchor="new object" title="New PCEP Object">

          <t>As described in <xref target="SpectrumAssignment" />, a new PCEP Object is defined to carry frequency slot assignment-related
          constraints. IANA is requested to allocate the following from 'PCEP Objects' sub-registry
          (http://www.iana.org/assignments/pcep/pcep.xhtml#pcep-objects):</t>

          <figure>
            <artwork align="center" name="" type="" alt="">
      <![CDATA[
        Object Class    Name    Object                  Reference
        Value                   Type
        -----------------------------------------------------------
        TBD1            SA      1: Spectrum Assignment  [This.I-D]

              ]]>
            </artwork>
          </figure>

       </section>

       <section title="New PCEP TLV: Frequency Slot Selection TLV">

          <t>As described in <xref target="FSS-TLV" />, a new PCEP TLV is defined to indicate spectrum selection constraints.
          IANA is requested to allocate this new TLV from the 'PCEP TLV Type Indicators' subregistry
          (http://www.iana.org/assignments/pcep/pcep.xhtml#pcep-tlv-type-indicators).</t>

          <figure>
            <artwork align="center" name="" type="" alt="">
          <![CDATA[
            Value               Description                 Reference
            ---------------------------------------------------------
            TBD2                Spectrum Selection          [This.I-D]


          ]]>
            </artwork>
          </figure>

       </section>

       <section title="New PCEP TLV: Frequency Slot Restriction Constraint TLV">

          <t>As described in <xref target="FS-RC-TLV" />, a new PCEP TLV is defined to indicate wavelength restriction constraints.
          IANA is requested to allocate this new TLV from the 'PCEP TLV Type Indicators' subregistry
          (http://www.iana.org/assignments/pcep/pcep.xhtml#pcep-tlv-type-indicators).</t>

          <figure>
            <artwork align="center" name="" type="" alt="">
          <![CDATA[
            Value           Description                     Reference
            ---------------------------------------------------------
            TBD5            Frequency Slot Restriction      [This.I-D]
                            Constraint
         ]]>
            </artwork>
          </figure>

       </section>

       <section title="New PCEP TLV: Spectrum Allocation TLV">

          <t>As described in <xref target="RSAPathReply" />, a new PCEP TLV is defined to indicate the allocation of frequency slots(s)
          by the PCE in response to a request by the PCC. IANA is requested to allocate this new TLV from the "PCEP TLV
          Type Indicators" subregistry (http://www.iana.org/assignments/pcep/pcep.xhtml#pcep-tlv-type-indicators).</t>

          <figure>
            <artwork align="center" name="" type="" alt="">
          <![CDATA[
            Value           Description             Reference
            ---------------------------------------------------------
            TBD6            Spectrum Allocation     [This.I-D]
          ]]>
            </artwork>
          </figure>

       </section>

       <section title="New No-Path Reasons">

          <t>As described in <xref target="NO-PATH-Indicator" />, a new bit flag are defined to be carried in the Flags field in the
          NO-PATH-VECTOR TLV carried in the NO-PATH Object. This flag, when set, indicates that no feasible
          path was found that meets all the RSA constraints (e.g., spectrum restriction, signal compatibility,
          etc.) associated with an RSA path computation request.</t>

          <t>IANA is requested to allocate this new bit flag from the "PCEP NO-PATH-VECTOR TLV Flag Field" subregistry
          (http://www.iana.org/assignments/pcep/pcep.xhtml#no-path-vector-tlv).</t>

          <figure>
            <artwork align="center" name="" type="" alt="">
          <![CDATA[
            Bit             Description                 Reference
            ---------------------------------------------------------
            TBD8            No RSA constraints met      [This.I-D]
          ]]>
            </artwork>
          </figure>

       </section>

       <section title="New Error-Types and Error-Values">

          <t>As described in <xref target="Error-Indicator" />, new PCEP error codes are defined for WSON RWA errors. IANA is requested to allocate
          from the 'PCEP-ERROR Object Error Types and Values' sub-registry
          (http://www.iana.org/assignments/pcep/pcep.xhtml#pcep-error-object)</t>

          <figure>
            <artwork align="center" name="" type="" alt="">
      <![CDATA[
        Error-  Meaning                 Error-Value         Reference
        Type
        -----------------------------------------------------------
        TBD7    Flexi-Grid RSA Error    1: Insufficient     [This.I-D]
                                           Memory
                                        2: RSA computation  [This.I-D]
                                         Not supported
      ]]>
            </artwork>
          </figure>

       </section>

       <section title="New Error-Values for Existing Error Type (24)">

          <t>As discussed in <xref target="FSS-TLV" />, IANA is requested to allocate two new PathErr values for the Existing Error Type (24):</t>

          <figure>
            <artwork align="center" name="" type="" alt="">
      <![CDATA[
         Meaning                        Error-Value     Reference
         -----------------------------------------------------------
         Unsupported Frequency Slot     TBD3            [This.I-D]
         Selection Symmetry value

         Unsupported Frequency Slot     TBD4            [This.I-D]
         Assignment value
       ]]>
            </artwork>
          </figure>

       </section>

    </section>

    <section anchor="Acknowledgements" title="Acknowledgements">

      <t>Thanks to Francesco Lazzeri for the technical contribution, and Quan Xiong, Dhruv Dhody and Adrian Farrel for useful comments.</t>

    </section>

    <section anchor="Contrib" title="Contributors' Address">
      <artwork align="left" alt="" name="" type=""><![CDATA[
Ricard Vilalta
CTTC
Spain

Email: ricard.vilalta@cttc.es
    ]]></artwork>

    </section>


  </middle>

  <back>

    <references title="Normative References">

      &RFC2119;
      &RFC3472;
      &RFC5088;
      &RFC5089;
      &RFC5440;
      &RFC5511;
      &RFC7699;
      &RFC8174;

    </references>

    <references title="Informative References">

      &RFC4655;
      &RFC4657;
      &RFC5420;
      &RFC6163;
      &RFC7449;
      &RFC7570;
      &RFC7579;
      &RFC7698;
      &RFC7942;
      &RFC8363;
      &RFC8779;
      &RFC8780;

      <reference anchor="ITU-T_G.694.1" target="https://www.itu.int/rec/T-REC-G.694.1">
        <front>
          <title>
            SERIES G: TRANSMISSION SYSTEMS AND MEDIA, DIGITAL SYSTEMS AND NETWORKS; Digital networks; Spectral grids for WDM applications: DWDM frequency grid
          </title>
          <author initials="T" surname="ITU-" fullname="ITU-T G.694.1"/>
          <date month="October" year="2020"/>
        </front>
        <seriesInfo name="ITU-T Rec. G.694.1" value=""/>
      </reference>

    </references>

  </back>
</rfc>
