<?xml version='1.0' encoding='UTF-8'?>

<rfc
      xmlns:xi="http://www.w3.org/2001/XInclude"
      category="std"
      docName="draft-claise-opsawg-ipfix-ordered-mpls-ie-00"
      ipr="trust200902"
      obsoletes=""
      updates=""
      submissionType="IETF"
      xml:lang="en"
      tocInclude="true"
      tocDepth="4"
      symRefs="true"
      sortRefs="true"
      version="3"
      consensus="true">

 <!-- ***** FRONT MATTER ***** -->

 <front>
   <title abbrev="Generic MPLS IEs for Ordered Export">
     Generic MPLS Information Elements for Ordered Export in IPFIX
   </title>
   <seriesInfo name="Internet-Draft" value="draft-claise-opsawg-ipfix-ordered-mpls-ie-00"/>

   <author fullname="Benoit Claise" surname="Claise">
      <organization>Everything OPS &amp; Arrcus</organization>
      <address>
        <email>benoit@everything-ops.net</email>
      </address>
   </author>
   <author fullname="Paul Aitken" surname="Aitken">
      <organization>Ciena</organization>
      <address>
        <email>paitken@ciena.com</email>
      </address>
   </author>
   <author fullname="Holger Keller" surname="Keller">
      <organization>Deutsche Telekom</organization>
      <address>
        <email>holger.keller@telekom.de</email>
      </address>
   </author>
   <author fullname="Yao Liu" surname="Liu">
      <organization>ZTE Corporation</organization>
      <address>
        <email>liu.yao71@zte.com.cn</email>
      </address>
   </author>

   <date year="2026"/>

   <area>OPS</area>
   <workgroup>OPSAWG</workgroup>

   <keyword>IPFIX</keyword>
   <keyword>MPLS</keyword>
   <keyword>Ordered Export</keyword>
   <keyword>Information Element</keyword>

   <abstract>
      <t>This document defines new generic IPFIX Information Elements for MPLS
label stacks and label attributes, intended for use with the ordered
set mechanisms that provide an explicit ordering guarantee
for repeated Information Elements.</t>
   </abstract>
  </front>

  <middle>
    <section numbered="true" toc="default" anchor="intro">
      <name>Introduction</name>
      <t>The IPFIX protocol <xref target="RFC7011"/> allows the same Information Element (IE)
      to appear multiple times in a Template Record.
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/> defines Ordered
      Template Sets and Ordered Options Template Sets
      that provide an explicit, end-to-end ordering guarantee: the
      Metering Process records repeated IE values in observation order, the
      Exporting Process preserves and signals that order, and the
      Collecting Process interprets the n-th occurrence as the n-th
      observation at the Observation Point.</t>

      <t>MPLS label stacks are one of the primary use cases for Ordered
      Export.  As described in Section 3.2 of
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>, the absence of an ordering
      guarantee has led to the definition of ten positional MPLS label
      stack Information Elements (mplsTopLabelStackSection through
      mplsLabelStackSection10, IPFIX IE 70 through IE 79), plus a cluster
      of MPLS label attributes.</t>

      <t>This document defines new generic MPLS
      Information Elements that, when repeated in an Ordered Template
      Record, can be used instead of the positional MPLS IEs.  The
      positional IEs are not deprecated; see <xref target="coexistence"/>.
      The ordering mechanism,
      and
      the general rules for repeated Information Elements are specified in
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>.</t>
    </section>

    <section numbered="true" toc="default" anchor="terminology">
      <name>Terminology and Definitions</name>
      <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>
	  
	  <t>The terminology defined in <xref target="RFC7011"/> applies to this document.</t>
	  <t>The terms "Ordered Template Record", "Ordered Options Template
      Record", "Ordered Template Set" and "Ordered Options Template Set"
      are used as defined in <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>.</t>

      <t>Ordered Export: The export of repeated Information Elements using
      Ordered Template Sets or Ordered Options Template Sets as defined in
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>.</t>
	  
    </section>

    <section numbered="true" toc="default" anchor="existing-ies">
      <name>Existing IEs for MPLS</name>
	  <t>The IPFIX Information Elements registry <xref target="IANA.IPFIX"/> currently defines ten positional label stack Information Elements, originally
specified in <xref target="RFC5102"/>:</t>
      <ul spacing="normal">
        <li>mplsTopLabelStackSection (IPFIX IE 70)</li>
        <li>mplsLabelStackSection2 (IPFIX IE 71)</li>
        <li>mplsLabelStackSection3 (IPFIX IE 72)</li>
        <li>mplsLabelStackSection4 (IPFIX IE 73)</li>
        <li>mplsLabelStackSection5 (IPFIX IE 74)</li>
        <li>mplsLabelStackSection6 (IPFIX IE 75)</li>
        <li>mplsLabelStackSection7 (IPFIX IE 76)</li>
        <li>mplsLabelStackSection8 (IPFIX IE 77)</li>
        <li>mplsLabelStackSection9 (IPFIX IE 78)</li>
        <li>mplsLabelStackSection10 (IPFIX IE 79)</li>
      </ul>

      <t>In addition, a cluster of Information Elements exists for attributes
      of the top-of-stack label only: mplsTopLabelType (IPFIX IE 46),
      mplsTopLabelIPv4Address (IPFIX IE 47), mplsTopLabelPrefixLength
      (IPFIX IE 91), mplsTopLabelIPv6Address (IPFIX IE 140),
      mplsTopLabelTTL (IPFIX IE 200), mplsTopLabelExp (IPFIX IE 203), and
      postMplsTopLabelExp (IPFIX IE 237).</t>

      <t>With the Ordered Export mechanism defined in
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>, the Exporting Process can use a
      single generic Information Element repeated N times in an Ordered
      Template Record and signal that the sequence reflects the top-to-
      bottom order observed by the Metering Process.</t>
    </section>

    <section numbered="true" toc="default" anchor="generic-ies">
      <name>Generic MPLS Information Elements</name>
      <t>The five Information Elements defined in this section are intended
      for use in Ordered Template Records and Ordered Options Template
      Records as defined in <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>.  The
      ordering, occurrence, and observation rules defined in that document
      apply to these Information Elements.  This section only defines the
      element-specific semantics.</t>

      <section numbered="true" toc="default" anchor="mplsLabelStackEntry">
        <name>mplsLabelStackEntry</name>
        <t>Name: mplsLabelStackEntry</t>
        <t>Abstract Data Type: octetArray</t>
        <t>Data Type Semantics: default</t>
        <t>Description: The contents of a label stack entry at any position in
        the MPLS label stack, encoded as the 4-octet MPLS label stack entry
        format defined in Section 2.1 of <xref target="RFC3032"/>.  The encoding comprises a
        20-bit label value, a 3-bit Traffic Class (TC) field, a 1-bit Stack
        Bottom (S) flag, and an 8-bit Time to Live (TTL) field.  When this
        Information Element appears multiple times in an Ordered Template
        Record as defined in <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>, the N-th
        occurrence corresponds to the label stack entry at stack position N
        (counting from the top) as observed by the Metering Process at the
        Observation Point.  If only one occurrence is present, it denotes
        stack position 1 (the top of the stack).</t>
        <t>Additional Information: See Section 2.1 of <xref target="RFC3032"/> for the MPLS
        label stack entry encoding.</t>
        <t>Reference: This document.</t>
      </section>

      <section numbered="true" toc="default" anchor="mplsLabelType">
        <name>mplsLabelType</name>
        <t>Name: mplsLabelType</t>
        <t>Abstract Data Type: unsigned8</t>
        <t>Data Type Semantics: identifier</t>
        <t>Description: The type of the MPLS label at the given stack position.
        The value is encoded as a single unsigned 8-bit identifier assigned
        by IANA in the "IPFIX MPLS label type (Value 46)" subregistry.  The registry value identifies the control protocol that
        allocated the label at that stack position.  When this Information
        Element appears multiple times in an Ordered Template Record as
        defined in <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>, the N-th occurrence
        corresponds to the label type at stack position N (counting from the
        top) as observed by the Metering Process at the Observation Point.
        If only one occurrence is present, it denotes stack position 1 (the top of the stack).
        The value 0 (Unknown) denotes that the label type at that position is not known.</t>
        <t>Additional Information: See the IANA "IPFIX MPLS label type (Value 46)" subregistry for the list of values.</t>
        <t>Reference: This document.</t>
      </section>

      <section numbered="true" toc="default" anchor="mplsLabelIPv4Address">
        <name>mplsLabelIPv4Address</name>
        <t>Name: mplsLabelIPv4Address</t>
        <t>Abstract Data Type: ipv4Address</t>
        <t>Data Type Semantics: default</t>
        <t>Description: The IPv4 address of the system that the MPLS label at
        the given stack position will cause this Flow to be forwarded to.
        When this Information Element appears multiple times in an Ordered
        Template Record as defined in
        <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>, the N-th occurrence corresponds
        to the next-hop IPv4 address for the label at stack position N
        (counting from the top) as observed by the Metering Process at the
        Observation Point.  If only one occurrence is present, it denotes
        stack position 1.</t>
        <t>Additional Information: mplsTopLabelIPv4Address (IPFIX IE 47) exports
the same information for the top of the stack only. In an Ordered
Template Record, this Information Element can be used instead of
mplsTopLabelIPv4Address, and covers every stack position. IE 47
remains current; see Section 6.</t>
        <t>Reference: This document.</t>
      </section>

      <section numbered="true" toc="default" anchor="mplsLabelPrefixLength">
        <name>mplsLabelPrefixLength</name>
        <t>Name: mplsLabelPrefixLength</t>
        <t>Abstract Data Type: unsigned8</t>
        <t>Data Type Semantics: quantity</t>
        <t>Description: The prefix length of the subnet of the
        mplsLabelIPv4Address or mplsLabelIPv6Address that the MPLS label at
        the given stack position will cause the Flow to be forwarded to.
        When this Information Element appears multiple times in an Ordered
        Template Record as defined in
        <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>, the N-th occurrence corresponds
        to the prefix length for the label at stack position N (counting from
        the top) as observed by the Metering Process at the Observation
        Point.  If only one occurrence is present, it denotes stack
        position 1.</t>
        <t>Units: bits</t>
        <t>Range: 0-128</t>
        <t>Additional Information: mplsTopLabelPrefixLength (IPFIX IE 91) exports the same information for the top of the stack only. In an Ordered
Template Record, this Information Element can be used instead of
mplsTopLabelPrefixLength, and covers every stack position. IE 91
remains current; see Section 6.</t>
        <t>Reference: This document.</t>
      </section>

      <section numbered="true" toc="default" anchor="mplsLabelIPv6Address">
        <name>mplsLabelIPv6Address</name>
        <t>Name: mplsLabelIPv6Address</t>
        <t>Abstract Data Type: ipv6Address</t>
        <t>Data Type Semantics: default</t>
        <t>Description: The IPv6 address of the system that the MPLS label at
        the given stack position will cause this Flow to be forwarded to.
        When this Information Element appears multiple times in an Ordered
        Template Record as defined in
        <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>, the N-th occurrence corresponds
        to the next-hop IPv6 address for the label at stack position N
        (counting from the top) as observed by the Metering Process at the
        Observation Point.  If only one occurrence is present, it denotes
        stack position 1.</t>
        <t>Additional Information: mplsTopLabelIPv6Address (IPFIX IE 140) exports the same information for the top of the stack only. In an Ordered
Template Record, this Information Element can be used instead of
mplsTopLabelIPv6Address, and covers every stack position. IE 140
remains current; see Section 6.</t>
        <t>Reference: This document.</t>
      </section>

      <section numbered="true" toc="default" anchor="ttl-tc">
        <name>TTL and TC Considerations</name>
        <t>No separate generic IPFIX IEs for TTL and TC (Exp) are defined in
this document.  The TTL and TC (Exp) fields are already encoded as
subfields of the 4-octet label stack entry exported by
mplsLabelStackEntry (Section 4.1).  mplsTopLabelTTL (IPFIX IE 200)
and mplsTopLabelExp (IPFIX IE 203) can be derived from
mplsLabelStackEntry when used with Ordered Export. IE 200 and IE 203
remain current; see Section 6.</t>

        <t>The existing positional IPFIX IEs mplsTopLabelStackSection (IE 70)
        through mplsLabelStackSection10 (IE 79) encode only 3 octets (label,
        TC, and S fields), omitting the TTL field.  mplsLabelStackEntry
        encodes the full 4-octet label stack entry as defined in Section 2.1
        of <xref target="RFC3032"/>, so the TTL can be exported at any stack depth
        without a separate TTL Information Element.</t>

        <t>postMplsTopLabelExp (IPFIX IE 237) is not in scope for this document,
        and no generic replacement is defined here.</t>
      </section>

      <section numbered="true" toc="default" anchor="applicability">
        <name>Applicability to Stack Positions</name>
        <t>The Information Elements defined in this document differ in their
        applicability across stack positions.</t>

        <t>mplsLabelStackEntry (Section 4.1) is meaningful at every stack
        position, because every MPLS label stack entry carries label, TC, S,
        and TTL fields as defined in <xref target="RFC3032"/>.</t>

        <t>mplsLabelType (Section 4.2), mplsLabelIPv4Address (Section 4.3),
        mplsLabelIPv6Address (Section 4.5), and mplsLabelPrefixLength
        (Section 4.4) describe attributes associated with the forwarding
        decision for a label.  In typical MPLS data-plane operation, the
        forwarding decision is driven by the top-of-stack label.  The
        values of these attributes may not be available for lower stack
        positions, depending on the implementation and the control-plane
        information available to the Metering Process.</t>

        <t>Because the n-th occurrence of each of these Information Elements
        describes stack position n, the occurrences of mplsLabelType,
        mplsLabelIPv4Address, mplsLabelIPv6Address, or mplsLabelPrefixLength
        in a Data Record are consecutive from stack position 1.  If the label
        type at stack position K is not known, the Exporting Process exports
        the value 0 (Unknown) of mplsLabelType for that position.  If the
        value of mplsLabelIPv4Address, mplsLabelIPv6Address, or
        mplsLabelPrefixLength is not available for stack position K, the
        Exporting Process MUST NOT export an occurrence of that Information
        Element for stack position K or for any deeper stack position.</t>
      </section>
    </section>

    <section numbered="true" toc="default" anchor="use-with-ordered-export">
      <name>Use with Ordered Export</name>
      <t>The generic MPLS Information Elements defined in this document are
      intended for use in Ordered Template Records and Ordered Options
      Template Records as defined in
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>.  The Exporting Process includes
      the same generic IE multiple times in an Ordered Template Record; the
      Collecting Process interprets the n-th occurrence as the n-th
      observation by the Metering Process at the Observation Point, as
      specified in <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>.</t>

      <t>These Information Elements can also be used in a Template Record of
      a Template Set or an Options Template Set (Set ID 2 or 3).  A single
      occurrence then describes stack position 1, the top of the stack.  If
      an Information Element is repeated in such a Template Record, the
      order of the Information Elements in the Template Record is not
      guaranteed (see Sections 4.2 and 4.3 of <xref target="RFC7011"/>), and
      the n-th occurrence therefore does not correspond to stack position
      n.</t>

      <t>For example, an Ordered Template Record may contain
      mplsLabelStackEntry repeated N times to export an N-entry label
      stack, with the first occurrence representing the top of the stack
      and the N-th occurrence representing the bottom.  Similarly,
      mplsLabelType, mplsLabelIPv4Address, mplsLabelPrefixLength, or
      mplsLabelIPv6Address may be repeated to export the corresponding
      attribute for each stack position at which that attribute is
      available.</t>

      <t>The ordering guarantee applies independently to each Information
      Element, as specified in Section 4.3 of
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>, which defines no relative
      ordering between occurrences of different Information Elements.
      The correspondence between the Information Elements defined in this
      document comes from their definitions in Section 4: for every one of
      them, the n-th occurrence corresponds to stack position n.  The n-th
      occurrence of mplsLabelStackEntry and the n-th occurrence of
      mplsLabelType therefore describe the same stack position, because
      each is defined that way, and not because of any ordering between the
      two Information Elements.</t>

      <t>This document relies on the dense, consecutive export model defined
      in <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>.  The cases where only a sparse subset of stack positions is exported are out of the scope of this
      document.</t>
    </section>

    <section numbered="true" toc="default" anchor="coexistence">
      <name>Coexistence and Migration</name>
      <t>The generic MPLS Information Elements defined in this document do not
      immediately obsolete the existing positional IPFIX IEs.
      Collecting Processes that do not support Ordered Export
      continue to require the positional IPFIX IEs.  An Exporting Process
      that needs to serve such Collecting Processes continues to export
      the positional IEs, and can export the generic IEs toward
      Collecting Processes that support Ordered Export.</t>

      <t>Once Ordered Export is widely deployed, the positional MPLS IPFIX IEs
      listed in Appendix A may be deprecated in a future document.  This
      document does not request deprecation of those IEs.</t>

      <t>Appendix A provides the migration mapping from positional MPLS IEs to
      the generic IEs defined in this document when used with Ordered
      Export.</t>
    </section>

    <section numbered="true" toc="default" anchor="operational">
      <name>Operational Considerations</name>
      <t>Ordered Export is additive, as described in
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>. Operators SHOULD enable Ordered Export of MPLS Information Elements 
only toward Collecting Processes that are known to support the Ordered 
Template Sets or Ordered Options Template Sets defined in [I-D.claise-opsawg-ipfix-ordered-ie].  Deployment
      against unaware Collecting Processes may result in silent loss of
      entire Ordered Sets, as discussed in Section 5.4 of
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>.</t>

      <t>The new mplsLabelStackEntry IE is 4 octets, whereas the existing
      positional label stack IEs are 3 octets.  Deployments that do not
      require TTL information may observe a small increase in per-label
      export size when using the generic IE.</t>

      <t>Verification of correct operation requires confirming that the
      Exporting Process preserves the Metering Process observation order
      and that the Collecting Process interprets the n-th occurrence as
      stack position n.  Correct interpretation can be verified by
      comparing collected data against known MPLS label stacks in a test
      environment.</t>
    </section>

    <section numbered="true" toc="default" anchor="security">
      <name>Security Considerations</name>
      <t>This document does not change the trust model of the IPFIX protocol.
      The security considerations of <xref target="RFC7011"/> and
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/> apply.</t>

      <t>An Exporting Process that uses an Ordered Template Set but fails to preserve the Metering Process observation order will
      cause the Collecting Process to misinterpret MPLS label stack
      positions. Operators SHOULD ensure that the Exporting Process and
      Metering Process are correctly coordinated before using Ordered
      Export for MPLS Information Elements.</t>
    </section>

    <section numbered="true" toc="default" anchor="iana">
      <name>IANA Considerations</name>
      <t>This document requests IANA to allocate the Information Elements 
defined in Section 4 in the "IPFIX Information Elements" registry <xref target="IANA.IPFIX"/>:</t>

      <table anchor="iana-new-ies">
        <name>New IPFIX Information Elements</name>
        <thead>
          <tr>
            <th align="left">ElementID</th>
            <th align="left">Name</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">TBD1</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">Section 4.1</td>
          </tr>
          <tr>
            <td align="left">TBD2</td>
            <td align="left">mplsLabelType</td>
            <td align="left">Section 4.2</td>
          </tr>
          <tr>
            <td align="left">TBD3</td>
            <td align="left">mplsLabelIPv4Address</td>
            <td align="left">Section 4.3</td>
          </tr>
          <tr>
            <td align="left">TBD4</td>
            <td align="left">mplsLabelPrefixLength</td>
            <td align="left">Section 4.4</td>
          </tr>
          <tr>
            <td align="left">TBD5</td>
            <td align="left">mplsLabelIPv6Address</td>
            <td align="left">Section 4.5</td>
          </tr>
        </tbody>
      </table>
    </section>
  </middle>

  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
		<reference anchor="I-D.claise-opsawg-ipfix-ordered-ie"
           target="https://datatracker.ietf.org/doc/draft-claise-opsawg-ipfix-ordered-ie/">
  <front>
    <title>Ordered Information Element Export in IP Flow Information Export (IPFIX)</title>
    <author initials="B." surname="Claise" fullname="Benoit Claise"/>
    <author initials="P." surname="Aitken" fullname="Paul Aitken"/>
    <author initials="H." surname="Keller" fullname="Holger Keller"/>
    <author initials="Y." surname="Liu" fullname="Yao Liu"/>
  </front>
  <seriesInfo name="Internet-Draft"
              value="draft-claise-opsawg-ipfix-ordered-ie"/>
</reference>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
		
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.3032.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7011.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="IANA.IPFIX" target="https://www.iana.org/assignments/ipfix/ipfix.xhtml">
          <front>
            <title>IP Flow Information Export (IPFIX) Entities</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.5102.xml"/>

      </references>
    </references>

    <section numbered="true" toc="default" anchor="appendix-a">
      <name>MPLS Positional-to-Generic Migration</name>
      <t>This appendix is informative. It provides the migration mapping from
      positional MPLS IPFIX IEs to the generic IEs defined in this document
      when used with Ordered Export as defined in
      <xref target="I-D.claise-opsawg-ipfix-ordered-ie"/>.</t>
	  <t>The "Generic IE" column identifies the Information Element that can be used in place of the positional IE when Ordered Export is used. It does not indicate that the positional IE is deprecated or obsolete.</t>
	  <t>The positional label stack IEs (IPFIX IE 70 through IE 79) are 3
octets long and carry the Label, Exp, and S fields.  The generic
mplsLabelStackEntry is 4 octets long and carries the complete label
stack entry of Section 2.1 of <xref target="RFC3032"/>, which adds the TTL field as the fourth octet. The first three octets of mplsLabelStackEntry have
the same layout as the positional IEs.  A Collecting Process therefore
cannot decode the two with the same field length.  It has to account
for the extra octet, and the TTL is available only with the generic
IE.</t>
	  

      <table anchor="migration-table">
        <name>MPLS Positional-to-Generic Migration Mapping</name>
        <thead>
          <tr>
            <th align="left">Positional IE</th>
            <th align="left">IE ID</th>
            <th align="left">Generic IE</th>
            <th align="left">IE ID</th>
            <th align="left">Notes</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">mplsTopLabelType</td>
            <td align="left">46</td>
            <td align="left">mplsLabelType</td>
            <td align="left">TBD2</td>
            <td align="left">Top-of-stack only; generic IE covers position N</td>
          </tr>
          <tr>
            <td align="left">mplsTopLabelIPv4Address</td>
            <td align="left">47</td>
            <td align="left">mplsLabelIPv4Address</td>
            <td align="left">TBD3</td>
            <td align="left">Top-of-stack only; generic IE covers position N</td>
          </tr>
          <tr>
            <td align="left">mplsTopLabelStackSection</td>
            <td align="left">70</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 1 (top of stack)</td>
          </tr>
          <tr>
            <td align="left">mplsLabelStackSection2</td>
            <td align="left">71</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 2</td>
          </tr>
          <tr>
            <td align="left">mplsLabelStackSection3</td>
            <td align="left">72</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 3</td>
          </tr>
          <tr>
            <td align="left">mplsLabelStackSection4</td>
            <td align="left">73</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 4</td>
          </tr>
          <tr>
            <td align="left">mplsLabelStackSection5</td>
            <td align="left">74</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 5</td>
          </tr>
          <tr>
            <td align="left">mplsLabelStackSection6</td>
            <td align="left">75</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 6</td>
          </tr>
          <tr>
            <td align="left">mplsLabelStackSection7</td>
            <td align="left">76</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 7</td>
          </tr>
          <tr>
            <td align="left">mplsLabelStackSection8</td>
            <td align="left">77</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 8</td>
          </tr>
          <tr>
            <td align="left">mplsLabelStackSection9</td>
            <td align="left">78</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 9</td>
          </tr>
          <tr>
            <td align="left">mplsLabelStackSection10</td>
            <td align="left">79</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">Occurrence 10</td>
          </tr>
          <tr>
            <td align="left">mplsTopLabelPrefixLength</td>
            <td align="left">91</td>
            <td align="left">mplsLabelPrefixLength</td>
            <td align="left">TBD4</td>
            <td align="left">Top-of-stack only; generic IE covers position N</td>
          </tr>
          <tr>
            <td align="left">mplsTopLabelIPv6Address</td>
            <td align="left">140</td>
            <td align="left">mplsLabelIPv6Address</td>
            <td align="left">TBD5</td>
            <td align="left">Top-of-stack only; generic IE covers position N</td>
          </tr>
          <tr>
            <td align="left">mplsTopLabelTTL</td>
            <td align="left">200</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">TTL is encoded in octet 4 of the 4-octet label stack entry</td>
          </tr>
          <tr>
            <td align="left">mplsTopLabelExp</td>
            <td align="left">203</td>
            <td align="left">mplsLabelStackEntry</td>
            <td align="left">TBD1</td>
            <td align="left">TC (Exp) is encoded in bits 21-23 of the 4-octet label stack entry</td>
          </tr>
          <tr>
            <td align="left">postMplsTopLabelExp</td>
            <td align="left">237</td>
            <td align="left">(not in scope)</td>
            <td align="left">--</td>
            <td align="left">Post-policy TC; no generic replacement defined in this document</td>
          </tr>
        </tbody>
      </table>
    </section>

    <section numbered="false" toc="default" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>TBD.</t>
    </section>
  </back>
</rfc>