<?xml version='1.0'?>   
    <!DOCTYPE rfc SYSTEM 'rfc2629.dtd' [ 
    	<!ENTITY rfc2629 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2629.xml'> 
		]>
<?rfc strict="yes"?>
<?rfc toc="yes"?>
<?rfc tocdepth="4"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="std" docName="draft-ietf-pce-lsp-extended-flags-01"
     ipr="trust200902">
  <front>
    <title abbrev="LSP Object Flag Extension of Stateful PCE">LSP Object Flag Extension of Stateful PCE</title>

	<author fullname="Quan Xiong" initials="Q" surname="Xiong">
      <organization>ZTE Corporation</organization>

      <address>
        <postal>
          <street>No.6 Huashi Park Rd</street>
          
          <city>Wuhan</city>
          
          <region>Hubei</region>
  
          <code>430223</code>

          <country>China</country>
        </postal>

        <phone></phone>

        <email>xiong.quan@zte.com.cn</email>
      </address>
    </author>
    
   <date month="October" year="2021"/>	
    <area>Routing</area>
    <workgroup>PCE</workgroup>
    <keyword></keyword>
    <abstract>
	     <t>RFC 8231 describes a set of extensions to Path Computation Element Communication Protocol (PCEP) to enable stateful control of MPLS-TE 
		 and GMPLS Label Switched Paths(LSPs) via PCEP. One of the extensions is the LSP object
		 which includes a Flag field of the length of 12 bits. However, 11 bits of the Flag field
		 have already been assigned in RFC 8231, RFC 8281 and RFC 8623. </t>

         <t>This document proposes to define a new LSP-EXTENDED-FLAG TLV for the LSP object for an extended flag field.</t>
    </abstract>
  </front>

  <middle>
  
    <section title="Introduction">
	
	<t><xref target="RFC5440"></xref> describes the Path Computation Element 
    Protocol (PCEP) which is used between a Path Computation Element (PCE) 
    and a Path Computation Client (PCC) (or other PCE) to enable computation 
    of Multi-protocol Label Switching (MPLS) for Traffic Engineering Label 
    Switched Path (TE LSP). </t>
	
	<t>PCEP Extensions for the Stateful PCE Model <xref target="RFC8231"></xref> 
	describes a set of extensions to PCEP to enable active control of MPLS-TE and 
	Generalized MPLS (GMPLS) tunnels. One of the extensions is the LSP object
	which contains a flag field; bits in the flag field are used to indicate delegation, syncronization, removal, etc.</t>
	
	<t>As defined in <xref target="RFC8231"></xref>, the length of the flag field is
	12 bits and the value from bit 5 to bit 11 is used for operational, administrative, 
	remove, synchronize and delegate bits respectively. The bit value 4 is assigned in <xref target="RFC8281"></xref> 
	for create for PCE-Initiated LSPs. The bits from 1 to 3 is assigned in <xref target="RFC8623"></xref> for Explicit Route Object (ERO)-compression, 
	fragmentation and Point-to-Multipoint (P2MP) respectively. Almost all bits of the Flag field has been assigned 
	already. Thus, it is required to extend the flag field for the LSP Object for future use.</t>
	
    <t>This document proposes to define a new LSP-EXTENDED-FLAG TLV for an extended flag field in the LSP object.</t>
  
   </section>

    <section title="Conventions used in this document">	 	
    <section title="Terminology">
	<t>The terminology is defined as <xref target="RFC5440"></xref> and <xref target="RFC8231"></xref>.</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> <xref target="RFC8174"></xref> when,
    and only when, they appear in all capitals, as shown here.</t>
    </section>
	
   </section>
       
  <section title="PCEP Extension">
  
    <t>The LSP Object is defined in Section 7.3 of <xref target="RFC8231"></xref>.
	This document proposes to define a new LSP-EXTENDED-FLAG TLV for an extended flag field in the LSP object.</t>

   <section title="The LSP-EXTENDED-FLAG TLV">
   
    <t>The format of the LSP-EXTENDED-FLAG TLV is as shown in the Figure 1.</t>
   
   
   <figure title="Figure 1: LSP-EXTENDED-FLAG TLV Format" align="center">
     <artwork align="center"><![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=TBD            |          Length               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
//                 LSP Extended Flags                          //
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
             
    ]]></artwork>
   <postamble></postamble>
   </figure> 
   
      <t>Type (16 bits): the value is TBD1 by IANA.</t>
	  
      <t>Length (16 bits): multiple of 4 octets.</t>
	  
      <t>LSP Extended Flags: this contains an array of units of 32-bit flags
      numbered from the most significant as bit zero, where each bit 
	  represents one LSP operation, feature, or state. Currently no bits are assigned. 
	  Unassigned bits MUST be set to zero on transmission and MUST be
   ignored on receipt. For example of usage of the LSP-EXTENDED-FLAG TLV, 
   the E-flag is requested for entropy label configuration proposed in 
   <xref target="I-D.peng-pce-entropy-label-position"></xref>.</t>


   </section>
   
   <section title="Processing">
   
   <t>The LSP Extended Flags field is an array of units of 32 flags and to be 
   allocated starting from the most significant bit. No bits are currently assigned 
   in this document and the bits of the LSP Extended Flags field will be assigned 
   by future documents. </t>
   
   <t>Note that, PCEP peers MAY encounter different length of the
   LSP-EXTENDED-FLAG TLV.</t>
   
   <t>If a PCEP speaker receives the LSP-EXTENDED-FLAG TLV
     of a length more than it currently supports or understands,
     it will simply ignore the bits beyond that length.</t>

   <t>If a PCEP speaker receives the LSP-EXTENDED-FLAG TLV of
     a length less than the one supported by the implementation,
     it will consider the bits beyond the length to be unset.</t>
   
   </section>
   
   </section>
   
   <section title="Backward Compatibility">

    <t>The LSP-EXTENDED-FLAG TLV defined in this document does not introduce 
	any interoperability issues.</t>

    <t>A router that does not understand or support the LSP-EXTENDED-FLAG TLV will silently 
	ignore the TLV as per <xref target="RFC5440"></xref>. It is expected that future document that define bits in the LSP-EXTENDED-FLAG TLV would also define the error case handling required for missing LSP-EXTENDED-FLAG TLV.</t>
	

   </section>
	
	<section anchor="IANA" title="IANA Considerations">
	
    <section title="LSP Object"> 
	
	<section title="PCEP TLV Type Indicators">
 <t>IANA is requested to allocate the following TLV Type Indicator value within
   the "PCEP TLV Type Indicators" subregistry of the "Path Computation
   Element Protocol (PCEP) Numbers" registry:</t>

	
     <texttable anchor="table1" style="none" suppress-title="true">
     <ttcol align = 'left'> Value </ttcol>
     <ttcol align = 'left'> Description </ttcol>
     <ttcol align = 'left'> Reference </ttcol>
	 <c>TBD1 </c>
     <c>LSP-EXTENDED-FLAG</c>
     <c>[This document]</c>
     </texttable>
     </section>
	 
	<section title="LSP Extended Flags Field">

   <t>IANA is requested to create a new subregistry called "LSP-EXTENDED-FLAG TLV Flag Field", 
   within the "Path Computation Element Protocol (PCEP) Numbers"
   registry to manage the LSP Extended Flags field of the LSP-EXTENDED-FLAG TLV.  New values are
   assigned by Standards Action <xref target="RFC8126"></xref>.  Each bit should be tracked
   with the following qualities:<list style="symbols">

   <t>Bit number (counting from bit 0 as the most significant bit)</t>

   <t>Capability description</t>

   <t>Defining RFC</t>
 </list></t>

 <t></t>	

 <t>No values are currently defined.</t>
	
    </section>
	</section>
	 
    </section>
	
	<section title="Security Considerations">
	<t>For LSP Object procssing security considerations, see <xref target="RFC8231"></xref>.</t>
	
    <t>No additional security issues are raised in this document beyond
    those that exist in the referenced documents.</t>
    </section>

    <section anchor="Acknowledgements" title="Acknowledgements">
	
	<t>The authors would like to thank Loa Andersson and Adrian Farrel 
	for their review, suggestions and comments to this document.</t>
		
	</section>
    <section title="Contributors">
    <t>The following people have contributed to this document:</t>
	
	<t>Dhruv Dhody</t>
	<t>EMail: dhruv.ietf@gmail.com</t>

	</section>
	
	
  </middle>


  <back>
  
    <references title="Normative References">
    <?rfc include='reference.RFC.2119'?>
	<?rfc include='reference.RFC.5440'?>
	<?rfc include='reference.RFC.8174'?>
	<?rfc include='reference.RFC.8231'?>
	
	
	<?rfc include='reference.RFC.8126'?>
    </references>
    <references title="Informative References">
      <?rfc include='reference.RFC.8281'?>
      <?rfc include='reference.RFC.8623'?>
	  <?rfc include='reference.I-D.peng-pce-entropy-label-position'?>
    </references>
        
  </back>
</rfc>
