<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" ipr="trust200902" docName="draft-ietf-manet-dlep-traffic-classification-17" number="9892" consensus="true" obsoletes="" updates="" submissionType="IETF" xml:lang="en" tocInclude="true" symRefs="true" sortRefs="true" prepTime="2026-01-31T12:59:23" indexInclude="true" scripts="Common,Latin" tocDepth="3">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-manet-dlep-traffic-classification-17" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9892" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="DLEP Traffic Classification">Dynamic Link Exchange Protocol (DLEP) Traffic Classification Data Item</title>
    <seriesInfo name="RFC" value="9892" stream="IETF"/>
    <author initials="B." surname="Cheng" fullname="Bow-Nan Cheng">
      <organization showOnFrontPage="true">MIT Lincoln Laboratory</organization>
      <address>
        <postal>
          <street>Massachusetts Institute of Technology</street>
          <street>244 Wood Street</street>
          <city>Lexington</city>
          <region>MA</region>
          <code>02421-6426</code>
          <country>United States of America</country>
        </postal>
        <email>bcheng@ll.mit.edu</email>
      </address>
    </author>
    <author initials="D." surname="Wiggins" fullname="David Wiggins">
    </author>
    <author initials="L." surname="Berger" fullname="Lou Berger">
      <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
      <address>
        <email>lberger@labn.net</email>
      </address>
    </author>
    <author role="editor" initials="D." surname="Fedyk" fullname="Don Fedyk">
      <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
      <address>
        <email>dfedyk@labn.net</email>
      </address>
    </author>
    <date month="01" year="2026"/>
    <area>RTG</area>
    <workgroup>manet</workgroup>
    <keyword>Diffserv Code Points</keyword>
    <keyword>Ethernet Priority Code Points</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">
      This document defines a new Data Item for the Dynamic Link Exchange Protocol (DLEP) 
      to support traffic classification.  Traffic classification
      information identifies traffic flows based on
      frame/packet content such as a destination address.  The Data Item
      is defined in an extensible and reusable fashion. Its use will be
      mandated in other documents defining specific DLEP extensions.
      This document also introduces DLEP Sub-Data Items and defines two new Sub-Data
      Items to support Diffserv and Ethernet traffic
      classification.
      </t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9892" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2026 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Revised BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Revised BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.1.2">
              <li pn="section-toc.1-1.1.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.2.1.1"><xref derivedContent="1.1" format="counter" sectionFormat="of" target="section-1.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-key-words">Key Words</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-traffic-classification">Traffic Classification</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.2.2">
              <li pn="section-toc.1-1.2.2.1">
                <t indent="0" pn="section-toc.1-1.2.2.1.1"><xref derivedContent="2.1" format="counter" sectionFormat="of" target="section-2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-traffic-classification-data">Traffic Classification Data Item</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.2.2.1.2">
                  <li pn="section-toc.1-1.2.2.1.2.1">
                    <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.2.1.2.1.1"><xref derivedContent="2.1.1" format="counter" sectionFormat="of" target="section-2.1.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-traffic-classification-sub-">Traffic Classification Sub-Data Item</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.2.2.2">
                <t indent="0" pn="section-toc.1-1.2.2.2.1"><xref derivedContent="2.2" format="counter" sectionFormat="of" target="section-2.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-diffserv-traffic-classifica">Diffserv Traffic Classification Sub-Data Item</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.2.2.2.2">
                  <li pn="section-toc.1-1.2.2.2.2.1">
                    <t indent="0" pn="section-toc.1-1.2.2.2.2.1.1"><xref derivedContent="2.2.1" format="counter" sectionFormat="of" target="section-2.2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-router-receive-processing">Router Receive Processing</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.2.2.3">
                <t indent="0" pn="section-toc.1-1.2.2.3.1"><xref derivedContent="2.3" format="counter" sectionFormat="of" target="section-2.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-ethernet-traffic-classifica">Ethernet Traffic Classification Sub-Data Item</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.2.2.3.2">
                  <li pn="section-toc.1-1.2.2.3.2.1">
                    <t indent="0" pn="section-toc.1-1.2.2.3.2.1.1"><xref derivedContent="2.3.1" format="counter" sectionFormat="of" target="section-2.3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-router-receive-processing-2">Router Receive Processing</xref></t>
                  </li>
                </ul>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-compatibility">Compatibility</xref></t>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.5.2">
              <li pn="section-toc.1-1.5.2.1">
                <t indent="0" pn="section-toc.1-1.5.2.1.1"><xref derivedContent="5.1" format="counter" sectionFormat="of" target="section-5.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-data-item-type-values">Data Item Type Values</xref></t>
              </li>
              <li pn="section-toc.1-1.5.2.2">
                <t indent="0" pn="section-toc.1-1.5.2.2.1"><xref derivedContent="5.2" format="counter" sectionFormat="of" target="section-5.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-traffic-classification-sub-d">Traffic Classification Sub-Data Item Type Values</xref></t>
              </li>
              <li pn="section-toc.1-1.5.2.3">
                <t indent="0" pn="section-toc.1-1.5.2.3.1"><xref derivedContent="5.3" format="counter" sectionFormat="of" target="section-5.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-registration-guidance">Registration Guidance</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.6.2">
              <li pn="section-toc.1-1.6.2.1">
                <t indent="0" pn="section-toc.1-1.6.2.1.1"><xref derivedContent="6.1" format="counter" sectionFormat="of" target="section-6.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.2">
                <t indent="0" pn="section-toc.1-1.6.2.2.1"><xref derivedContent="6.2" format="counter" sectionFormat="of" target="section-6.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgments">Acknowledgments</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="sec-1" numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">
      The Dynamic Link Exchange Protocol (DLEP) is defined in <xref target="RFC8175" format="default" sectionFormat="of" derivedContent="RFC8175"/>.  This protocol provides the exchange of link-related
      control information between DLEP peers.  DLEP peers are comprised
      of a modem and a router.  DLEP defines a base set of mechanisms as
      well as support for possible extensions.  DLEP defines Data Items,
      which are sets of information that can be reused in DLEP
      messaging.  The DLEP specification does not include any flow
      identification beyond DLEP endpoints, i.e., flows are identified
      based on their DLEP endpoint.  
      </t>
      <t indent="0" pn="section-1-2">This document defines DLEP
      Data Item formats that provide flow identification on a more
      granular basis.  Specifically, it enables a router
      to use traffic flow classification information provided by the
      modem to identify traffic flows based on a combination of
      information found in a data plane header. 
      (For general background on traffic classification, see
      <xref target="RFC2475" sectionFormat="of" section="2.3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc2475#section-2.3" derivedContent="RFC2475"/>.) 
      The Data Item is structured to
      allow for the use of the defined traffic classification information
      with applications such as credit window flow control as specified in
      <xref target="RFC9893" format="default" sectionFormat="of" derivedContent="RFC9893"/>. <xref target="RFC9893" format="default" sectionFormat="of" derivedContent="RFC9893"/> provides an
      example of combining traffic classification
      and credit window flow control.
      </t>
      <t indent="0" pn="section-1-3">
      This document defines traffic classification based on a DLEP
      destination and flows identified by either Differentiated Services Code Points (DSCPs) <xref target="RFC2475" format="default" sectionFormat="of" derivedContent="RFC2475"/> 
      or IEEE 
      802.1Q Ethernet 
       Priority Code Points (PCPs) <xref target="IEEE8021Q" format="default" sectionFormat="of" derivedContent="IEEE8021Q"/>.
      The defined mechanism allows for flows to be described in
      a flexible fashion and, when combined with applications such as
      credit window flow control, allows credit windows to be (1) shared
      across traffic sent to multiple DLEP destinations and as part of
      multiple flows or (2) used
      exclusively for traffic sent to a particular destination and/or
      belonging to a particular flow.
      The extension also supports the "wildcard" matching of any flow (DSCP
      or PCP).  Traffic classification information is provided such that it
      can be readily extended to support other traffic classification
      techniques or can be used by extensions that are not related to credit windows, such
      as the extension defined in <xref target="RFC8651" format="default" sectionFormat="of" derivedContent="RFC8651"/> or even
      5-tuple IP flows.
      </t>
      <t indent="0" pn="section-1-4">
      This document defines support for traffic classification using a
      single new Data Item (see <xref target="sec-di-tc" format="default" sectionFormat="of" derivedContent="Section 2.1"/>) for general
      support and defines two new Sub-Data Items to support
      identification of flows based on DSCPs and PCPs (see Sections <xref target="sec-di-tc-ds-sub" format="counter" sectionFormat="of" derivedContent="2.2"/> and <xref target="sec-di-tc-e-sub" format="counter" sectionFormat="of" derivedContent="2.3"/>).
      </t>
      <section anchor="sec-1.1" numbered="true" toc="include" removeInRFC="false" pn="section-1.1">
        <name slugifiedName="name-key-words">Key Words</name>
        <t indent="0" pn="section-1.1-1">The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
        "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>",
        "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>",
        "<bcp14>SHOULD NOT</bcp14>",
        "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
        "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document
        are to be interpreted as described in BCP 14
        <xref target="RFC2119" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> when, and only
        when, they appear in all capitals, as shown here.</t>
      </section>
    </section>
    <section anchor="sec-tc" numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-traffic-classification">Traffic Classification</name>
      <t indent="0" pn="section-2-1">
    The Traffic Classification Data Item represents a list of
    flows that may be used at the same time to provide
    different service classes 
    for traffic sent from a
    router to a modem.  The data plane information used to identify each
    flow is represented in a separate Sub-Data Item.  The Data Item and
    Sub-Data Item structures are intended to be independent of any
    specific usage of the flow identification, e.g., flow control.  The
    Sub-Data Item structure is also intended to allow for future traffic
    classification types, e.g., 5-tuple flows.  While the structure of
    the Data Items is extensible, actual flow information is expected to
    be used in an extension-dependent manner. Support for DSCP and
    PCP-based flows is defined via individual Sub-Data Items; see
    below. Other types of flow identification, e.g., based on IP
    transport-layer protocol and ports, may be defined in the future via new Sub-Data
    Items.  Note that when extensions supporting multiple Sub-Data Item
    types are negotiated, these types <bcp14>MAY</bcp14> be combined in a single Data Item.
      </t>
      <t indent="0" pn="section-2-2">
    Each list of flows is identified
    using a "Traffic Classification Identifier" or "TID" and is expected
    to represent a valid combination of data plane identifiers that may
    be used at the same time.  Each flow is identified via a "Flow
    Identifier" or "FID".  Each FID is defined in a Sub-Data Item that
    carries the data plane identifier or identifiers used to associate
    traffic with the flow.  A DLEP destination address is also needed to
    complete traffic classification information used in extensions such
    as flow control.  This information is expected to be provided in an
    extension-specific manner.  For example, this address can be provided
    by a modem when it identifies the traffic classification set in a
    Destination Up Message using the Credit Window Association Data Item
    defined in <xref target="RFC9893" format="default" sectionFormat="of" derivedContent="RFC9893"/>.
    TID and FID values have modem-local scope.
      </t>
      <section anchor="sec-di-tc" numbered="true" toc="include" removeInRFC="false" pn="section-2.1">
        <name slugifiedName="name-traffic-classification-data">Traffic Classification Data Item</name>
        <t indent="0" pn="section-2.1-1">
      This section defines the Traffic Classification Data Item.  This
      Data Item is used by a modem to provide a router with traffic
      classification information.  When an extension requires the use of
      any Data Item, the Data Items, including this Traffic Classification Data Item, <bcp14>SHOULD</bcp14> be
      included by a modem in any Session Initialization Response Message (e.g., see 
      <xref target="RFC9893" format="default" sectionFormat="of" derivedContent="RFC9893"/>). 
                Updates to
      previously provided traffic classifications or new traffic
      classifications <bcp14>MAY</bcp14> be sent by a modem by including the Data Item
      in Session Update Messages.  More than one Data Item <bcp14>MAY</bcp14> be
      included in a message to provide information on multiple traffic
      classifiers.
        </t>
        <t indent="0" pn="section-2.1-2">
      The set of traffic classification information provided in the Data
      Item is identified using a
      TID.  The actual information related to data planes that is used in traffic
      classification is provided in a variable list of Traffic
      Classification Sub-Data Items.
        </t>
        <t indent="0" pn="section-2.1-3">
      The format of the Traffic Classification Data Item is as follows:
        </t>
        <artwork name="" type="" align="left" alt="" pn="section-2.1-4">
     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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Data Item Type                | Length                        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |Traffic Class. Identifier (TID)|   Num SDIs    |   Reserved    |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    ~           Traffic Classification Sub-Data Item 1              ~
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    ~                              ...                              ~
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    ~           Traffic Classification Sub-Data Item n              ~
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
        <dl newline="true" spacing="normal" indent="3" pn="section-2.1-5">
          <dt pn="section-2.1-5.1">Data Item Type:</dt>
          <dd pn="section-2.1-5.2">29</dd>
          <dt pn="section-2.1-5.3">Length:</dt>
          <dd pn="section-2.1-5.4">
            <t indent="0" pn="section-2.1-5.4.1">Variable
            </t>
            <t indent="0" pn="section-2.1-5.4.2">
        Per <xref target="RFC8175" sectionFormat="of" section="11.3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8175#section-11.3" derivedContent="RFC8175"/>, Length
        is the number of octets in the Data Item, excluding the Data Item Type and
        Length fields. The length here is limited by the packet data unit (PDU) length 
        supported.  For example, if the packet is limited to 1400 bytes, then the 
        length <bcp14>MUST NOT</bcp14> exceed this value. If larger packets are supported,
        the maximum <bcp14>MUST</bcp14> be adjusted to be smaller than or equal to the maximum PDU.
        Multiple messages can be used if there is more data than will fit in a single TLV. 
            </t>
          </dd>
          <dt pn="section-2.1-5.5"> Traffic Classification Identifier (TID):</dt>
          <dd pn="section-2.1-5.6">
          A 16-bit unsigned integer identifying a traffic classification
          set.  There is no restriction on values used by a modem, and there
          is no requirement for sequential or ordered values.
        </dd>
          <dt pn="section-2.1-5.7">Num SDIs:</dt>
          <dd pn="section-2.1-5.8">
          An 8-bit unsigned integer indicating the number of Traffic
          Classification Sub-Data Items included in the Data Item.  A value
          of zero (0) is allowed and indicates that no traffic should be
          matched against this TID.
        </dd>
          <dt pn="section-2.1-5.9">Reserved:</dt>
          <dd pn="section-2.1-5.10">
           For the Traffic Classification Data Item, this reserved field is currently unused. 
		       It <bcp14>MUST</bcp14> be set to all zeros for this version of the Data Item and is currently ignored on reception.
		       This allows for future extensions of the Data Item if needed. 
          </dd>
          <dt pn="section-2.1-5.11">Traffic Classification Sub-Data Item:</dt>
          <dd pn="section-2.1-5.12">
          Zero or more Traffic Classification Sub-Data Items of the format
          defined in <xref target="sec-di-tc-sub" format="default" sectionFormat="of" derivedContent="Section 2.1.1"/> <bcp14>MAY</bcp14> be included.  The number <bcp14>MUST</bcp14> match the value
          carried in the Num SDIs field.
        </dd>
        </dl>
        <t indent="0" pn="section-2.1-6">
      A router receiving the Traffic Classification Data Item <bcp14>MUST</bcp14>
      locate the traffic classification information that is associated
      with the TID indicated in each received Data Item.  If no
      associated traffic classification information is found, the router
      <bcp14>MUST</bcp14> initialize a new information set using the values carried in
      the Data Item.  If the associated traffic classification information
      is found, the router <bcp14>MUST</bcp14> replace the corresponding information using the values
      carried in the Data Item.  In both cases, a router <bcp14>MUST</bcp14> also
      ensure that any data plane state (e.g., see <xref target="RFC9893" format="default" sectionFormat="of" derivedContent="RFC9893"/>) that is
      associated with the TID is updated as needed. 


        </t>
        <section anchor="sec-di-tc-sub" numbered="true" toc="include" removeInRFC="false" pn="section-2.1.1">
          <name slugifiedName="name-traffic-classification-sub-">Traffic Classification Sub-Data Item</name>
          <t indent="0" pn="section-2.1.1-1">
        All Traffic Classification Sub-Data Items share a common format
        that is patterned after the standard DLEP Data Item format.  See
        <xref target="RFC8175" sectionFormat="of" section="11.3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8175#section-11.3" derivedContent="RFC8175"/>.  There is no requirement
        on, or meaning to, Sub-Data Item ordering. 
        Any errors or inconsistencies encountered in parsing Sub-Data Items
        are handled in the same fashion as any other Data Item parsing error
        encountered in DLEP. See <xref target="RFC8175" format="default" sectionFormat="of" derivedContent="RFC8175"/>. 
          </t>
          <t indent="0" pn="section-2.1.1-2">
        The format of the Traffic Classification Sub-Data Item is as follows:
          </t>
          <artwork name="" type="" align="left" alt="" pn="section-2.1.1-3">
     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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Sub-Data Item Type            | Length                        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    ~                           Value...                            ~
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
          <dl newline="true" spacing="normal" indent="3" pn="section-2.1.1-4">
            <dt pn="section-2.1.1-4.1">Sub-Data Item Type:</dt>
            <dd pn="section-2.1.1-4.2">
            A 16-bit unsigned integer that indicates the type and
            corresponding format of the Sub-Data Item's Value field.
            Sub-Data Item Types are scoped within the Data Item in which
            they are carried, i.e., the Sub-Data Item Type field <bcp14>MUST</bcp14> be
            used together with the Traffic Classification Data Item Type to identify the format
            of the Sub-Data Item.  Traffic Classification Sub-Data
            Item Types are managed according to the 
            IANA registry described
            in <xref target="sec-iana-sdi" format="default" sectionFormat="of" derivedContent="Section 5.2"/>.
          </dd>
            <dt pn="section-2.1.1-4.3">Length:</dt>
            <dd pn="section-2.1.1-4.4">
              <t indent="0" pn="section-2.1.1-4.4.1">Variable
              </t>
              <t indent="0" pn="section-2.1.1-4.4.2">
          Per <xref target="RFC8175" sectionFormat="of" section="11.3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8175#section-11.3" derivedContent="RFC8175"/>, Length is a 16-bit unsigned
          integer that is the number of octets in the Sub-Data Item,
          excluding the Data Item Type and Length fields. Each Sub-Data Item has its own Length field.
              </t>
            </dd>
            <dt pn="section-2.1.1-4.5">Value:</dt>
            <dd pn="section-2.1.1-4.6">
              <t indent="0" pn="section-2.1.1-4.6.1">
             A field of &lt;Length&gt; octets that contains data specific to a particular Data Item.
              </t>
            </dd>
          </dl>
        </section>
      </section>
      <section anchor="sec-di-tc-ds-sub" numbered="true" toc="include" removeInRFC="false" pn="section-2.2">
        <name slugifiedName="name-diffserv-traffic-classifica">Diffserv Traffic Classification Sub-Data Item</name>
        <t indent="0" pn="section-2.2-1">
      The Diffserv Traffic Classification Sub-Data Item identifies 
      the set of DSCPs that should be treated as a
      single flow, i.e., receive the same traffic treatment.  DSCPs are
      identified in a list of Diffserv fields.  An implementation that
      does not support DSCPs and wants the same traffic treatment for
      all traffic to a destination or destinations would indicate
      0 DSCPs.
        </t>
        <t indent="0" pn="section-2.2-2">
      The format of the Diffserv Traffic Classification Sub-Data Item
      is as follows:
        </t>
        <artwork name="" type="" align="left" alt="" pn="section-2.2-3">
     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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Sub-Data Item Type (1)        |  Length                       |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Flow Identifier (FID)         |   Num DSCPs   |   DS Field 1  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |   DS Field 2  |      ...      |   DS Field n  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
        <dl newline="true" spacing="normal" indent="3" pn="section-2.2-4">
          <dt pn="section-2.2-4.1">Sub-Data Item Type:</dt>
          <dd pn="section-2.2-4.2">
            <t indent="0" pn="section-2.2-4.2.1"> 
             Sub-Data Item Type with value one (1) identifies the Diffserv 
             Traffic Classification Sub-Data Item Type in the format
             defined in <xref target="sec-di-tc-sub" format="default" sectionFormat="of" derivedContent="Section 2.1.1"/>.
            </t>
          </dd>
          <dt pn="section-2.2-4.3">Length:</dt>
          <dd pn="section-2.2-4.4">
            <t indent="0" pn="section-2.2-4.4.1">Variable
            </t>
            <t indent="0" pn="section-2.2-4.4.2">
             Length is defined above.  For this Sub-Data Item, it is
                    equal to three (3) octets plus the value of the Num DSCPs field.
                    This means that the maximum Length value is 3 + 64 or 67 octets.
                    The definition can be in multiple Sub-Data Items that are much smaller than this. 
            </t>
          </dd>
          <dt pn="section-2.2-4.5">Flow Identifier (FID):</dt>
          <dd pn="section-2.2-4.6">
          A 16-bit unsigned integer representing the data plane
          information carried in the Sub-Data Item that is to be used in
          identifying a flow.  The value 0xFFFF is reserved and <bcp14>MUST NOT</bcp14> be used in this field.
        </dd>
          <dt pn="section-2.2-4.7">Num DSCPs:</dt>
          <dd pn="section-2.2-4.8">
          An 8-bit unsigned integer indicating the number of DSCPs
          carried in the Sub-Data Item.  A zero (0) indicates a (wildcard)
          match against any DSCP value that does not have an explicit match to a FID.  A typical 
          use of this is mapping any DSCPs that are not explicitly mapped to a default queue. 
        </dd>
          <dt pn="section-2.2-4.9">DS Field:</dt>
          <dd pn="section-2.2-4.10">
            <t indent="0" pn="section-2.2-4.10.1">
          Each DS Field is 8 bits long and carries the DSCP field as defined
          in <xref target="RFC2474" format="default" sectionFormat="of" derivedContent="RFC2474"/>.
            </t>
            <artwork name="" type="" align="left" alt="" pn="section-2.2-4.10.2">
            0   1   2   3   4   5   6   7
          +---+---+---+---+---+---+---+---+
          |         DSCP          |  MBZ  |
          +---+---+---+---+---+---+---+---+
</artwork>
            <dl spacing="compact" newline="false" indent="3" pn="section-2.2-4.10.3">
              <dt pn="section-2.2-4.10.3.1">DSCP:</dt>
              <dd pn="section-2.2-4.10.3.2">Differentiated Services Code Point <xref target="RFC2474" format="default" sectionFormat="of" derivedContent="RFC2474"/></dd>
              <dt pn="section-2.2-4.10.3.3">MBZ:</dt>
              <dd pn="section-2.2-4.10.3.4">Must Be Zero - set to zero when transmitted</dd>
            </dl>
          </dd>
        </dl>
        <section anchor="sec-di-tc-rrp" numbered="true" toc="include" removeInRFC="false" pn="section-2.2.1">
          <name slugifiedName="name-router-receive-processing">Router Receive Processing</name>
          <t indent="0" pn="section-2.2.1-1">
        A router receiving the Traffic Classification Sub-Data
        Item <bcp14>MUST</bcp14> validate the information on receipt, prior to using
        the carried information, including potentially updating the data
        behavior as determined by the extension requiring the use of the
        Sub-Data Item.  Validation failures <bcp14>MUST</bcp14> be treated as an error as
        described in <xref target="sec-di-tc-sub" format="default" sectionFormat="of" derivedContent="Section 2.1.1"/>.
          </t>
          <t indent="0" pn="section-2.2.1-2">
        Once validated, the receiver <bcp14>MUST</bcp14> ensure that each DS Field
        value is listed only once across the whole Traffic
        Classification Data Item.  Note that this check is across the Data
        Item and not the individual Sub-Data Items.  If the same DS Field
        value is listed more than once within the same Traffic
        Classification Data Item, the Data Item <bcp14>MUST</bcp14> be treated as an
        error as described in 
        <xref target="sec-di-tc-sub" format="default" sectionFormat="of" derivedContent="Section 2.1.1"/>.
          </t>
        </section>
      </section>
      <section anchor="sec-di-tc-e-sub" numbered="true" toc="include" removeInRFC="false" pn="section-2.3">
        <name slugifiedName="name-ethernet-traffic-classifica">Ethernet Traffic Classification Sub-Data Item</name>
        <t indent="0" pn="section-2.3-1">
      The Ethernet Traffic Classification Sub-Data Item 
      identifies the VLAN and PCPs that should be treated as a single
      flow, i.e., receive the same traffic treatment.  Ethernet PCP
                support is defined as part of the IEEE 802.1Q 
                tag format <xref target="IEEE8021Q" format="default" sectionFormat="of" derivedContent="IEEE8021Q"/> and includes a 3-bit "PCP"
      field.  The tag format also includes a 12-bit "VLAN Identifier
      (VID)" field. PCPs are identified in a list of Priority Fields.  An
      implementation that does not support PCPs and wants the same
      traffic treatment for all traffic to a destination or destinations
      would indicate 0 PCPs.  Such an implementation could identify a
      VLAN to use per destination.
        </t>
        <t indent="0" pn="section-2.3-2">
      The format of the Ethernet Traffic Classification
      Sub-Data Item is as follows:
        </t>
        <artwork name="" type="" align="left" alt="" pn="section-2.3-3">
     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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Sub-Data Item Type (2)        | Length                        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Flow Identifier (FID)         |NumPCPs| VLAN Identifier (VID) |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Pri. 1| Pri. 2| ..... | ..... | ..... |  Pad  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
        <dl newline="true" spacing="normal" indent="3" pn="section-2.3-4">
          <dt pn="section-2.3-4.1">Sub-Data Item Type:</dt>
          <dd pn="section-2.3-4.2">
            <t indent="0" pn="section-2.3-4.2.1"> 
             Sub-Data Item Type with value two (2) identifies the Ethernet 
             Traffic Classification Sub-Data Item Type in the format
             defined in <xref target="sec-di-tc-sub" format="default" sectionFormat="of" derivedContent="Section 2.1.1"/>.
            </t>
          </dd>
          <dt pn="section-2.3-4.3">Length:</dt>
          <dd pn="section-2.3-4.4">
            <t indent="0" pn="section-2.3-4.4.1">Variable
            </t>
            <t indent="0" pn="section-2.3-4.4.2">
          Length is defined above.  For this Sub-Data Item, it is equal
          to four (4) plus the number of octets needed to accommodate
          the number of Priority Fields indicated by the NumPCPs
          field. Note that as the length is in octets and each Priority
          Field is 4 bits, the total length of this Sub-Data Item is the 2 octets
          of Flow Identifier, plus the 2 octets for NumPCPs and VLAN Identifier
          plus the number of octets for PCPs.  The number of octets for the PCPs
          is computed by rounding up NumPCPs to the nearest even value and
          dividing by 2. This TLV has maximum length of 4 plus 8 divided by 2 or 8
          octets.
            </t>
          </dd>
          <dt pn="section-2.3-4.5">Flow Identifier (FID):</dt>
          <dd pn="section-2.3-4.6">
          A 16-bit unsigned integer representing the data plane
          information carried in the Sub-Data Item that is to be used in
          identifying a flow.  The value 0xFFFF is reserved and <bcp14>MUST NOT</bcp14> be used in this field.
        </dd>
          <dt pn="section-2.3-4.7">NumPCPs:</dt>
          <dd pn="section-2.3-4.8">
          A 4-bit unsigned integer indicating the number of Priority
          Fields carried in the Sub-Data Item.  A zero (0) indicates a
          (wildcard) match against any PCP value
          that does not have an explicit match to a FID.  A typical 
          use of a wildcard is mapping any PCPs that are not explicitly mapped to a default queue. 
          The maximum number of PCPs is 8. 
        </dd>
          <dt pn="section-2.3-4.9">VLAN Identifier (VID):</dt>
          <dd pn="section-2.3-4.10">
          A 12-bit unsigned integer field indicating the VLAN to be
          used in traffic classification.  VID value zero (0x000) is used
          to indicate
          that the VID is to be ignored. VID 0xFFF is reserved.
          Any other VID value from 0x001 through 0xFFE can be
          used in traffic classification.
          Any explicitly mapped VLANs are matched first.
          Any VLANs that do not have a mapping will then map to this default mapping. 
        </dd>
          <dt pn="section-2.3-4.11">Priority:</dt>
          <dd pn="section-2.3-4.12">
            <t indent="0" pn="section-2.3-4.12.1">
          Each Priority Field is 4 bits long and indicates a
          PCP field as defined in <xref target="IEEE8021Q" format="default" sectionFormat="of" derivedContent="IEEE8021Q"/>. Note
          that zero (0) is a valid value for PCP.
            </t>
            <artwork name="" type="" align="left" alt="" pn="section-2.3-4.12.2">
          0   1   2   3
        +---+---+---+---+
        |    PCP    |MBZ|
        +---+---+---+---+
</artwork>
            <dl spacing="compact" newline="false" indent="3" pn="section-2.3-4.12.3">
              <dt pn="section-2.3-4.12.3.1">PCP:</dt>
              <dd pn="section-2.3-4.12.3.2">Priority Code Point <xref target="IEEE8021Q" format="default" sectionFormat="of" derivedContent="IEEE8021Q"/></dd>
              <dt pn="section-2.3-4.12.3.3">MBZ:</dt>
              <dd pn="section-2.3-4.12.3.4">Must Be Zero - set to zero when transmitted</dd>
            </dl>
          </dd>
          <dt pn="section-2.3-4.13">Pad:</dt>
          <dd pn="section-2.3-4.14">
          A field that is 4 bits long and is included when NumPCPs is an odd number.
          This field <bcp14>MUST</bcp14> be set to zero by the sender and <bcp14>MUST</bcp14> be ignored
          on receipt.
        </dd>
        </dl>
        <section anchor="sec-di-tc-q-rrp" numbered="true" toc="include" removeInRFC="false" pn="section-2.3.1">
          <name slugifiedName="name-router-receive-processing-2">Router Receive Processing</name>
          <t indent="0" pn="section-2.3.1-1">
        A router receiving the Traffic Classification Sub-Data
        Item <bcp14>MUST</bcp14> validate the information on receipt, prior to using
        the carried information, including potentially updating the data
        behavior as determined by the extension requiring the use of the
                  Sub-Data Item.  

        Note that validation can include usage-specific semantics such as those found in 
        <xref target="RFC9893" format="default" sectionFormat="of" derivedContent="RFC9893"/>. 
        Any failures <bcp14>MUST</bcp14> be treated as an error as 
        described in <xref target="sec-di-tc-sub" format="default" sectionFormat="of" derivedContent="Section 2.1.1"/>.
          </t>
          <t indent="0" pn="section-2.3.1-2">
        After successful validation, the receiver <bcp14>MUST</bcp14> ensure that each Priority
        Field value is listed only once across the whole Traffic
        Classification Data Item.  Note that this check is across the Data
        Item and not the individual Sub-Data Items.  If the same Priority
        Field value is listed more than once within the same Traffic
        Classification Data Item, the Data Item <bcp14>MUST</bcp14> be treated as an
        error as 
        described in <xref target="sec-di-tc-sub" format="default" sectionFormat="of" derivedContent="Section 2.1.1"/>.
          </t>
          <t indent="0" pn="section-2.3.1-3">
        In cases where both Traffic Classification Sub-Data Item Types are defined, matching on
        Ethernet information takes precedence. More specifically, when a packet
        matches both a DSCP indicated in a Diffserv Traffic Classification Sub-Data
        Item (<xref target="sec-di-tc-ds-sub" format="default" sectionFormat="of" derivedContent="Section 2.2"/>) and a VID/PCP
        identified in an Ethernet Traffic Classification  Sub-Data Item (<xref target="sec-di-tc-e-sub" format="default" sectionFormat="of" derivedContent="Section 2.3"/>), the TID associated with the
        matching VLAN/PCP <bcp14>MUST</bcp14> be used. 

          </t>
        </section>
      </section>
    </section>
    <section anchor="sec-compat" numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-compatibility">Compatibility</name>
      <t indent="0" pn="section-3-1">
    The formats defined in this document will only be used when
    extensions require their use.
      </t>
      <t indent="0" pn="section-3-2">
    The DLEP specification <xref target="RFC8175" format="default" sectionFormat="of" derivedContent="RFC8175"/> defines the handling of unexpected
    appearances of any Data Items, including those defined in this
    document. 
      </t>
    </section>
    <section anchor="sec-sec" numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-4-1">
    This document introduces finer-grained flow identification mechanisms
    for DLEP. These mechanisms expose vulnerabilities similar to existing
    DLEP messages. 
    An example of a threat to which traffic classification might be susceptible is
    where a malicious actor masquerading as a DLEP peer could inject an alternate
    Traffic Classification Data Item, changing the mapping of traffic to queues; this would
    in turn cause delay, congestion,
    or loss in one or more service classes.
    Other possible threats are discussed in the Security Considerations section of
    <xref target="RFC8175" format="default" sectionFormat="of" derivedContent="RFC8175"/> and are also applicable,
    but not specific, to traffic classification.
      </t>
      <t indent="0" pn="section-4-2">
    The transport-layer security mechanisms documented in
    <xref target="RFC8175" format="default" sectionFormat="of" derivedContent="RFC8175"/>, along with the latest versions of
    <xref target="BCP195" format="default" sectionFormat="of" derivedContent="BCP195"/>, <xref target="IEEE-802.1AE" format="default" sectionFormat="of" derivedContent="IEEE-802.1AE"/>, and <xref target="IEEE-802.1X" format="default" sectionFormat="of" derivedContent="IEEE-802.1X"/> at the time of this writing, can be applied to
    this document.
    Implementations following the "networked deployment" model described
    in Section <xref target="RFC8175" section="4" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8175#section-4" derivedContent="RFC8175">"Implementation Scenarios"</xref> of <xref target="RFC8175" format="default" sectionFormat="of" derivedContent="RFC8175"/> <bcp14>SHOULD</bcp14> refer to
    <xref target="BCP195" format="default" sectionFormat="of" derivedContent="BCP195"/> for additional details.
    The Layer 2 security mechanisms documented in
    <xref target="RFC8175" format="default" sectionFormat="of" derivedContent="RFC8175"/> can also, with some updates,
    be applied to the mechanisms defined in this document.
    Examples of technologies that can be deployed to secure the Layer 2
    link include <xref target="IEEE-802.1AE" format="default" sectionFormat="of" derivedContent="IEEE-802.1AE"/> and <xref target="IEEE-802.1X" format="default" sectionFormat="of" derivedContent="IEEE-802.1X"/>.
      </t>
    </section>
    <section anchor="sec-iana" numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <section anchor="sec-iana-di" numbered="true" toc="include" removeInRFC="false" pn="section-5.1">
        <name slugifiedName="name-data-item-type-values">Data Item Type Values</name>
        <t indent="0" pn="section-5.1-1">
      IANA has assigned the following value from the "Specification
      Required" range <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/> in the DLEP
      "Data Item Type Values" registry:
        </t>
        <table anchor="table_di" align="center" pn="table-1">
          <name slugifiedName="name-new-data-item-type-value">New Data Item Type Value</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Type Code</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">29</td>
              <td align="left" colspan="1" rowspan="1">Traffic Classification</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="sec-iana-sdi" numbered="true" toc="include" removeInRFC="false" pn="section-5.2">
        <name slugifiedName="name-traffic-classification-sub-d">Traffic Classification Sub-Data Item Type Values</name>
        <t indent="0" pn="section-5.2-1">
      IANA has created a new
      DLEP registry named "Traffic Classification Sub-Data Item Type Values".
        </t>
        <t indent="0" pn="section-5.2-2">
<xref target="table_tc_reg-proc" format="default" sectionFormat="of" derivedContent="Table 2"/> shows the registration policies <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/> for the registry:
        </t>
        <table anchor="table_tc_reg-proc" align="center" pn="table-2">
          <name slugifiedName="name-registration-policies">Registration Policies</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Range</th>
              <th align="left" colspan="1" rowspan="1">Registration Procedures</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">1-65407</td>
              <td align="left" colspan="1" rowspan="1">Specification Required</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">65408-65534</td>
              <td align="left" colspan="1" rowspan="1">Private Use</td>
            </tr>
          </tbody>
        </table>
        <t indent="0" pn="section-5.2-4"><xref target="table_tc_sdi" format="default" sectionFormat="of" derivedContent="Table 3"/> shows the initial contents of the registry:</t>
        <table anchor="table_tc_sdi" align="center" pn="table-3">
          <name slugifiedName="name-initial-registry-contents">Initial Registry Contents</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Type Code</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">0</td>
              <td align="left" colspan="1" rowspan="1">Reserved</td>
              <td align="left" colspan="1" rowspan="1">RFC 9892</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">1</td>
              <td align="left" colspan="1" rowspan="1">Diffserv Traffic Classification</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC2474" format="default" sectionFormat="of" derivedContent="RFC2474"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">2</td>
              <td align="left" colspan="1" rowspan="1">Ethernet Traffic Classification</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="IEEE8021Q" format="default" sectionFormat="of" derivedContent="IEEE8021Q"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">3-65407</td>
              <td align="left" colspan="1" rowspan="1">Unassigned</td>
              <td align="left" colspan="1" rowspan="1"/>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">65408-65534</td>
              <td align="left" colspan="1" rowspan="1">Reserved for Private Use</td>
              <td align="left" colspan="1" rowspan="1">RFC 9892</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">65535</td>
              <td align="left" colspan="1" rowspan="1">Reserved</td>
              <td align="left" colspan="1" rowspan="1">RFC 9892</td>
            </tr>
          </tbody>
        </table>
        <t indent="0" pn="section-5.2-6">
         This registry encompasses packet traffic classification, where
         standard packet header identifiers in packets or data frames
         indicate Quality of Service (QoS) treatment. It includes two
         specific entries for widely recognized identifiers used in
         QoS management for IP and Ethernet networks. Reserved values are
         set aside for similar future identifiers that may emerge to
         denote QoS treatment. However, requests for new entries are not
         expected to be frequent.
        </t>
        <t indent="0" pn="section-5.2-7">
   Allocations within the registry are subject to the following requirements:
        </t>
        <ol indent="adaptive" spacing="normal" start="1" type="1" pn="section-5.2-8">
        <li pn="section-5.2-8.1" derivedCounter="1.">
         Documentation of the intended use of the requested value, in
         compliance with the "Specification Required" policy defined in
         <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>.
        </li>
          <li pn="section-5.2-8.2" derivedCounter="2.">
            <t indent="0" pn="section-5.2-8.2.1"> Approval by the designated expert (DE) appointed by the IESG.
        The DE must do the following: </t>
            <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.2-8.2.2">
              <li pn="section-5.2-8.2.2.1">
         Verify that the requested value is clearly documented and its
         purpose and usage are unambiguous.
        </li>
              <li pn="section-5.2-8.2.2.2">
         Ensure that the proposed value does not conflict with existing work
         or ongoing efforts within the IETF.
        </li>
              <li pn="section-5.2-8.2.2.3">
         Confirm that any specification requesting a code point has
        undergone review by the MANET Working Group (or a successor mailing 
        list designated by the IESG).
        </li>
              <li pn="section-5.2-8.2.2.4">
         Validate that external specifications requesting code points are
         publicly available, are permanently archived, and do not conflict
         with active or published IETF work.
        </li>
              <li pn="section-5.2-8.2.2.5">
         Ensure that the review process is conducted in a timely manner, with
         any disputes resolved through consultation with the appropriate
         working groups.
        </li>
            </ul>
          </li>
        </ol>
      </section>
      <section anchor="sec-reg-guidance" numbered="true" toc="include" removeInRFC="false" pn="section-5.3">
        <name slugifiedName="name-registration-guidance">Registration Guidance</name>
        <t indent="0" pn="section-5.3-1">
         This section provides guidance for registrations in the "Traffic
         Classification Sub-Data Item Type Values" registry. To simplify future
         registrations in DLEP-related registries, it is recommended that the
         guidance in this section apply to all registries within the "Dynamic Link
         Exchange Protocol (DLEP) Parameters" registry group that use the
         "Specification Required" policy <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>. Future
         specifications may point to the guidance in this document.
        </t>
      </section>
    </section>
  </middle>
  <back>
    <references pn="section-6">
      <name slugifiedName="name-references">References</name>
      <references pn="section-6.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t indent="0">In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t indent="0">RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8175" target="https://www.rfc-editor.org/info/rfc8175" quoteTitle="true" derivedAnchor="RFC8175">
          <front>
            <title>Dynamic Link Exchange Protocol (DLEP)</title>
            <author fullname="S. Ratliff" initials="S." surname="Ratliff"/>
            <author fullname="S. Jury" initials="S." surname="Jury"/>
            <author fullname="D. Satterwhite" initials="D." surname="Satterwhite"/>
            <author fullname="R. Taylor" initials="R." surname="Taylor"/>
            <author fullname="B. Berry" initials="B." surname="Berry"/>
            <date month="June" year="2017"/>
            <abstract>
              <t indent="0">When routing devices rely on modems to effect communications over wireless links, they need timely and accurate knowledge of the characteristics of the link (speed, state, etc.) in order to make routing decisions. In mobile or other environments where these characteristics change frequently, manual configurations or the inference of state through routing or transport protocols does not allow the router to make the best decisions. This document introduces a new protocol called the Dynamic Link Exchange Protocol (DLEP), which provides a bidirectional, event-driven communication channel between the router and the modem to facilitate communication of changing link characteristics.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8175"/>
          <seriesInfo name="DOI" value="10.17487/RFC8175"/>
        </reference>
      </references>
      <references pn="section-6.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <referencegroup anchor="BCP195" target="https://www.rfc-editor.org/info/bcp195" derivedAnchor="BCP195">
          <reference anchor="RFC8996" target="https://www.rfc-editor.org/info/rfc8996" quoteTitle="true">
            <front>
              <title>Deprecating TLS 1.0 and TLS 1.1</title>
              <author fullname="K. Moriarty" initials="K." surname="Moriarty"/>
              <author fullname="S. Farrell" initials="S." surname="Farrell"/>
              <date month="March" year="2021"/>
              <abstract>
                <t indent="0">This document formally deprecates Transport Layer Security (TLS) versions 1.0 (RFC 2246) and 1.1 (RFC 4346). Accordingly, those documents have been moved to Historic status. These versions lack support for current and recommended cryptographic algorithms and mechanisms, and various government and industry profiles of applications using TLS now mandate avoiding these old TLS versions. TLS version 1.2 became the recommended version for IETF protocols in 2008 (subsequently being obsoleted by TLS version 1.3 in 2018), providing sufficient time to transition away from older versions. Removing support for older versions from implementations reduces the attack surface, reduces opportunity for misconfiguration, and streamlines library and product maintenance.</t>
                <t indent="0">This document also deprecates Datagram TLS (DTLS) version 1.0 (RFC 4347) but not DTLS version 1.2, and there is no DTLS version 1.1.</t>
                <t indent="0">This document updates many RFCs that normatively refer to TLS version 1.0 or TLS version 1.1, as described herein. This document also updates the best practices for TLS usage in RFC 7525; hence, it is part of BCP 195.</t>
              </abstract>
            </front>
            <seriesInfo name="BCP" value="195"/>
            <seriesInfo name="RFC" value="8996"/>
            <seriesInfo name="DOI" value="10.17487/RFC8996"/>
          </reference>
          <reference anchor="RFC9325" target="https://www.rfc-editor.org/info/rfc9325" quoteTitle="true">
            <front>
              <title>Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
              <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
              <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
              <author fullname="T. Fossati" initials="T." surname="Fossati"/>
              <date month="November" year="2022"/>
              <abstract>
                <t indent="0">Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are used to protect data exchanged over a wide range of application protocols and can also form the basis for secure transport protocols. Over the years, the industry has witnessed several serious attacks on TLS and DTLS, including attacks on the most commonly used cipher suites and their modes of operation. This document provides the latest recommendations for ensuring the security of deployed services that use TLS and DTLS. These recommendations are applicable to the majority of use cases.</t>
                <t indent="0">RFC 7525, an earlier version of the TLS recommendations, was published when the industry was transitioning to TLS 1.2. Years later, this transition is largely complete, and TLS 1.3 is widely available. This document updates the guidance given the new environment and obsoletes RFC 7525. In addition, this document updates RFCs 5288 and 6066 in view of recent attacks.</t>
              </abstract>
            </front>
            <seriesInfo name="BCP" value="195"/>
            <seriesInfo name="RFC" value="9325"/>
            <seriesInfo name="DOI" value="10.17487/RFC9325"/>
          </reference>
        </referencegroup>
        <reference anchor="IEEE-802.1AE" target="https://ieeexplore.ieee.org/document/8585421" quoteTitle="true" derivedAnchor="IEEE-802.1AE">
          <front>
            <title>IEEE Standard for Local and metropolitan area networks-Media Access Control (MAC) Security</title>
            <author>
              <organization showOnFrontPage="true">IEEE</organization>
            </author>
            <date month="December" year="2018"/>
          </front>
          <seriesInfo name="DOI" value="10.1109/IEEESTD.2018.8585421"/>
          <seriesInfo name="IEEE Std" value="802.1AE-2018"/>
        </reference>
        <reference anchor="IEEE-802.1X" target="https://ieeexplore.ieee.org/document/9018454" quoteTitle="true" derivedAnchor="IEEE-802.1X">
          <front>
            <title>802.1X-2020 - IEEE Standard for Local and Metropolitan Area Networks--Port-Based Network Access Control</title>
            <author>
              <organization showOnFrontPage="true">IEEE</organization>
            </author>
            <date month="February" year="2020"/>
          </front>
          <seriesInfo name="DOI" value="10.1109/IEEESTD.2020.9018454"/>
          <seriesInfo name="IEEE Std" value="IEEE-802.1X-2020"/>
        </reference>
        <reference anchor="IEEE8021Q" target="https://ieeexplore.ieee.org/document/10004498" quoteTitle="true" derivedAnchor="IEEE8021Q">
          <front>
            <title>IEEE Standard for Local and Metropolitan Area Networks--Bridges and Bridged Networks</title>
            <author>
              <organization showOnFrontPage="true">IEEE</organization>
            </author>
            <date month="December" year="2022"/>
          </front>
          <seriesInfo name="DOI" value="10.1109/IEEESTD.2022.10004498"/>
          <seriesInfo name="IEEE Std" value="802.1Q-2022"/>
        </reference>
        <reference anchor="RFC2474" target="https://www.rfc-editor.org/info/rfc2474" quoteTitle="true" derivedAnchor="RFC2474">
          <front>
            <title>Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers</title>
            <author fullname="K. Nichols" initials="K." surname="Nichols"/>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <date month="December" year="1998"/>
            <abstract>
              <t indent="0">This document defines the IP header field, called the DS (for differentiated services) field. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2474"/>
          <seriesInfo name="DOI" value="10.17487/RFC2474"/>
        </reference>
        <reference anchor="RFC2475" target="https://www.rfc-editor.org/info/rfc2475" quoteTitle="true" derivedAnchor="RFC2475">
          <front>
            <title>An Architecture for Differentiated Services</title>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <author fullname="M. Carlson" initials="M." surname="Carlson"/>
            <author fullname="E. Davies" initials="E." surname="Davies"/>
            <author fullname="Z. Wang" initials="Z." surname="Wang"/>
            <author fullname="W. Weiss" initials="W." surname="Weiss"/>
            <date month="December" year="1998"/>
            <abstract>
              <t indent="0">This document defines an architecture for implementing scalable service differentiation in the Internet. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2475"/>
          <seriesInfo name="DOI" value="10.17487/RFC2475"/>
        </reference>
        <reference anchor="RFC8126" target="https://www.rfc-editor.org/info/rfc8126" quoteTitle="true" derivedAnchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t indent="0">Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t indent="0">To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t indent="0">This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="RFC8651" target="https://www.rfc-editor.org/info/rfc8651" quoteTitle="true" derivedAnchor="RFC8651">
          <front>
            <title>Dynamic Link Exchange Protocol (DLEP) Control-Plane-Based Pause Extension</title>
            <author fullname="B. Cheng" initials="B." surname="Cheng"/>
            <author fullname="D. Wiggins" initials="D." surname="Wiggins"/>
            <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
            <date month="October" year="2019"/>
            <abstract>
              <t indent="0">This document defines an extension to the Dynamic Link Exchange Protocol (DLEP) that enables a modem to use DLEP messages to pause and resume data traffic coming from its peer router.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8651"/>
          <seriesInfo name="DOI" value="10.17487/RFC8651"/>
        </reference>
        <reference anchor="RFC9893" target="https://www.rfc-editor.org/info/rfc9893" quoteTitle="true" derivedAnchor="RFC9893">
          <front>
            <title>Dynamic Link Exchange Protocol (DLEP) Credit-Based Flow Control Messages and Data Items</title>
            <author initials="B." surname="Cheng" fullname="Bow-Nan Cheng">
              <organization showOnFrontPage="true">MIT Lincoln Laboratory</organization>
            </author>
            <author initials="D." surname="Wiggins" fullname="David Wiggins">
            </author>
            <author initials="S." surname="Ratliff" fullname="Stan Ratliff">
            </author>
            <author initials="L." surname="Berger" fullname="Lou Berger">
              <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
            </author>
            <author initials="E." surname="Kinzie" fullname="Eric Kinzie" role="editor">
              <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
            </author>
            <date month="January" year="2026"/>
          </front>
          <seriesInfo name="RFC" value="9893"/>
          <seriesInfo name="DOI" value="10.17487/RFC9893"/>
        </reference>
        <reference anchor="RFC9894" target="https://www.rfc-editor.org/info/rfc9894" quoteTitle="true" derivedAnchor="RFC9894">
          <front>
            <title>Dynamic Link Exchange Protocol (DLEP) Diffserv Aware Credit Window Extension</title>
            <author initials="B." surname="Cheng" fullname="Bow-Nan Cheng">
              <organization showOnFrontPage="true">MIT Lincoln Laboratory</organization>
            </author>
            <author initials="D." surname="Wiggins" fullname="David Wiggins">
         </author>
            <author initials="L." surname="Berger" fullname="Lou Berger">
              <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
            </author>
            <author initials="D." surname="Eastlake 3rd" fullname="Donald E. Eastlake 3rd" role="editor">
              <organization showOnFrontPage="true">Independent</organization>
            </author>
            <date month="January" year="2026"/>
          </front>
          <seriesInfo name="RFC" value="9894"/>
          <seriesInfo name="DOI" value="10.17487/RFC9894"/>
        </reference>
      </references>
    </references>
    <section numbered="false" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgments">Acknowledgments</name>
      <t indent="0" pn="section-appendix.a-1">The Sub-Data Item format was inspired by <contact fullname="Rick Taylor"/>'s "Data Item Containers".  He also
      proposed the separation of credit windows from traffic
      classification at IETF 98. This document was
      derived from <xref target="RFC9894" format="default" sectionFormat="of" derivedContent="RFC9894"/> as a result of discussions at IETF 101. Many
      useful comments were received from contributors to the MANET
      Working Group, notably <contact fullname="Ronald in 't Velt"/> and
      <contact fullname="David Black"/>.</t>
      <t indent="0" pn="section-appendix.a-2">We had the honor of working too briefly with <contact fullname="David Wiggins"/> on this and related DLEP work. His
      contribution to the IETF and publication of the first and
      definitive open-source DLEP implementation have been critical to
      the acceptance of DLEP. We mourn his passing on November 26, 2023.
      We wish to recognize his guidance, leadership, and professional
      excellence.  We were fortunate to benefit from his leadership and
      friendship. He shall be missed.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author initials="B." surname="Cheng" fullname="Bow-Nan Cheng">
        <organization showOnFrontPage="true">MIT Lincoln Laboratory</organization>
        <address>
          <postal>
            <street>Massachusetts Institute of Technology</street>
            <street>244 Wood Street</street>
            <city>Lexington</city>
            <region>MA</region>
            <code>02421-6426</code>
            <country>United States of America</country>
          </postal>
          <email>bcheng@ll.mit.edu</email>
        </address>
      </author>
      <author initials="D." surname="Wiggins" fullname="David Wiggins">
    </author>
      <author initials="L." surname="Berger" fullname="Lou Berger">
        <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
        <address>
          <email>lberger@labn.net</email>
        </address>
      </author>
      <author role="editor" initials="D." surname="Fedyk" fullname="Don Fedyk">
        <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
        <address>
          <email>dfedyk@labn.net</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
