<?xml version="1.0" encoding="us-ascii"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd"[]>
<?rfc toc="yes" ?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="4"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="no"?>
<?rfc rfcedstyle="yes"?>
<?rfc subcompact="no"?>
<?rfc compact="yes" ?>
<?rfc iprnotified="Yes" ?>
<?rfc strict="no" ?>
<rfc ipr="trust200902" category="std" docName="draft-dhody-pce-pcep-exp-codepoints-01" obsoletes="" updates="" submissionType="IETF" xml:lang="en">
  <front>
    <title abbrev="EXP-CODEPOINT">Experimental Codepoint Allocation for Path Computation Element communication 
    Protocol (PCEP)</title>
    <author initials="D" surname="Dhody" 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>
    </author>
    <author initials="D" surname="King" fullname="Daniel King">
    <organization>Lancaster University</organization>
    <address>
        <postal>
          <street></street>
          <city></city>
          <region></region>
          <code></code>        
          <country>UK</country>
        </postal>
        <email>d.king@lancaster.ac.uk</email>
      </address>
    </author>
    <date month="June" year="2016" />
    <area>Routing</area>
    <workgroup>PCE Working Group</workgroup>
    <abstract>
   <t> 
   IANA assigns values to the Path Computation Element (PCE) communication 
   Protocol (PCEP) parameters (messages,
   objects, TLVs). IANA established a new top-level registry to contain all PCEP
   codepoints and sub-registries. The allocation policy for each new 
   registry is by IETF Consensus.</t>
   
   <t>This document seeks to mark some codepoints for experimental usage
   of PCEP. </t>    
   </abstract>
  </front>
  <middle>
    <section title="Introduction" toc="default">
   <t>The Path Computation Element communication Protocol (PCEP) provides
   mechanisms for Path Computation Elements (PCEs) to perform path
   computations in response to Path Computation Clients (PCCs) requests.</t>

   <t>In section 9 of <xref target="RFC5440"/>, IANA assigns values to 
   the PCEP protocol parameters (messages, objects, TLVs). IANA established 
   a new top-level registry to contain all PCEP codepoints and sub-registries.
   The allocation policy for each new registry is by IETF Consensus as 
   described in <xref target="RFC5226"/>. Specifically, new assignments 
   are made via RFCs approved by the IESG. Typically, the IESG will seek input on prospective
   assignments from appropriate persons (e.g., a relevant Working Group
   if one exists).</t> 
      
   <t>With some recent advancement, there is an enhanced need to 
   experiment with PCEP. It is often necessary
   to use some sort of number or constant in order to actually
   test or experiment with the new function, even when testing in a
   closed environment. In order to run experiment, it is important that 
   the value won't collide not only with existing codepoints but any 
   future allocation.</t>
   
   <t>This document thus set apart some codepoints
   in PCEP registry and subregistries for experimental usage. </t> 
   
   
          
    </section>
<section title="PCEP Messages" toc="default">
    <t>Some codepoints are requested to be set aside for experimentation
    with new PCEP messages. The suggested range is 246-255.</t>
</section>
<section title="PCEP Objects" toc="default">
    <t>Some codepoints are requested to be set aside for experimentation
    with new PCEP objects. The suggested range is 224-255.</t>
</section>
<section title="PCEP TLVs" toc="default">
<t>Some codepoints are requested to be set aside for experimentation
with new PCEP TLVs. The suggested range is 65280-65535.</t>

<t>[Editor's Note - There have been suggestions to increase this range 
a little bit more, perhaps to 65024-65535]</t>
</section>

    <section title="IANA Considerations" toc="default" anchor="sec_iana">
    <t>IANA maintains the "Path Computation Element Protocol (PCEP) Numbers"
    at &lt;http://www.iana.org/assignments/pcep&gt;.</t>
    <section title="New PCEP Messages" toc="default">
    <t>Within this registry IANA maintains a sub-registry for PCEP 
    Messages (see PCEP Messages at &lt;http://www.iana.org/assignments/pcep&gt;).</t>
    <t>Upon approval of this document, IANA is requested to make the
    following allocations: </t>
    <t>
        <figure title="" suppress-title="false" align="center" alt="" width="" height="">
          <artwork xml:space="preserve" name="" type="" align="center" alt="" width="" height=""><![CDATA[
+---------+-------------+-------------------+
|   Type  | Description | Allocation Policy |
+---------+-------------+-------------------+
| 246-255 | Unassigned  | Experimental Use  |
+---------+-------------+-------------------+ 
]]></artwork>
          </figure> </t>  
          
    </section>  
    <section title="New PCEP Objects" toc="default">
    <t>Within this registry IANA maintains a sub-registry for PCEP 
    Objects (see PCEP Objects at &lt;http://www.iana.org/assignments/pcep&gt;).</t>
    <t>Upon approval of this document, IANA is requested to make the following allocations: </t>
    <t>
        <figure title="" suppress-title="false" align="center" alt="" width="" height="">
          <artwork xml:space="preserve" name="" type="" align="center" alt="" width="" height=""><![CDATA[
+---------+-------------+-------------------+
|   Type  | Description | Allocation Policy |
+---------+-------------+-------------------+
| 224-255 | Unassigned  | Experimental Use  |
+---------+-------------+-------------------+  
]]></artwork>
          </figure>   </t>                    
    </section>  
<section title="New PCEP TLVs" toc="default">
    <t>Within this registry IANA maintains a sub-registry for PCEP 
    TLVs (see PCEP TLV Type Indicators at &lt;http://www.iana.org/assignments/pcep&gt;).</t>
    <t>Upon approval of this document, IANA is requested to make the
    following allocations: </t>
    <t>
        <figure title="" suppress-title="false" align="center" alt="" width="" height="">
          <artwork xml:space="preserve" name="" type="" align="center" alt="" width="" height=""><![CDATA[
+------------+-------------+-------------------+
|      Type  | Description | Allocation Policy |
+------------+-------------+-------------------+
|65280-65535 | Unassigned  | Experimental Use  |
+------------+-------------+-------------------+    
]]></artwork>
          </figure>    </t>              
    </section>     
    </section>  
    
    <section title="Allocation Policy" toc="default">
    <t>The allocation policy for the IANA request in <xref target="sec_iana"/> is "Experimental".
    As per <xref target="RFC5226"/>, IANA does not record specific assignments for any particular use for this policy.
    The ongoing experiment code point can be maintained at the PCE WG wiki at &lt;https://trac.tools.ietf.org/wg/pce/trac/wiki&gt;.</t>
    
    <t>As the experiment/standard progress and an early IANA allocation or RFC publication happens, the IANA defined codepoints are used 
    and experimental code points are freed up.</t>
    </section>  
    
    
    <section title="Security Considerations" toc="default">
    <t>This document does not introduce any new security considerations to
   the existing protocol.  Refer to <xref target="RFC5440"/> for
   further details of the specific security measures.  </t>
    </section>
      
    
    
    <section title="Acknowledgments" toc="default">
      <t>The authors would like to thank Ramon Casellas, Jeff Tantsura 
      and Adrian Farrel, for their feedback and suggestions. </t>
    </section>
        
  </middle>
  <back>
    <references title="Normative References">
    <?rfc include="reference.RFC.5440.xml" ?>
    </references>
    <references title="Informative References">
     
     <?rfc include="reference.RFC.5226.xml" ?>
     

    </references>
    <section title="Other Codepoints" toc="default">
      
      <t>Going through the PCEP IANA registry, following categories exist -
	<list style="symbols">
    <t>Essentials (already added in the draft)
        <list style="symbols">
        <t>Messages</t>
        <t>Objects</t>
        <t>TLV</t>
        </list></t>
    <t>Good to have  / simple to add
        <list style="symbols">
        <t>NO-PATH Object NI</t>
        <t>Metric Type</t>
        <t>Notification</t>
        <t>Error</t>
        <t>Close reason</t>
        </list></t>
    <t>Cross Registry
        <list style="symbols">
        <t>IRO Subobjects</t>
        <t>XRO Subobjects</t>
        <t>PathKey Subobjects</t>
        <t>RSVP-TE  (where ERO Subobjects is defined)</t>
        <t>The code points are kept consistent across these registries</t>
        </list></t>
     <t>Exist Already
        <list style="symbols">
        <t>OF - private use for 32768-65535</t>
        </list></t>
     <t>Not Applicable for Flags
        <list style="symbols">
        <t>Keeping aside some flags as experimental is not be a good idea</t>
        <t>Experiments can always use a new experimental TLV/Object and use flags inside of it</t>
        </list></t>
        
      </list></t>
      <t> </t>
      
<texttable anchor="table_ex" title="PCEP IANA registry">
    <ttcol align='left'>IANA Registry</ttcol>
    <ttcol align='center'>Good to have</ttcol>
    <ttcol align='center'>Simple to add</ttcol>
    <ttcol align='left'>Remarks</ttcol>
    <c></c><c></c><c></c><c></c>
    <c>PCEP Messages</c><c>Y</c><c>Y</c><c>Essentials (already added in the draft)</c>
    <c></c><c></c><c></c><c></c>
    <c>PCEP Objects</c><c>Y</c><c>Y</c><c>Essentials (already added in the draft)</c>
    <c></c><c></c><c></c><c></c>
    <c>PCEP Message Common Header Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
    <c>Open Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
    <c>RP Object Flag Field</c><c></c><c></c><c>NA</c> 
    <c></c><c></c><c></c><c></c> 
    <c>NO-PATH Object NI Field</c><c>Y</c><c>Y</c><c></c>
    <c></c><c></c><c></c><c></c>
    <c>NO-PATH Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>                
    <c>METRIC Object T Field</c><c>Y</c><c>Y</c><c></c>
    <c></c><c></c><c></c><c></c>                   
    <c>METRIC Object Flag Field</c><c></c><c></c><c>NA</c>   
    <c></c><c></c><c></c><c></c>              
    <c>LSPA Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
    <c>IRO Subobjects</c><c>Y</c><c>N</c><c></c> 
    <c></c><c></c><c></c><c></c>                         
    <c>SVEC Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
    <c>Notification Object</c><c>Y</c><c>Y</c><c>Ex. NT: 224-255, NV:1-255 (*)</c>  
    <c></c><c></c><c></c><c></c>                     
    <c>Notification Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
    <c>PCEP-ERROR Object Error Types and Values</c><c>Y</c><c>Y</c><c>Ex. ET:224-255, EV:1-255 (*)</c>
    <c></c><c></c><c></c><c></c>
    <c>PCEP-ERROR Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
    <c>LOAD-BALANCING Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
    <c>CLOSE Object Reason Field</c><c>Y</c><c>Y</c><c></c>
    <c></c><c></c><c></c><c></c>
    <c>CLOSE Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
    <c>PATH-KEY Subobjects</c><c>N</c><c>N</c><c></c>
    <c></c><c></c><c></c><c></c>                     
    <c>PATH-KEY Subobjects</c><c>Y</c><c>N</c><c></c>
    <c></c><c></c><c></c><c></c>
    <c>XRO Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>                          
    <c>Objective Function</c><c>Y</c><c>Y</c><c>Private Use already exist</c> 
    <c></c><c></c><c></c><c></c>
    <c>PCEP TLV Type Indicators</c><c>Y</c><c>Y</c><c>Essentials (already added in the draft)</c>
    <c></c><c></c><c></c><c></c>
    <c>NO-PATH-VECTOR TLV Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c> 
    <c>MONITORING Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>             
    <c>PROC-TIME Object Flag Field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
    <c>OVERLOAD Object Flag field</c><c></c><c></c><c>NA</c>
    <c></c><c></c><c></c><c></c>
</texttable>
      
      <t>WG need to decide if we need to expand the scope of this document.</t>
      <t>(*) if done in this way -  A new experimental Error-value/Notification-Value for an existing Error-Type/Notification-Type is not allowed, one should add a new Error-type/Notification-Type from experimental range and add the value there. Or we need to set aside experimental range for Error-value/Notification-Value for each Error-Type/Notification-Type too!</t>


    </section>
  </back>
</rfc>
