<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" consensus="true" docName="draft-ietf-detnet-mpls-13" indexInclude="true" ipr="trust200902" number="8964" prepTime="2021-01-22T15:36:59" scripts="Common,Latin" sortRefs="true" submissionType="IETF" symRefs="true" tocDepth="3" tocInclude="true" xml:lang="en">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-detnet-mpls-13" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc8964" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="DetNet Data Plane: MPLS">Deterministic Networking (DetNet) Data Plane: MPLS</title>
    <seriesInfo name="RFC" value="8964" stream="IETF"/>
    <author role="editor" fullname="Balázs Varga" initials="B." surname="Varga">
      <organization showOnFrontPage="true">Ericsson</organization>
      <address>
        <postal>
          <street>Magyar Tudosok krt. 11.</street>
          <city>Budapest</city>
          <country>Hungary</country>
          <code>1117</code>
        </postal>
        <email>balazs.a.varga@ericsson.com</email>
      </address>
    </author>
    <author fullname="János Farkas" initials="J." surname="Farkas">
      <organization showOnFrontPage="true">Ericsson</organization>
      <address>
        <postal>
          <street>Magyar Tudosok krt. 11.</street>
          <city>Budapest</city>
          <country>Hungary</country>
          <code>1117</code>
        </postal>
        <email>janos.farkas@ericsson.com</email>
      </address>
    </author>
    <author fullname="Lou Berger" initials="L." surname="Berger">
      <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
      <address>
        <email>lberger@labn.net</email>
      </address>
    </author>
    <author fullname="Andrew G. Malis" initials="A." surname="Malis">
      <organization showOnFrontPage="true">Malis Consulting</organization>
      <address>
        <email>agmalis@gmail.com</email>
      </address>
    </author>
    <author fullname="Stewart Bryant" initials="S." surname="Bryant">
      <organization showOnFrontPage="true">Futurewei Technologies</organization>
      <address>
        <email>sb@stewartbryant.com</email>
      </address>
    </author>
    <author fullname="Jouni Korhonen" initials="J." surname="Korhonen">
      <address>
        <email>jouni.nospam@gmail.com</email>
      </address>
    </author>
    <date month="01" year="2021"/>
    <workgroup>DetNet</workgroup>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">
     This document specifies the Deterministic Networking (DetNet) data plane
     when operating over an MPLS Packet Switched Network.  It leverages
     existing pseudowire (PW) encapsulations and MPLS Traffic Engineering
     (MPLS-TE) encapsulations and mechanisms.  This document builds on the
     DetNet architecture and data plane framework.
      </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/rfc8964" 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) 2021 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 Simplified BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Simplified 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>
          </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-terminology">Terminology</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" keepWithNext="true" 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-terms-used-in-this-document">Terms Used in This Document</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.2">
                <t indent="0" keepWithNext="true" 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-abbreviations">Abbreviations</xref></t>
              </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-requirements-language">Requirements Language</xref></t>
              </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-overview-of-the-detnet-mpls">Overview of the DetNet MPLS Data Plane</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2">
              <li pn="section-toc.1-1.3.2.1">
                <t indent="0" pn="section-toc.1-1.3.2.1.1"><xref derivedContent="3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-layers-of-detnet-data-plane">Layers of DetNet Data Plane</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.2">
                <t indent="0" pn="section-toc.1-1.3.2.2.1"><xref derivedContent="3.2" format="counter" sectionFormat="of" target="section-3.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-detnet-mpls-data-plane-scen">DetNet MPLS Data Plane Scenarios</xref></t>
              </li>
            </ul>
          </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-mpls-based-detnet-data-plan">MPLS-Based DetNet Data Plane Solution</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2">
              <li pn="section-toc.1-1.4.2.1">
                <t indent="0" pn="section-toc.1-1.4.2.1.1"><xref derivedContent="4.1" format="counter" sectionFormat="of" target="section-4.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-detnet-over-mpls-encapsulat">DetNet over MPLS Encapsulation Components</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.2">
                <t indent="0" pn="section-toc.1-1.4.2.2.1"><xref derivedContent="4.2" format="counter" sectionFormat="of" target="section-4.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-mpls-data-plane-encapsulati">MPLS Data Plane Encapsulation</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2.2.2">
                  <li pn="section-toc.1-1.4.2.2.2.1">
                    <t indent="0" pn="section-toc.1-1.4.2.2.2.1.1"><xref derivedContent="4.2.1" format="counter" sectionFormat="of" target="section-4.2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-detnet-control-word-and-det">DetNet Control Word and DetNet Sequence Number</xref></t>
                  </li>
                  <li pn="section-toc.1-1.4.2.2.2.2">
                    <t indent="0" pn="section-toc.1-1.4.2.2.2.2.1"><xref derivedContent="4.2.2" format="counter" sectionFormat="of" target="section-4.2.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-s-labels">S-Labels</xref></t>
                  </li>
                  <li pn="section-toc.1-1.4.2.2.2.3">
                    <t indent="0" pn="section-toc.1-1.4.2.2.2.3.1"><xref derivedContent="4.2.3" format="counter" sectionFormat="of" target="section-4.2.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-f-labels">F-Labels</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.4.2.3">
                <t indent="0" pn="section-toc.1-1.4.2.3.1"><xref derivedContent="4.3" format="counter" sectionFormat="of" target="section-4.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-oam-indication">OAM Indication</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.4">
                <t indent="0" pn="section-toc.1-1.4.2.4.1"><xref derivedContent="4.4" format="counter" sectionFormat="of" target="section-4.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-flow-aggregation">Flow Aggregation</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2.4.2">
                  <li pn="section-toc.1-1.4.2.4.2.1">
                    <t indent="0" pn="section-toc.1-1.4.2.4.2.1.1"><xref derivedContent="4.4.1" format="counter" sectionFormat="of" target="section-4.4.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-aggregation-via-lsp-hierarc">Aggregation via LSP Hierarchy</xref></t>
                  </li>
                  <li pn="section-toc.1-1.4.2.4.2.2">
                    <t indent="0" pn="section-toc.1-1.4.2.4.2.2.1"><xref derivedContent="4.4.2" format="counter" sectionFormat="of" target="section-4.4.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-aggregating-detnet-flows-as">Aggregating DetNet Flows as a New DetNet Flow</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.4.2.5">
                <t indent="0" pn="section-toc.1-1.4.2.5.1"><xref derivedContent="4.5" format="counter" sectionFormat="of" target="section-4.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-service-sub-layer-considera">Service Sub-Layer Considerations</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2.5.2">
                  <li pn="section-toc.1-1.4.2.5.2.1">
                    <t indent="0" pn="section-toc.1-1.4.2.5.2.1.1"><xref derivedContent="4.5.1" format="counter" sectionFormat="of" target="section-4.5.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-edge-node-processing">Edge Node Processing</xref></t>
                  </li>
                  <li pn="section-toc.1-1.4.2.5.2.2">
                    <t indent="0" pn="section-toc.1-1.4.2.5.2.2.1"><xref derivedContent="4.5.2" format="counter" sectionFormat="of" target="section-4.5.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-relay-node-processing">Relay Node Processing</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.4.2.6">
                <t indent="0" pn="section-toc.1-1.4.2.6.1"><xref derivedContent="4.6" format="counter" sectionFormat="of" target="section-4.6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-forwarding-sub-layer-consid">Forwarding Sub-Layer Considerations</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2.6.2">
                  <li pn="section-toc.1-1.4.2.6.2.1">
                    <t indent="0" pn="section-toc.1-1.4.2.6.2.1.1"><xref derivedContent="4.6.1" format="counter" sectionFormat="of" target="section-4.6.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-class-of-service">Class of Service</xref></t>
                  </li>
                  <li pn="section-toc.1-1.4.2.6.2.2">
                    <t indent="0" pn="section-toc.1-1.4.2.6.2.2.1"><xref derivedContent="4.6.2" format="counter" sectionFormat="of" target="section-4.6.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-quality-of-service">Quality of Service</xref></t>
                  </li>
                </ul>
              </li>
            </ul>
          </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-management-and-control-info">Management and Control Information Summary</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-service-sub-layer-informati">Service Sub-Layer Information Summary</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.5.2.1.2">
                  <li pn="section-toc.1-1.5.2.1.2.1">
                    <t indent="0" pn="section-toc.1-1.5.2.1.2.1.1"><xref derivedContent="5.1.1" format="counter" sectionFormat="of" target="section-5.1.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-service-aggregation-informa">Service Aggregation Information Summary</xref></t>
                  </li>
                </ul>
              </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-forwarding-sub-layer-inform">Forwarding Sub-Layer Information Summary</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-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <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.8.2">
              <li pn="section-toc.1-1.8.2.1">
                <t indent="0" pn="section-toc.1-1.8.2.1.1"><xref derivedContent="8.1" format="counter" sectionFormat="of" target="section-8.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.2">
                <t indent="0" pn="section-toc.1-1.8.2.2.1"><xref derivedContent="8.2" format="counter" sectionFormat="of" target="section-8.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgements</xref></t>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-contributors">Contributors</xref></t>
          </li>
          <li pn="section-toc.1-1.11">
            <t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.c"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="sec_intro" numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">
        Deterministic Networking (DetNet) is a service that can be offered by a
	network to DetNet flows.
        DetNet provides a capability for the delivery of data flows with
        extremely low packet loss rates and bounded end-to-end delivery
        latency.
	General background and concepts of DetNet can be found in the DetNet 
	architecture <xref target="RFC8655" format="default" sectionFormat="of" derivedContent="RFC8655"/>.
      </t>
      <t indent="0" pn="section-1-2">
   The purpose of this document is to describe the use of the MPLS 
   data plane to establish and support DetNet flows.
   The DetNet architecture models the DetNet-related data plane
   functions as being decomposed into two sub-layers: a service sub-layer and a
   forwarding sub-layer.  The service sub-layer is used to provide
   DetNet service functions, such as protection and reordering.  At the
   DetNet data plane, a new set of functions (Packet Replication, Elimination
   and Ordering Functions (PREOF)) provide the tasks specific to the service
   sub-layer. The forwarding sub-layer is used to provide
   forwarding assurance (low loss, assured latency, and limited
   out-of-order delivery). The use of the functionalities of the DetNet 
   service sub-layer and the DetNet forwarding sub-layer require 
   careful design and control by the Controller Plane in addition to the
   DetNet-specific use of MPLS encapsulation as specified by this 
   document.
      </t>
      <t indent="0" pn="section-1-3">
    This document specifies the DetNet data plane operation and the on-wire
    encapsulation of DetNet flows over an MPLS-based Packet Switched Network
    (PSN) using the service reference model.  MPLS encapsulation
    already provides a solid foundation of building blocks to enable the DetNet
    service and forwarding sub-layer functions.  

MPLS-encapsulated DetNet can
    be carried over a variety of different network technologies that can
    provide the level of service required for DetNet.  However, the specific
    details of how DetNet MPLS is carried over different network technologies
    are out of scope for this document.
      </t>
      <t indent="0" pn="section-1-4">
    MPLS-encapsulated DetNet flows can carry different types of
    traffic.  The details of the types of traffic that are carried in
    DetNet are also out of scope for this document.  An example of IP
    using DetNet MPLS sub-networks can be found in <xref target="RFC8939" format="default" sectionFormat="of" derivedContent="RFC8939"/>. DetNet MPLS may use an associated controller 
    and Operations, Administration, and Maintenance (OAM) functions
    that are defined outside of this document.
      </t>
      <t indent="0" pn="section-1-5">
    Background information common to all data planes for DetNet
    can be found in the DetNet data plane framework <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>.
      </t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-terminology">Terminology</name>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-2.1">
        <name slugifiedName="name-terms-used-in-this-document">Terms Used in This Document</name>
        <t indent="0" pn="section-2.1-1">
   This document uses the terminology established in the DetNet
   architecture <xref target="RFC8655" format="default" sectionFormat="of" derivedContent="RFC8655"/> and 
   the DetNet data plane framework <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>. The reader is
   assumed to be familiar with these documents, any terminology
   defined therein, and basic MPLS-related terminologies in 
   <xref target="RFC3031" format="default" sectionFormat="of" derivedContent="RFC3031"/>.
        </t>
        <t indent="0" pn="section-2.1-2">
   The following terminology is introduced in this document:
        </t>
        <dl newline="false" spacing="normal" indent="14" pn="section-2.1-3">
          <dt pn="section-2.1-3.1">F-Label</dt>
          <dd pn="section-2.1-3.2">
       A DetNet "forwarding" label that identifies the Label Switched Path (LSP) used to
       forward a DetNet flow across an MPLS PSN, i.e., a hop-by-hop
       label used between Label Switching Routers (LSRs).
     </dd>
          <dt pn="section-2.1-3.3">S-Label</dt>
          <dd pn="section-2.1-3.4">
       A DetNet "service" label that is used between DetNet nodes that
       implement the DetNet service sub-layer functions. An S-Label
       is used to identify a DetNet flow at the DetNet service
       sub-layer at a receiving DetNet node.
     </dd>
          <dt pn="section-2.1-3.5">A-Label</dt>
          <dd pn="section-2.1-3.6">
       A special case of an S-Label, whose aggregation properties are known only at 
       the aggregation and deaggregation end points.
     </dd>
          <dt pn="section-2.1-3.7">d-CW</dt>
          <dd pn="section-2.1-3.8">
      A DetNet Control Word (d-CW) that is used for sequencing information
      of a DetNet flow at the DetNet
      service sub-layer.
    </dd>
        </dl>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-2.2">
        <name slugifiedName="name-abbreviations">Abbreviations</name>
        <t indent="0" pn="section-2.2-1">
   The following abbreviations are used in this document:
        </t>
        <dl newline="false" spacing="normal" indent="14" pn="section-2.2-2">
          <dt pn="section-2.2-2.1">CoS</dt>
          <dd pn="section-2.2-2.2">Class of Service</dd>
          <dt pn="section-2.2-2.3">CW</dt>
          <dd pn="section-2.2-2.4">Control Word</dd>
          <dt pn="section-2.2-2.5">DetNet</dt>
          <dd pn="section-2.2-2.6">Deterministic Networking</dd>
          <dt pn="section-2.2-2.7">LSR</dt>
          <dd pn="section-2.2-2.8">Label Switching Router</dd>
          <dt pn="section-2.2-2.9">MPLS</dt>
          <dd pn="section-2.2-2.10">Multiprotocol Label Switching</dd>
          <dt pn="section-2.2-2.11">MPLS-TE</dt>
          <dd pn="section-2.2-2.12">Multiprotocol Label Switching Traffic Engineering</dd>
          <dt pn="section-2.2-2.13">MPLS-TP</dt>
          <dd pn="section-2.2-2.14">Multiprotocol Label Switching Transport Profile</dd>
          <dt pn="section-2.2-2.15">OAM</dt>
          <dd pn="section-2.2-2.16">Operations, Administration, and Maintenance</dd>
          <dt pn="section-2.2-2.17">PE</dt>
          <dd pn="section-2.2-2.18">Provider Edge</dd>
          <dt pn="section-2.2-2.19">PEF</dt>
          <dd pn="section-2.2-2.20">Packet Elimination Function</dd>
          <dt pn="section-2.2-2.21">PRF</dt>
          <dd pn="section-2.2-2.22">Packet Replication Function</dd>
          <dt pn="section-2.2-2.23">PREOF</dt>
          <dd pn="section-2.2-2.24">Packet Replication, Elimination and Ordering Functions</dd>
          <dt pn="section-2.2-2.25">POF</dt>
          <dd pn="section-2.2-2.26">Packet Ordering Function</dd>
          <dt pn="section-2.2-2.27">PSN</dt>
          <dd pn="section-2.2-2.28">Packet Switched Network</dd>
          <dt pn="section-2.2-2.29">PW</dt>
          <dd pn="section-2.2-2.30">Pseudowire</dd>
          <dt pn="section-2.2-2.31">QoS</dt>
          <dd pn="section-2.2-2.32">Quality of Service</dd>
          <dt pn="section-2.2-2.33">S-PE</dt>
          <dd pn="section-2.2-2.34">Switching Provider Edge</dd>
          <dt pn="section-2.2-2.35">T-PE</dt>
          <dd pn="section-2.2-2.36">Terminating Provider Edge</dd>
          <dt pn="section-2.2-2.37">TSN</dt>
          <dd pn="section-2.2-2.38">Time-Sensitive Networking</dd>
        </dl>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-2.3">
        <name slugifiedName="name-requirements-language">Requirements Language</name>
        <t indent="0" pn="section-2.3-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_dt_dp" numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-overview-of-the-detnet-mpls">Overview of the DetNet MPLS Data Plane</name>
      <section anchor="sec_lay_dt_dp" numbered="true" toc="include" removeInRFC="false" pn="section-3.1">
        <name slugifiedName="name-layers-of-detnet-data-plane">Layers of DetNet Data Plane</name>
        <t indent="0" pn="section-3.1-1">
    MPLS provides a wide range of capabilities that can be utilized
    by DetNet.  A straight-forward approach utilizing MPLS for a
    DetNet service sub-layer is based on the existing pseudowire (PW)
    encapsulations and utilizes existing MPLS-TE
    encapsulations and mechanisms.
    Background on PWs can be found in <xref target="RFC3985" format="default" sectionFormat="of" derivedContent="RFC3985"/>, <xref target="RFC3032" format="default" sectionFormat="of" derivedContent="RFC3032"/>, and <xref target="RFC3031" format="default" sectionFormat="of" derivedContent="RFC3031"/>. 
    Background on MPLS-TE can be 
    found in <xref target="RFC3272" format="default" sectionFormat="of" derivedContent="RFC3272"/> and <xref target="RFC3209" format="default" sectionFormat="of" derivedContent="RFC3209"/>.
        </t>
        <figure anchor="dn_mpls_dp_approach" align="left" suppress-title="false" pn="figure-1">
          <name slugifiedName="name-detnet-adaptation-to-mpls-d">DetNet Adaptation to MPLS Data Plane</name>
          <artwork align="center" name="" type="" alt="" pn="section-3.1-2.1">
                   DetNet        MPLS
                     .
Bottom of Stack      .
(inner label)    +------------+
                 |  Service   | d-CW, S-Label (A-Label)
                 +------------+
                 | Forwarding | F-Label(s)
                 +------------+
Top of Stack         .
(outer label)        .
    </artwork>
        </figure>
        <t indent="0" pn="section-3.1-3">
    The DetNet MPLS data plane representation is illustrated in
    <xref target="dn_mpls_dp_approach" format="default" sectionFormat="of" derivedContent="Figure 1"/>.
    The service sub-layer includes a DetNet Control Word (d-CW) and
    an identifying service label (S-Label).  The DetNet Control Word
    (d-CW) conforms to the Generic PW MPLS Control Word (PWMCW)
    defined in <xref target="RFC4385" format="default" sectionFormat="of" derivedContent="RFC4385"/>. An aggregation label (A-Label) is
    a special case of S-Label used for aggregation.
        </t>
        <t indent="0" pn="section-3.1-4">
    A node operating on a received DetNet flow at the DetNet service
    sub-layer uses the local context associated with a received S-Label,
    i.e., a received F-Label, to determine which local DetNet
    operation(s) are applied to that packet.
    An S-Label may be taken from the platform label space
    <xref target="RFC3031" format="default" sectionFormat="of" derivedContent="RFC3031"/>, making it unique and enabling DetNet
    flow identification regardless of which input interface or
    LSP the packet arrives on. It is important to note that S-Label
    values are driven by the receiver, not the sender.
        </t>
        <t indent="0" pn="section-3.1-5">
    The DetNet forwarding sub-layer is supported by zero or more
    forwarding labels (F-Labels). MPLS-TE
    encapsulations and mechanisms can be utilized to provide a
    forwarding sub-layer that is responsible for providing resource
    allocation and explicit routes.
        </t>
      </section>
      <section anchor="sec_mpls_dt_dp_scen" numbered="true" toc="include" removeInRFC="false" pn="section-3.2">
        <name slugifiedName="name-detnet-mpls-data-plane-scen">DetNet MPLS Data Plane Scenarios</name>
        <figure anchor="fig_dn_mpls_detnet" align="left" suppress-title="false" pn="figure-2">
          <name slugifiedName="name-a-detnet-mpls-network">A DetNet MPLS Network</name>
          <artwork name="" type="" align="left" alt="" pn="section-3.2-1.1">
DetNet MPLS       Relay       Transit         Relay       DetNet MPLS
End System        Node         Node           Node        End System
   (T-PE)        (S-PE)       (LSR)          (S-PE)         (T-PE)
+----------+                                             +----------+
|   Appl.  |&lt;------------ End-to-End Service -----------&gt;|   Appl.  |
+----------+   +---------+                 +---------+   +----------+
| Service  |&lt;--| Service |-- DetNet flow --| Service |--&gt;| Service  |
+----------+   +---------+  +----------+   +---------+   +----------+
|Forwarding|   |Fwd| |Fwd|  |Forwarding|   |Fwd| |Fwd|   |Forwarding|
+-------.--+   +-.-+ +-.-+  +----.---.-+   +-.-+ +-.-+   +---.------+
        :  Link  :    /  ,-----.  \   : Link :    /  ,-----.  \
        +........+    +-[ Sub-  ]-+   +......+    +-[ Sub-  ]-+
                        [Network]                   [Network]
                         `-----'                     `-----'
        |&lt;- LSP --&gt;| |&lt;-------- LSP -----------| |&lt;--- LSP --&gt;|

        |&lt;----------------- DetNet MPLS ---------------------&gt;|
        </artwork>
        </figure>
        <t indent="0" pn="section-3.2-2">
        <xref target="fig_dn_mpls_detnet" format="default" sectionFormat="of" derivedContent="Figure 2"/> illustrates
        a hypothetical DetNet MPLS-only network
        composed of DetNet-aware MPLS-enabled end systems operating over a
        DetNet-aware MPLS network.  In this figure, the relay nodes are PE
        devices that define the MPLS LSP boundaries, and the transit nodes
        are LSRs.
        </t>
        <t indent="0" pn="section-3.2-3">
        DetNet end systems and relay nodes understand the particular needs
        of DetNet flows and provide both DetNet service and forwarding
        sub-layer functions.  In the case of MPLS, DetNet service-aware nodes add, remove,
        and process d-CWs, S-Labels, and F-Labels as needed.
        DetNet MPLS nodes provide functionality analogous to T-PEs when
        they sit at the edge of an MPLS domain and S-PEs when they are
        in the middle of an MPLS domain; see <xref target="RFC6073" format="default" sectionFormat="of" derivedContent="RFC6073"/>.
        </t>
        <t indent="0" pn="section-3.2-4">
        In a DetNet MPLS network, transit nodes may be DetNet-service-aware or
	DetNet-unaware MPLS Label Switching Routers 
        (LSRs).  In this latter case, such LSRs would be unaware of the
        special requirements of the DetNet service sub-layer but would
        still provide traffic engineering functions and the QoS
        capabilities needed to ensure that the (TE) LSPs meet the service
        requirements of the carried DetNet flows.
        </t>
        <t indent="0" pn="section-3.2-5">
        The application of DetNet using MPLS supports a number of
	control and management plane types. These types support certain MPLS
	data plane deployments. For example, RSVP-TE, MPLS-TP, or MPLS Segment
        Routing (when extended to support resource allocation) are all valid
        MPLS deployment cases.
        </t>
        <t indent="0" pn="section-3.2-6">
        <xref target="fig_pw_detnet" format="default" sectionFormat="of" derivedContent="Figure 3"/> illustrates how an end-to-end MPLS-based
        DetNet service is provided in more detail.  
	In this figure, the
        Customer Edge (CE1 and CE2) are able to send and receive
	MPLS-encapsulated DetNet flows, and R1, R2, and R3 are relay nodes in	the 
        middle of a DetNet network.  The 'X' in the end systems and relay
        nodes represents potential DetNet compound flow packet replication and
        elimination points.  In this example, service protection is supported
        utilizing at least two DetNet member flows and TE LSPs.  For a
        unidirectional flow, R1 supports PRF, and R3 supports PEF and POF.  Note
        that the relay nodes may change the underlying forwarding sub-layer,
        for example, tunneling MPLS over IEEE 802.1 TSN <xref target="I-D.ietf-detnet-mpls-over-tsn" format="default" sectionFormat="of" derivedContent="DetNet-MPLS-over-TSN"/> or simply
	over interconnected network links. 
        </t>
        <figure anchor="fig_pw_detnet" align="left" suppress-title="false" pn="figure-3">
          <name slugifiedName="name-mpls-based-native-detnet">MPLS-Based Native DetNet</name>
          <artwork name="" type="" align="left" alt="" pn="section-3.2-7.1">
        DetNet                                        DetNet
DetNet  Service        Transit          Transit       Service  DetNet
MPLS    |             |&lt;-Tnl-&gt;|        |&lt;-Tnl-&gt;|            |  MPLS
End     |             V   1   V        V   2   V            |  End
System  |    +--------+       +--------+       +--------+   |  System
+---+   |    |   R1   |=======|   R2   |=======|   R3   |   |  +---+
|  X...DFa...|._X_....|..DF1..|.__ ___.|..DF3..|...._X_.|.DFa..|.X |
|CE1|========|    \   |       |   X    |       |   /    |======|CE2|
|   |   |    |     \_.|..DF2..|._/ \__.|..DF4..|._/     |   |  |   |
+---+        |        |=======|        |=======|        |      +---+
    ^        +--------+       +--------+       +--------+      ^
    |        Relay Node       Relay Node       Relay Node      |
    |          (S-PE)           (S-PE)           (S-PE)        |
    |                                                          |
    |&lt;---------------------- DetNet MPLS ---------------------&gt;|
    |                                                          |
    |&lt;--------------- End-to-End DetNet Service --------------&gt;|

    -------------------------- Data Flow -------------------------&gt;
        </artwork>
        </figure>
        <dl newline="false" spacing="normal" indent="6" pn="section-3.2-8">
          <dt pn="section-3.2-8.1">X</dt>
          <dd pn="section-3.2-8.2">- Optional service protection (none, PRF, PREOF, PEF/POF)</dd>
          <dt pn="section-3.2-8.3">DFx</dt>
          <dd pn="section-3.2-8.4">- DetNet member flow x over a TE LSP</dd>
        </dl>
      </section>
    </section>
    <section anchor="dn-dt-solution" numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-mpls-based-detnet-data-plan">MPLS-Based DetNet Data Plane Solution</name>
      <section anchor="dn-MPLS-en-comps" numbered="true" toc="include" removeInRFC="false" pn="section-4.1">
        <name slugifiedName="name-detnet-over-mpls-encapsulat">DetNet over MPLS Encapsulation Components</name>
        <t indent="0" pn="section-4.1-1">
   To carry DetNet over MPLS, the following is required:

        </t>
        <ol spacing="normal" type="1" indent="adaptive" start="1" pn="section-4.1-2">
	  <li pn="section-4.1-2.1" derivedCounter="1.">A method of identifying the MPLS payload type.</li>
          <li pn="section-4.1-2.2" derivedCounter="2.">A method of identifying the DetNet flow(s) to the processing element.</li>
          <li pn="section-4.1-2.3" derivedCounter="3.">A method of distinguishing DetNet OAM packets from DetNet data packets.</li>
          <li pn="section-4.1-2.4" derivedCounter="4.">A method of carrying the DetNet sequence number.</li>
          <li pn="section-4.1-2.5" derivedCounter="5.">A suitable LSP to deliver the packet to the egress PE.</li>
          <li pn="section-4.1-2.6" derivedCounter="6.">A method of carrying queuing and forwarding indication.</li>
        </ol>
        <t indent="0" pn="section-4.1-3">
   In this design, an MPLS service label (the S-Label) is similar to a
   pseudowire (PW) label <xref target="RFC3985" format="default" sectionFormat="of" derivedContent="RFC3985"/> and
   is used to identify both the
   DetNet flow identity and the MPLS payload type satisfying
   (1) and (2) in the list above.
   OAM traffic discrimination
   happens through the use of the Associated Channel method described in
   <xref target="RFC4385" format="default" sectionFormat="of" derivedContent="RFC4385"/>.  

   The DetNet sequence number is carried in
   the DetNet Control Word, which also carries the Data/OAM discriminator.  To
   simplify implementation and to maximize interoperability, two sequence
   number sizes are supported: a 16-bit sequence number and a 28-bit
   sequence number.  The 16-bit sequence number is needed to support
   some types of legacy clients. The 28-bit sequence number is used in
   situations where it is necessary to ensure that, in high-speed networks,
   the sequence number space does not wrap whilst packets are in flight.
        </t>
        <t indent="0" pn="section-4.1-4">
   The LSP used to forward the DetNet packet is not restricted regarding any
   method used for establishing that LSP (for example, MPLS-LDP, MPLS-TE,
   MPLS-TP <xref target="RFC5921" format="default" sectionFormat="of" derivedContent="RFC5921"/>, MPLS Segment Routing
   <xref target="RFC8660" format="default" sectionFormat="of" derivedContent="RFC8660"/>, etc.).  The F-Label(s) and the
   S-Label may be used alone or together to indicate the required queue
   processing as well as the forwarding parameters.  Note that the possible
   use of Penultimate Hop Popping (PHP) means that the S-Label may be the only
   label received at the terminating DetNet service.
        </t>
      </section>
      <section anchor="pwSolution" numbered="true" toc="include" removeInRFC="false" pn="section-4.2">
        <name slugifiedName="name-mpls-data-plane-encapsulati">MPLS Data Plane Encapsulation</name>
        <t indent="0" pn="section-4.2-1">
    <xref target="fig_pw_mpls" format="default" sectionFormat="of" derivedContent="Figure 4"/> illustrates a DetNet data plane MPLS
    encapsulation.  The MPLS-based encapsulation of the DetNet flows
    is well suited for the scenarios described in
    <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>.
    Furthermore, an end-to-end DetNet
    service, i.e., native DetNet deployment (see <xref target="sec_mpls_dt_dp_scen" format="default" sectionFormat="of" derivedContent="Section 3.2"/>), is also possible if
    DetNet end systems are capable of initiating and terminating
    MPLS-encapsulated packets.</t>
        <t indent="0" pn="section-4.2-2">The MPLS-based DetNet data plane encapsulation consists of:</t>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.2-3">
          <li pn="section-4.2-3.1">A DetNet Control Word (d-CW) containing sequencing information for
	  packet replication and duplicate elimination purposes, and the OAM
	  indicator.</li>
          <li pn="section-4.2-3.2">A DetNet service label (S-Label) that identifies a DetNet flow at
	  the receiving DetNet service sub-layer processing node.</li>
          <li pn="section-4.2-3.3">Zero or more DetNet MPLS forwarding label(s) (F-Label) used to
          direct the packet along the Label Switched Path (LSP) to the next
          DetNet service sub-layer processing node along the path.  When
          PHP is in use, there may be no F-Label in the
          protocol stack on the final hop.</li>
          <li pn="section-4.2-3.4">The necessary data-link encapsulation is then applied prior to
	  transmission over the physical media.</li>
        </ul>
        <figure anchor="fig_pw_mpls" align="left" suppress-title="false" pn="figure-4">
          <name slugifiedName="name-encapsulation-of-a-detnet-a">Encapsulation of a DetNet App-Flow in an MPLS PSN</name>
          <artwork align="center" name="" type="" alt="" pn="section-4.2-4.1">
  DetNet MPLS-based encapsulation

+---------------------------------+
|                                 |
|         DetNet App-Flow         |
|         Payload  Packet         |
|                                 |
+---------------------------------+ &lt;--\
|       DetNet Control Word       |    |
+---------------------------------+    +--&gt; DetNet data plane
|           S-Label               |    |    MPLS encapsulation
+---------------------------------+    |
|         [ F-Label(s) ]          |    |
+---------------------------------+ &lt;--/
|           Data-Link             |
+---------------------------------+
|           Physical              |
+---------------------------------+
    </artwork>
        </figure>
        <section anchor="dn-sn" numbered="true" toc="include" removeInRFC="false" pn="section-4.2.1">
          <name slugifiedName="name-detnet-control-word-and-det">DetNet Control Word and DetNet Sequence Number</name>
          <t indent="0" pn="section-4.2.1-1">
   A DetNet Control Word (d-CW) conforms to the Generic PW MPLS Control
   Word (PWMCW) defined in <xref target="RFC4385" format="default" sectionFormat="of" derivedContent="RFC4385"/>. The d-CW formatted
   as shown in <xref target="fig_detnet_cw" format="default" sectionFormat="of" derivedContent="Figure 5"/> <bcp14>MUST</bcp14> be present in all
   DetNet packets containing App-flow data.
   This format of the d-CW was created in order to (1) allow larger sequence number
   space to avoid sequence number rollover frequency in some applications 
   and (2) allow sequence numbering systems that include the value zero 
   as a valid sequence number, which simplifies implementation.
          </t>
          <figure anchor="fig_detnet_cw" align="left" suppress-title="false" pn="figure-5">
            <name slugifiedName="name-detnet-control-word">DetNet Control Word</name>
            <artwork align="center" name="" type="" alt="" pn="section-4.2.1-2.1">
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 0 0|                Sequence Number                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    </artwork>
          </figure>
          <dl newline="true" spacing="normal" indent="3" pn="section-4.2.1-3">
            <dt pn="section-4.2.1-3.1">(bits 0 to 3)</dt>
            <dd pn="section-4.2.1-3.2">Per <xref target="RFC4385" format="default" sectionFormat="of" derivedContent="RFC4385"/>,
	    <bcp14>MUST</bcp14> be set to zero (0).</dd>
            <dt pn="section-4.2.1-3.3">Sequence Number (bits 4 to 31)</dt>
            <dd pn="section-4.2.1-3.4">An unsigned value implementing the DetNet sequence number. The
	    sequence number space is a circular one with no restriction on the
	    initial value.</dd>
          </dl>
          <t indent="0" pn="section-4.2.1-4">
   A separate sequence number space <bcp14>MUST</bcp14> be maintained by
   the node that adds the d-CW for each DetNet App-flow, i.e., DetNet service.
   The following Sequence Number field lengths <bcp14>MUST</bcp14> be supported:
          </t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.2.1-5">
            <li pn="section-4.2.1-5.1">0 bits</li>
            <li pn="section-4.2.1-5.2">16 bits</li>
            <li pn="section-4.2.1-5.3">28 bits</li>
          </ul>
          <t indent="0" pn="section-4.2.1-6">The sequence number length <bcp14>MUST</bcp14> be provisioned on
	  a per-DetNet-service basis via configuration, i.e., via the
	  Controller Plane described in <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>. 
          </t>
          <t indent="0" pn="section-4.2.1-7">
    A 0-bit Sequence Number field length indicates that there is no
    DetNet sequence number used for the flow.  When the length is zero,
    the Sequence Number field <bcp14>MUST</bcp14> be set to zero (0) on all packets
    sent for the flow.
          </t>
          <t indent="0" pn="section-4.2.1-8">
    When the Sequence Number field length is 16 or 28 bits for a flow,
    the sequence number <bcp14>MUST</bcp14> be incremented by one for each new App-flow
    packet sent. When the field length is 16 bits, d-CW bits 4 to 15
    <bcp14>MUST</bcp14> be set to zero (0). The values carried in this field can wrap,
    and it is important to note that zero (0) is a valid field value.
    For example, where the sequence number size is 16 bits, the sequence
    will contain: 65535, 0, 1, where zero (0) is an ordinary
    sequence number.
          </t>
          <t indent="0" pn="section-4.2.1-9"> It is important to note that this document differs from <xref target="RFC4448" format="default" sectionFormat="of" derivedContent="RFC4448"/>, where a sequence number of zero
	  (0) is used to indicate that the sequence number check algorithm is
	  not used. 
          </t>
          <t indent="0" pn="section-4.2.1-10">The sequence number is optionally used during receive processing,
	  as described below in Sections <xref target="pef-requirements" format="counter" sectionFormat="of" derivedContent="4.2.2.2"/> and <xref target="pof-requirements" format="counter" sectionFormat="of" derivedContent="4.2.2.3"/>.
          </t>
        </section>
        <section anchor="flow-identification" numbered="true" toc="include" removeInRFC="false" pn="section-4.2.2">
          <name slugifiedName="name-s-labels">S-Labels</name>
          <t indent="0" pn="section-4.2.2-1">
    A DetNet flow at the DetNet service sub-layer is identified by
    an S-Label.  MPLS-aware DetNet end systems
    and edge nodes, which are by definition MPLS ingress and egress
    nodes, <bcp14>MUST</bcp14> add (push) and remove (pop) a DetNet
    service-specific d-CW and S-Label.  Relay nodes <bcp14>MAY</bcp14> 
    swap S-Label values when processing a DetNet flow, i.e., incoming and 
	outgoing S-Labels of a DetNet flow can be different.
          </t>
          <t indent="0" pn="section-4.2.2-2">
    S-Label values <bcp14>MUST</bcp14> be provisioned per DetNet service via
    configuration, i.e., via
    the Controller Plane described in
    <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>.
    Note that S-Labels provide identification at the downstream
    DetNet service sub-layer receiver, not the sender.  As such,
    S-Labels <bcp14>MUST</bcp14> be allocated by the entity that controls the service
    sub-layer receiving a node's label space and <bcp14>MAY</bcp14> be allocated from
    the platform label space <xref target="RFC3031" format="default" sectionFormat="of" derivedContent="RFC3031"/>.
    Because S-Labels are local to each node, rather than being a
    global identifier within a domain, they must be advertised to their
    upstream DetNet service-aware peer nodes (i.e., a DetNet MPLS end
    system or a DetNet relay or edge node) and interpreted in the
    context of their received F-Label(s).
    In some PREOF topologies, the node performing replication will be
    sending to multiple nodes performing PEF or POF and may need to
    send different S-Label values for the different member flows for the
    same DetNet service.
          </t>
          <t indent="0" pn="section-4.2.2-3">
    An S-Label will normally be at the bottom of the label stack once
    the last F-Label is removed, immediately preceding the d-CW.
    To support OAM at the service sub-layer level, an OAM Associated Channel
    Header (ACH) <xref target="RFC4385" format="default" sectionFormat="of" derivedContent="RFC4385"/>
    together with a Generic Associated Channel Label (GAL) <xref target="RFC5586" format="default" sectionFormat="of" derivedContent="RFC5586"/> <bcp14>MAY</bcp14> be used in place of
    a d-CW. 
          </t>
          <t indent="0" pn="section-4.2.2-4">
    Similarly, an Entropy Label Indicator (ELI) and Entropy Label (EL) <xref target="RFC6790" format="default" sectionFormat="of" derivedContent="RFC6790"/> <bcp14>MAY</bcp14> be carried below
    the S-Label in the label stack in 
    networks where DetNet flows would otherwise receive ECMP treatment.  When
    ELs are used, the same EL value <bcp14>SHOULD</bcp14> be used for all of the packets
    sent using a specific S-Label to force the flow to follow the same path.
    However, as outlined in <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>, the use of ECMP for DetNet
    flows is <bcp14>NOT RECOMMENDED</bcp14>. ECMP <bcp14>MAY</bcp14> be used for non-DetNet flows within a
    DetNet domain.
          </t>
          <t indent="0" pn="section-4.2.2-5">
     When receiving a DetNet MPLS packet, an implementation <bcp14>MUST</bcp14> identify
     the DetNet service associated with the incoming packet based on the
     S-Label.  When a node is using platform labels for S-Labels, no
     additional information is needed, as the S-Label uniquely identifies
     the DetNet service.  In the case where platform labels are not used, zero
     or more F-Labels proceeding the S-Label <bcp14>MUST</bcp14> be used together with
     the S-Label to uniquely identify the DetNet service associated with a
     received packet.
     The incoming interface <bcp14>MAY</bcp14> also be used together with
     any present F-Label(s) and the S-Label to uniquely identify an
     incoming DetNet service, for example, in the case where PHP is used.
     Note that the choice to use the platform label space
     for an S-Label or an S-Label plus one or more F-Labels to identify 
     DetNet services is a local implementation choice, with one caveat.  When one
     or more F-Labels, or the incoming interface, is needed together with an
     S-Label to uniquely identify a service, the Controller Plane must ensure that
     incoming DetNet MPLS packets arrive with the needed information
     (F-Label(s) and/or the incoming interface) and provision the needed
     information. The provisioned information <bcp14>MUST</bcp14> then be used to
       identify incoming DetNet service based on the combination of S-Label
       and F-Label(s) or the incoming interface.
          </t>
          <t indent="0" pn="section-4.2.2-6">
     The use of platform labels for S-Labels matches other pseudowire
     encapsulations for consistency, but there is no hard requirement in
     this regard.
          </t>
          <t indent="0" pn="section-4.2.2-7">Implementation details of PREOF are out of scope for
	  this document. <xref target="IEEE802.1CB-2017" format="default" sectionFormat="of" derivedContent="IEEE802.1CB-2017"/>
	  defines equivalent replication and elimination-specific aspects,
	  which can be applied to PRF and PEF.</t>
          <section anchor="prf-requirements" numbered="true" toc="exclude" removeInRFC="false" pn="section-4.2.2.1">
            <name slugifiedName="name-packet-replication-function">Packet Replication Function Processing</name>
            <t indent="0" pn="section-4.2.2.1-1">
       The Packet Replication Function (PRF) <bcp14>MAY</bcp14> be supported
       by an implementation for outgoing DetNet flows. The use of the PRF
       for a particular DetNet service <bcp14>MUST</bcp14> be provisioned via configuration,
       i.e., via the Controller Plane described in
       <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>.  When replication
       is configured, the same App-flow data will be sent over multiple
       outgoing DetNet member flows using forwarding sub-layer LSPs.
       An S-Label value <bcp14>MUST</bcp14> be configured per outgoing member flow.
       The same d-CW field value <bcp14>MUST</bcp14> be used on all outgoing member flows for
       each replicated MPLS packet.
            </t>
          </section>
          <section anchor="pef-requirements" numbered="true" toc="exclude" removeInRFC="false" pn="section-4.2.2.2">
            <name slugifiedName="name-packet-elimination-function">Packet Elimination Function Processing</name>
            <t indent="0" pn="section-4.2.2.2-1">
       Implementations <bcp14>MAY</bcp14> support the Packet Elimination Function (PEF)
       for received DetNet MPLS flows.  When supported, use of the PEF
       for a particular DetNet service <bcp14>MUST</bcp14> be provisioned via configuration,
       i.e., via the Controller Plane described in
       <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>.
            </t>
            <t indent="0" pn="section-4.2.2.2-2">
	   After a DetNet service is identified for a received DetNet MPLS packet,
	   as described above, if PEF is configured for that DetNet service,
	   duplicate (replicated) instances of a particular sequence number <bcp14>MUST</bcp14> be
	   discarded. 
	   The specific mechanisms used for an implementation to identify which
       received packets are duplicates and which are new is an
       implementation choice.   Note that, per <xref target="dn-sn" format="default" sectionFormat="of" derivedContent="Section 4.2.1"/>,
       the Sequence Number field length may be 16 or 28 bits, and the
       field value can wrap. PEF <bcp14>MUST NOT</bcp14> be used with DetNet flows configured
       with a d-CW Sequence Number field length of 0 bits.
            </t>
            <t indent="0" pn="section-4.2.2.2-3">
	   An implementation <bcp14>MAY</bcp14> constrain the maximum number of sequence numbers
	   that are tracked on either a platform-wide or per-flow basis.
	   Some implementations <bcp14>MAY</bcp14> support the provisioning of
       the maximum number of sequence numbers that are tracked on
       either a platform-wide or per-flow basis.
            </t>
          </section>
          <section anchor="pof-requirements" numbered="true" toc="exclude" removeInRFC="false" pn="section-4.2.2.3">
            <name slugifiedName="name-packet-ordering-function-pr">Packet Ordering Function Processing</name>
            <t indent="0" pn="section-4.2.2.3-1">
       A function that is related to in-order delivery is the Packet Ordering Function
       (POF).  Implementations <bcp14>MAY</bcp14> support POF. When
       supported, use of the POF for a particular DetNet service <bcp14>MUST</bcp14> be
       provisioned via configuration, i.e., via the Controller Plane
       described by
       <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>.
       Implementations <bcp14>MAY</bcp14> require that PEF and POF be used in combination.
       There is no requirement related to the order of execution of the PEF and POF in an implementation.
            </t>
            <t indent="0" pn="section-4.2.2.3-2">
	   After a DetNet service is identified for a received DetNet MPLS
	   packet, as described above, if POF is configured for that DetNet
	   service, packets <bcp14>MUST</bcp14> be processed in the order
	   indicated in the received d-CW Sequence Number field, which may not
	   be in the order the packets are received.  
As defined in <xref target="dn-sn" format="default" sectionFormat="of" derivedContent="Section 4.2.1"/>, the Sequence Number field length
	   may be 16 or 28 bits, the sequence number is incremented by one (1) for each new
	   MPLS packet sent for a particular DetNet service, and the field
	   value can wrap.  The specific mechanisms used for an implementation
	   to identify the order of received packets is an implementation
	   choice.
            </t>
            <t indent="0" pn="section-4.2.2.3-3">
       An implementation <bcp14>MAY</bcp14> constrain the maximum number of out-of-order
	   packets that can be processed on either a platform-wide or per-flow
	   basis.  The number of out-of-order packets that can be processed also
	   impacts the latency of a flow.
            </t>
            <t indent="0" pn="section-4.2.2.3-4">
	   The latency impact on the system resources needed to support a
	   specific DetNet flow will need to be evaluated by the Controller Plane
	   based on that flow's traffic specification.  An example traffic 
	   specification that can be used with 
	   MPLS-TE can be found in <xref target="RFC2212" format="default" sectionFormat="of" derivedContent="RFC2212"/>.
            </t>
            <t indent="0" pn="section-4.2.2.3-5">
        DetNet implementations can use flow-specific requirements (e.g., maximum
        number of out-of-order packets and maximum latency of the flow) for
        configuration of POF-related buffers.  POF implementation details
		are out of scope for this document, and POF configuration parameters
		are implementation specific. The Controller Plane identifies and 
		sets the POF configuration parameters. 
            </t>
          </section>
        </section>
        <section anchor="f-labels" numbered="true" toc="include" removeInRFC="false" pn="section-4.2.3">
          <name slugifiedName="name-f-labels">F-Labels</name>
          <t indent="0" pn="section-4.2.3-1">
       F-Labels support the DetNet forwarding sub-layer. F-Labels
       are used to provide LSP-based connectivity between DetNet service
       sub-layer processing nodes.
          </t>
          <section anchor="f-labels-ssl" numbered="true" toc="exclude" removeInRFC="false" pn="section-4.2.3.1">
            <name slugifiedName="name-service-sub-layer-related-p">Service Sub-Layer-Related Processing</name>
            <t indent="0" pn="section-4.2.3.1-1">
          DetNet MPLS end systems, edge nodes, and relay nodes may operate at
          the DetNet service sub-layer with understanding of DetNet services and their
          requirements.  As mentioned earlier, when operating at this layer,
          such nodes can push, pop, or swap (pop then push) S-Labels.  In all
          cases, the F-Label(s) used for a DetNet service are always replaced, and
          the following procedures apply.
            </t>
            <t indent="0" pn="section-4.2.3.1-2">
         When sending a DetNet flow, zero or more F-Labels <bcp14>MAY</bcp14> be pushed
         on top of an S-Label by the node pushing an S-Label. The
         F-Label(s) to be pushed when sending a particular DetNet service <bcp14>MUST</bcp14>
         be provisioned per outgoing S-Label via configuration, i.e., via the
         Controller Plane discussed in <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>.
         F-Label(s) can also provide context for an S-Label. To
         allow for the omission of F-Label(s), an implementation <bcp14>SHOULD</bcp14>
         also allow an outgoing interface to be configured per S-Label.
            </t>
            <t indent="0" pn="section-4.2.3.1-3">
       Note that when PRF
       is supported, the same App-flow data will be sent over multiple
       outgoing  DetNet member flows using forwarding sub-layer
       LSPs. This means that an
       implementation may be sending different sets of
       F-Labels per DetNet member flow, each with a different S-Label.
            </t>
            <t indent="0" pn="section-4.2.3.1-4">
       When a single set of F-Labels is provisioned for a particular
       outgoing S-Label, that set of F-Labels <bcp14>MUST</bcp14> be pushed after
       the S-Label is pushed.
       The outgoing packet is then forwarded, as
       described below in <xref target="f-labels-all" format="default" sectionFormat="of" derivedContent="Section 4.2.3.2"/>. When a single
       outgoing interface is provisioned, the outgoing packet is then
       forwarded, as described below in <xref target="f-labels-all" format="default" sectionFormat="of" derivedContent="Section 4.2.3.2"/>.
            </t>
            <t indent="0" pn="section-4.2.3.1-5">
       When multiple sets of outgoing F-Labels or interfaces are provisioned for
       a particular DetNet service (i.e., for PRF), a copy of the outgoing packet, including
       the pushed member flow-specific S-Label, <bcp14>MUST</bcp14> be made per F-Label set and outgoing
       interface. Each set of provisioned F-Labels are then pushed onto
       a copy of the packet.  Each copy is then forwarded, as described
       below in <xref target="f-labels-all" format="default" sectionFormat="of" derivedContent="Section 4.2.3.2"/>.
            </t>
            <t indent="0" pn="section-4.2.3.1-6">
       As described in the previous section, when receiving a DetNet MPLS flow, an implementation
       identifies the DetNet service associated with the incoming packet based
       on the S-Label.  When a node is using platform labels for
       S-Labels, any F-Labels can be popped, and the S-Label uniquely
       identifies the DetNet service.  In the case where platform labels are
       not used, incoming F-Label(s) and, optionally, the incoming interface <bcp14>MUST</bcp14> also be provisioned for a
       DetNet service.
            </t>
          </section>
          <section anchor="f-labels-all" numbered="true" toc="exclude" removeInRFC="false" pn="section-4.2.3.2">
            <name slugifiedName="name-common-f-label-processing">Common F-Label Processing</name>
            <t indent="0" pn="section-4.2.3.2-1">
         All DetNet-aware MPLS nodes process F-Labels as needed to meet
         the service requirements of the DetNet flow or flows carried in
         the LSPs represented by the F-Labels.  This includes normal
         push, pop, and swap operations.  Such processing is essentially
         the same type of processing provided for TE LSPs, although the
         specific service parameters, or traffic specification, can
         differ.  When the DetNet service parameters of the DetNet flow or
         flows carried in an LSP represented by an F-Label can be met by
         an existing TE mechanism, the forwarding sub-layer processing
         node <bcp14>MAY</bcp14> be a DetNet-unaware, i.e., standard, MPLS LSR.  Such
         TE LSPs may provide LSP forwarding service as defined in, but
         not limited, to the following: <xref target="RFC3209" format="default" sectionFormat="of" derivedContent="RFC3209"/>, <xref target="RFC3270" format="default" sectionFormat="of" derivedContent="RFC3270"/>, <xref target="RFC3272" format="default" sectionFormat="of" derivedContent="RFC3272"/>, <xref target="RFC3473" format="default" sectionFormat="of" derivedContent="RFC3473"/>, <xref target="RFC4875" format="default" sectionFormat="of" derivedContent="RFC4875"/>, <xref target="RFC5440" format="default" sectionFormat="of" derivedContent="RFC5440"/>, and <xref target="RFC8306" format="default" sectionFormat="of" derivedContent="RFC8306"/>. 
            </t>
            <t indent="0" pn="section-4.2.3.2-2">
         More specifically, as mentioned above, the DetNet forwarding
         sub-layer provides explicit routes and allocated resources, and
         F-Labels are used to map to each.  Explicit routes are
         supported based on the topmost (outermost) F-Label that is
         pushed or swapped and the LSP that corresponds to this label.
         This topmost (outgoing) label <bcp14>MUST</bcp14> be associated with a
         provisioned outgoing interface and, for non-point-to-point
         outgoing interfaces, a next-hop LSR.  Note that this
         information <bcp14>MUST</bcp14> be provisioned via configuration or the
         Controller Plane.  In the previously mentioned special case
         where there are no added F-Labels and the outgoing interface is
         not a point-to-point interface, the outgoing interface <bcp14>MUST</bcp14>
         also be associated with a next-hop LSR.
            </t>
            <t indent="0" pn="section-4.2.3.2-3">
         Resources may be allocated in a hierarchical fashion per each LSP
         that is represented by each F-Label. Each LSP <bcp14>MAY</bcp14> be
         provisioned with a service parameter that dictates the
         specific traffic treatment to be received by the traffic
         carried over that LSP.  Implementations of this document <bcp14>MUST</bcp14>
         ensure that traffic carried over each LSP represented by one or more
         F-Labels receives the traffic treatment provisioned for that
         LSP.  Typical mechanisms used to provide different treatment to
         different flows include the allocation of system resources
         (such as queues and buffers) and provisioning of related
         parameters (such as shaping and policing) that may be found in
         implementations of the Resource ReSerVation Protocol (RSVP) <xref target="RFC2205" format="default" sectionFormat="of" derivedContent="RFC2205"/> and RSVP-TE <xref target="RFC3209" format="default" sectionFormat="of" derivedContent="RFC3209"/>
              <xref target="RFC3473" format="default" sectionFormat="of" derivedContent="RFC3473"/>. Support can also be
         provided via an underlying network technology, such as IEEE 802.1
         TSN <xref target="I-D.ietf-detnet-mpls-over-tsn" format="default" sectionFormat="of" derivedContent="DetNet-MPLS-over-TSN"/>.
         The specific mechanisms selected by a DetNet node to ensure DetNet
         service delivery requirements are met for supported DetNet
         flows is outside the scope of this document.
            </t>
            <t indent="0" pn="section-4.2.3.2-4">
         Packets that are marked in a way that do not correspond to
         allocated resources, e.g., lack a provisioned F-Label, can
         disrupt the QoS offered to properly reserved DetNet flows by
         using resources allocated to the reserved flows.  Therefore,
         the network nodes of a DetNet network:
            </t>
            <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.2.3.2-5">
              <li pn="section-4.2.3.2-5.1">
                <bcp14>MUST</bcp14> defend the DetNet QoS by discarding or remarking (to
             an allocated DetNet flow or noncompeting non-DetNet flow)
             packets received that are not associated with a completed
             resource allocation.
           </li>
              <li pn="section-4.2.3.2-5.2">
                <bcp14>MUST NOT</bcp14> use a DetNet allocated resource, e.g., a queue or
             shaper reserved for DetNet flows, for any packet that does
             match the corresponding DetNet flow.
           </li>
              <li pn="section-4.2.3.2-5.3">
                <bcp14>MUST</bcp14> ensure a QoS flow does not exceed its allocated
             resources or provisioned service level.
           </li>
              <li pn="section-4.2.3.2-5.4">
                <bcp14>MUST</bcp14> ensure a CoS flow or service class does not impact the
             service delivered to other flows.  This requirement is
             similar to the requirement for MPLS LSRs that CoS LSPs do
             not impact the resources allocated to TE LSPs, e.g., via
             <xref target="RFC3473" format="default" sectionFormat="of" derivedContent="RFC3473"/>.
           </li>
            </ul>
            <t indent="0" pn="section-4.2.3.2-6">
         Subsequent sections provide additional considerations related
         to CoS (<xref target="CoS" format="default" sectionFormat="of" derivedContent="Section 4.6.1"/>), QoS (<xref target="QoS" format="default" sectionFormat="of" derivedContent="Section 4.6.2"/>), and
         aggregation (<xref target="FAG" format="default" sectionFormat="of" derivedContent="Section 4.4"/>).
            </t>
          </section>
        </section>
      </section>
      <section anchor="oam-indication" numbered="true" toc="include" removeInRFC="false" pn="section-4.3">
        <name slugifiedName="name-oam-indication">OAM Indication</name>
        <t indent="0" pn="section-4.3-1">
    OAM follows the procedures set out in <xref target="RFC5085" format="default" sectionFormat="of" derivedContent="RFC5085"/> with the
    restriction that only Virtual Circuit Connectivity Verification
    (VCCV) type 1 is supported.</t>
        <t indent="0" pn="section-4.3-2">As shown in Figure 3 of <xref target="RFC5085" format="default" sectionFormat="of" derivedContent="RFC5085"/>, when the first nibble of
    the d-CW is 0x0, the payload following the d-CW is normal user
    data. However, when the first nibble of the d-CW is 0x1, the
    payload that follows the d-CW is an OAM payload with the OAM
    type indicated by the value in the d-CW Channel Type field.</t>
        <t indent="0" pn="section-4.3-3">The reader is referred to <xref target="RFC5085" format="default" sectionFormat="of" derivedContent="RFC5085"/> for a more detailed
    description of the Associated Channel mechanism and to the
    DetNet work on OAM <xref target="I-D.ietf-detnet-mpls-oam" format="default" sectionFormat="of" derivedContent="DetNet-MPLS-OAM"/> for more information about DetNet OAM.
        </t>
        <t indent="0" pn="section-4.3-4"> Additional considerations on DetNet-specific OAM are subjects 
   for further study.
        </t>
      </section>
      <section anchor="FAG" numbered="true" toc="include" removeInRFC="false" pn="section-4.4">
        <name slugifiedName="name-flow-aggregation">Flow Aggregation</name>
        <t indent="0" pn="section-4.4-1">
    The ability to aggregate individual flows and their associated
    resource control into a larger aggregate is an important technique
    for improving scaling of control in the data, management, and control
    planes.  The DetNet data plane allows for the aggregation of DetNet flows
    to improved scaling. There are two methods of supporting flow
    aggregation covered in this section.
        </t>
        <t indent="0" pn="section-4.4-2">
    The resource control and management aspects of aggregation
    (including the configuration of queuing, shaping, and policing) are
    the responsibility of the DetNet Controller Plane and are out of scope for this
    document.  It is also the responsibility of the Controller
    Plane to ensure that consistent aggregation methods are used.
        </t>
        <section anchor="aggregation-at-the-lsp" numbered="true" toc="include" removeInRFC="false" pn="section-4.4.1">
          <name slugifiedName="name-aggregation-via-lsp-hierarc">Aggregation via LSP Hierarchy</name>
          <t indent="0" pn="section-4.4.1-1">
     DetNet flows forwarded via MPLS can leverage MPLS-TE's existing
     support for hierarchical LSPs (H-LSPs); see <xref target="RFC4206" format="default" sectionFormat="of" derivedContent="RFC4206"/>.  H-LSPs are
     typically used to aggregate control and resources; they may also be
     used to provide OAM or protection for the aggregated LSPs.  Arbitrary
     levels of aggregation naturally fall out of the definition for
     hierarchy and the MPLS label stack <xref target="RFC3032" format="default" sectionFormat="of" derivedContent="RFC3032"/>.  DetNet nodes that
     support aggregation (LSP hierarchy) map one or more LSPs (labels)
     into and from an H-LSP.  
     Both carried LSPs and H-LSPs may or may not
     use the Traffic Class (TC) field, i.e., L-LSPs (Label-Only-Inferred-PSC LSPs)
     or E-LSPs (EXP-Inferred-PSC LSPs <xref target="RFC3270" format="default" sectionFormat="of" derivedContent="RFC3270"/>, which were renamed to "Explicitly TC-encoded-PSC LSPs" in <xref target="RFC5462" format="default" sectionFormat="of" section="2.2" derivedLink="https://rfc-editor.org/rfc/rfc5462#section-2.2" derivedContent="RFC5462"/>).  Such nodes will need to 
     ensure that individual LSPs and H-LSPs receive the traffic
     treatment required to ensure the required
     DetNet service is preserved.
          </t>
          <t indent="0" pn="section-4.4.1-2">
     Additional details of the traffic control capabilities needed at a
     DetNet-aware node may be covered in the new service definitions
     mentioned above or in separate future documents.  Controller Plane
     mechanisms will also need to ensure that the service required on
     the aggregate flow are provided, which may include the discarding
     or remarking mentioned in the previous sections.
          </t>
        </section>
        <section anchor="aggregating-detnet-flows-as-a-new-detnet-flow" numbered="true" toc="include" removeInRFC="false" pn="section-4.4.2">
          <name slugifiedName="name-aggregating-detnet-flows-as">Aggregating DetNet Flows as a New DetNet Flow</name>
          <t indent="0" pn="section-4.4.2-1">
     An aggregate can be built by layering DetNet flows, including both
     their S-Label and (when present) F-Labels, as shown below:
          </t>
          <figure anchor="fig_detnet_agg_flow" align="left" suppress-title="false" pn="figure-6">
            <name slugifiedName="name-detnet-aggregation-as-a-new">DetNet Aggregation as a New DetNet Flow</name>
            <artwork name="" type="" align="left" alt="" pn="section-4.4.2-2.1">
+---------------------------------+
|                                 |
|           DetNet Flow           |
|         Payload  Packet         |
|                                 |
+---------------------------------+ &lt;--\
|       DetNet Control Word       |    |
+=================================+    |
|            S-Label              |    |
+---------------------------------+    |
|         [ F-Label(s) ]          |    +----DetNet data plane
+---------------------------------+    |
|       DetNet Control Word       |    |
+=================================+    |
|            A-Label              |    |
+---------------------------------+    |
|           F-Label(s)            | &lt;--/
+---------------------------------+
|           Data-Link             |
+---------------------------------+
|           Physical              |
+---------------------------------+
</artwork>
          </figure>
          <t indent="0" pn="section-4.4.2-3">
     Both the aggregation label, which is referred to as an A-Label, and the individual flow's S-Label
     have their MPLS S bit
     set indicating the bottom of stack, and the d-CW allows the PREOF
     to work.  An A-Label is a special case of an S-Label, whose
     properties are known only at the aggregation and deaggregation
     end points.
          </t>
          <t indent="0" pn="section-4.4.2-4">
     It is a property of the A-Label that what follows is a d-CW
     followed by an MPLS label stack.  A
     relay node processing the A-Label would not know the underlying
     payload type, and the A-Label would be processed as a normal
     S-Label. This would only be known to a node that was a peer of the
     node imposing the S-Label. However, there is no real need for it to
     know the payload type during aggregation processing.
          </t>
          <t indent="0" pn="section-4.4.2-5">
      As in the previous section, nodes supporting this type of
      aggregation will need to ensure that individual and aggregated
      flows receive the traffic treatment required to ensure the
      required DetNet service is preserved. Also, it is the Controller
      Plane's responsibility to ensure that the service required on
      the aggregate flow is properly provisioned.
          </t>
        </section>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-4.5">
        <name slugifiedName="name-service-sub-layer-considera">Service Sub-Layer Considerations</name>
        <t indent="0" pn="section-4.5-1">
     The internal procedures for edge and relay nodes related to PREOF are
     implementation specific.  The order of a packet elimination or
     replication is out of scope for this specification.
        </t>
        <t indent="0" pn="section-4.5-2">
     It is important that the DetNet layer is configured such that a
     DetNet node never receives its own replicated packets. If it were
     to receive such packets, the replication function would make the
     loop more destructive of bandwidth than a conventional unicast
     loop.  Ultimately, the TTL in the S-Label will cause the packet to
     die during a transient loop, but given the sensitivity of applications
     to packet latency, the impact on the DetNet application would be
     severe.
     To avoid the problem of a transient forwarding loop, changes to an
     LSP supporting DetNet <bcp14>MUST</bcp14> be loop-free.
        </t>
        <section anchor="sec_t_pe" numbered="true" toc="include" removeInRFC="false" pn="section-4.5.1">
          <name slugifiedName="name-edge-node-processing">Edge Node Processing</name>
          <t indent="0" pn="section-4.5.1-1">
       A DetNet edge node operates in the DetNet forwarding sub-layer
       and service sub-layer.  An edge node is responsible for matching
       incoming packets to the service they require and encapsulating
       them accordingly. An edge node may perform PRF, PEF, and/or POF.
       Details on encapsulation can be found in <xref target="pwSolution" format="default" sectionFormat="of" derivedContent="Section 4.2"/>; details on PRF can be found in <xref target="prf-requirements" format="default" sectionFormat="of" derivedContent="Section 4.2.2.1"/>; details on PEF can be
       found in <xref target="pef-requirements" format="default" sectionFormat="of" derivedContent="Section 4.2.2.2"/>; and
       details on POF can be found in 
       <xref target="pof-requirements" format="default" sectionFormat="of" derivedContent="Section 4.2.2.3"/>.
          </t>
        </section>
        <section anchor="sec_s_pe" numbered="true" toc="include" removeInRFC="false" pn="section-4.5.2">
          <name slugifiedName="name-relay-node-processing">Relay Node Processing</name>
          <t indent="0" pn="section-4.5.2-1">
       A DetNet relay node operates in the DetNet forwarding sub-layer and service sub-layer.  
For
       DetNet using MPLS, forwarding-related processing is performed on the F-Label.  This
       processing is done within an extended forwarder function. Whether an
       incoming DetNet flow receives DetNet-specific processing depends
       on how the forwarding is programmed.  Some relay nodes may be DetNet
       service aware for certain DetNet services, while, for other DetNet services, 
	   these nodes may perform as unmodified LSRs that only understand
       how to switch MPLS-TE LSPs, i.e., as a transit node;
       see <xref target="FAG" format="default" sectionFormat="of" derivedContent="Section 4.4"/>.  Again, this is entirely up to
       how the forwarding has been programmed.
          </t>
          <t indent="0" pn="section-4.5.2-2">
	   During the elimination and replication process, the
       sequence number of an incoming DetNet packet <bcp14>MUST</bcp14> be preserved and
       carried in the corresponding outgoing DetNet
       packet.  For example, a relay node that performs both PEF and PRF
       first performs PEF on incoming packets to create a compound
       flow. It then performs PRF and copies the App-flow data and the
       d-CW into packets for each outgoing DetNet member flow.
          </t>
          <t indent="0" pn="section-4.5.2-3">
       The internal design of a relay node is out of scope for this
       document. However, the reader's attention is drawn to the need to
       make any PREOF state available to the packet processor(s) dealing
       with packets to which PREOF must be applied and to
       maintain that state in such a way that it is available to the
       packet processor operation on the next packet in the DetNet flow
       (which may be a duplicate, a late packet, or the next packet in
       sequence).
          </t>
        </section>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-4.6">
        <name slugifiedName="name-forwarding-sub-layer-consid">Forwarding Sub-Layer Considerations</name>
        <section anchor="CoS" numbered="true" toc="include" removeInRFC="false" pn="section-4.6.1">
          <name slugifiedName="name-class-of-service">Class of Service</name>
          <t indent="0" pn="section-4.6.1-1">
       Class of Service (CoS) and Quality of Service (QoS) are terms that
       are often used interchangeably and confused with each other. 
In the context of DetNet, CoS is used to refer to mechanisms that provide
traffic-forwarding treatment based on non-flow-specific traffic classification,
and QoS is used to refer to mechanisms that provide traffic-forwarding
treatment based on DetNet flow-specific traffic classification.
       Examples of existing network-level CoS mechanisms include
       Differentiated Services (Diffserv), which is enabled by the IP header Differentiated Services
       Code Point (DSCP) field <xref target="RFC2474" format="default" sectionFormat="of" derivedContent="RFC2474"/> and MPLS label
       Traffic Class field <xref target="RFC5462" format="default" sectionFormat="of" derivedContent="RFC5462"/> and at
       Layer 2 by IEEE 802.1p Priority Code Point (PCP).
          </t>
          <t indent="0" pn="section-4.6.1-2">
       CoS for DetNet flows carried in PWs and MPLS is provided using
       the existing MPLS Differentiated Services (Diffserv) architecture
       <xref target="RFC3270" format="default" sectionFormat="of" derivedContent="RFC3270"/>.  Both E-LSP and L-LSP MPLS Diffserv
       modes <bcp14>MAY</bcp14> be used to support DetNet flows.  The Traffic Class
       field (formerly the EXP field) of an MPLS label follows the
       definition of <xref target="RFC5462" format="default" sectionFormat="of" derivedContent="RFC5462"/> and <xref target="RFC3270" format="default" sectionFormat="of" derivedContent="RFC3270"/>.  The Uniform, Pipe, and Short Pipe
       Diffserv tunneling and TTL processing models are described in <xref target="RFC3270" format="default" sectionFormat="of" derivedContent="RFC3270"/> and <xref target="RFC3443" format="default" sectionFormat="of" derivedContent="RFC3443"/> and <bcp14>MAY</bcp14> be used for MPLS LSPs
       supporting DetNet flows. MPLS Explicit Congestion Notification (ECN)
       <bcp14>MAY</bcp14> also be used, as defined in ECN <xref target="RFC5129" format="default" sectionFormat="of" derivedContent="RFC5129"/> and updated by <xref target="RFC5462" format="default" sectionFormat="of" derivedContent="RFC5462"/>. 
          </t>
        </section>
        <section anchor="QoS" numbered="true" toc="include" removeInRFC="false" pn="section-4.6.2">
          <name slugifiedName="name-quality-of-service">Quality of Service</name>
          <t indent="0" pn="section-4.6.2-1">
       In addition to explicit routes and packet replication and
       elimination (described in <xref target="dn-dt-solution" format="default" sectionFormat="of" derivedContent="Section 4"/> above),
       DetNet provides zero congestion loss and bounded latency and
       jitter.  As described in <xref target="RFC8655" format="default" sectionFormat="of" derivedContent="RFC8655"/>, there are different
       mechanisms that may be used separately or in combination to
       deliver a zero congestion loss service.  This includes
       QoS mechanisms at the MPLS layer, which may be combined
       with the mechanisms defined by the underlying network layer, such
       as IEEE 802.1 TSN.
          </t>
          <t indent="0" pn="section-4.6.2-2">
       QoS mechanisms for flow-specific traffic
       treatment typically include a guarantee/agreement for the
       service and allocation of resources to support the service.
       Example QoS mechanisms include discrete resource allocation,
       admission control, flow identification and isolation, and
       sometimes path control, traffic protection, shaping, policing, and
       remarking. Example protocols that support QoS control include the
       Resource ReSerVation Protocol (RSVP)
       <xref target="RFC2205" format="default" sectionFormat="of" derivedContent="RFC2205"/> and RSVP-TE <xref target="RFC3209" format="default" sectionFormat="of" derivedContent="RFC3209"/>
            <xref target="RFC3473" format="default" sectionFormat="of" derivedContent="RFC3473"/>.  The existing MPLS mechanisms defined
       to support CoS <xref target="RFC3270" format="default" sectionFormat="of" derivedContent="RFC3270"/> can also be used to
       reserve resources for specific traffic classes.
          </t>
          <t indent="0" pn="section-4.6.2-3">
       A baseline set of QoS capabilities for DetNet flows carried in PWs
       and MPLS can be provided by MPLS-TE
       <xref target="RFC3209" format="default" sectionFormat="of" derivedContent="RFC3209"/> <xref target="RFC3473" format="default" sectionFormat="of" derivedContent="RFC3473"/>.  TE LSPs can
       also support explicit routes (path pinning).  Current service
       definitions for packet TE LSPs can be found in "Specification of
       the Controlled-Load Network Element Service" <xref target="RFC2211" format="default" sectionFormat="of" derivedContent="RFC2211"/>,
       "Specification of Guaranteed Quality of Service" <xref target="RFC2212" format="default" sectionFormat="of" derivedContent="RFC2212"/>, and "Ethernet Traffic Parameters"
       <xref target="RFC6003" format="default" sectionFormat="of" derivedContent="RFC6003"/>. Additional service
       definitions are expected in 
       future documents to support the full range of DetNet services.
       In all cases, the existing label-based marking mechanisms defined
       for TE LSPs and even E-LSPs are used to support the identification
       of flows requiring DetNet QoS.
          </t>
        </section>
      </section>
    </section>
    <section anchor="mc_summary" numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-management-and-control-info">Management and Control Information Summary</name>
      <t indent="0" pn="section-5-1">
    The specific information needed for the processing of each DetNet
    service depends on the DetNet node type and the functions being
    provided on the node.  This section summarizes this information based on the DetNet
    sub-layer and if the DetNet traffic is being sent or received.  All
    DetNet node types are DetNet forwarding sub-layer aware, while all
    but transit nodes are service sub-layer aware.  This is shown in <xref target="fig_dn_mpls_detnet" format="default" sectionFormat="of" derivedContent="Figure 2"/>.  
      </t>
      <t indent="0" pn="section-5-2">
        Much like other MPLS labels, there are a number of alternatives
        available for DetNet S-Label and F-Label advertisement to an
        upstream peer node. These include distributed signaling
        protocols (such as RSVP-TE), centralized label distribution via a
        controller that manages both the sender and the receiver using the
        Network Configuration Protocol (NETCONF) and YANG, BGP, the Path Computation
	Element Communication Protocol (PCEP), etc., and hybrid combinations of the
        two.  The details of the Controller Plane solution required for
        the label distribution and the management of the label number
        space are out of scope for this document.
        Particular DetNet considerations and requirements 
        are discussed in <xref target="RFC8938" format="default" sectionFormat="of" derivedContent="RFC8938"/>.
    Conformance language is not used in the summary, since it applies to
    future mechanisms, such as those that may be provided in signaling
    and YANG models, e.g., <xref target="I-D.ietf-detnet-yang" format="default" sectionFormat="of" derivedContent="DetNet-YANG"/>.
      </t>
      <section anchor="mc_summary_ssl" numbered="true" toc="include" removeInRFC="false" pn="section-5.1">
        <name slugifiedName="name-service-sub-layer-informati">Service Sub-Layer Information Summary</name>
        <t indent="0" pn="section-5.1-1">
    The following summarizes the information that is needed (on a per-service
    basis) on nodes that are service sub-layer aware and transmit DetNet
    MPLS traffic:
        </t>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.1-2">
          <li pn="section-5.1-2.1">App-flow identification information, e.g., IP information as
	  defined in <xref target="I-D.ietf-detnet-ip-over-mpls" format="default" sectionFormat="of" derivedContent="DetNet-IP-over-MPLS"/>.  Note that this information is not needed on DetNet
	  relay nodes.</li>
          <li pn="section-5.1-2.2">The sequence number length to be used for the service.  Valid
	  values include 0, 16, and 28 bits. 0 bits cannot be used when PEF or
	  POF is configured for the service.</li>
          <li pn="section-5.1-2.3">If PRF is to be provided for the service.</li>
          <li pn="section-5.1-2.4">The outgoing S-Label for each of the service's outgoing DetNet
	  (member) flows.</li>
          <li pn="section-5.1-2.5">The forwarding sub-layer information associated with the output
	  of the service sub-layer.  Note that when PRF is
	  provisioned, this information is per DetNet member flow. Logically,
	  the forwarding sub-layer information is a pointer to further details
	  of transmission of DetNet flows at the forwarding sub-layer.</li>
        </ul>
        <t indent="0" pn="section-5.1-3">
    The following summarizes the information that is needed (on a per-service basis) on nodes that are service
    sub-layer aware and receive DetNet MPLS traffic:
        </t>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.1-4">
          <li pn="section-5.1-4.1">The forwarding sub-layer information associated with the input
	  of the service sub-layer.  Note that when PEF is
	  provisioned, this information is per DetNet member flow. Logically,
	  the forwarding sub-layer information is a pointer to further details
	  of the reception of DetNet flows at the forwarding sub-layer or
	  A-Label.</li>
          <li pn="section-5.1-4.2">The incoming S-Label for the service.</li>
          <li pn="section-5.1-4.3">If PEF or POF is to be provided for the service.</li>
          <li pn="section-5.1-4.4">The sequence number length to be used for the service.  Valid
	  values included 0, 16, and 28 bits. 0 bits cannot be used when PEF or
	  POF are configured for the service.</li>
          <li pn="section-5.1-4.5">App-flow identification information, e.g., IP information as
	  defined in <xref target="I-D.ietf-detnet-ip-over-mpls" format="default" sectionFormat="of" derivedContent="DetNet-IP-over-MPLS"/>.  Note that this information is not needed on DetNet
	  relay nodes.</li>
        </ul>
        <section anchor="mc_summary_ssl_agg" numbered="true" toc="include" removeInRFC="false" pn="section-5.1.1">
          <name slugifiedName="name-service-aggregation-informa">Service Aggregation Information Summary</name>
          <t indent="0" pn="section-5.1.1-1">
      Nodes performing aggregation using A-Labels, per <xref target="aggregating-detnet-flows-as-a-new-detnet-flow" format="default" sectionFormat="of" derivedContent="Section 4.4.2"/>, require
      the additional information summarized in this section.
          </t>
          <t indent="0" pn="section-5.1.1-2">
      The following summarizes the additional information that is needed on
      a node that sends aggregated flows using A-Labels:
          </t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.1.1-3">
            <li pn="section-5.1.1-3.1">The S-Labels or F-Labels that are to be carried over each
	    aggregated service.</li>
            <li pn="section-5.1.1-3.2">The A-Label associated with each aggregated service.</li>
            <li pn="section-5.1.1-3.3">The other S-Label information summarized above.</li>
          </ul>
          <t indent="0" pn="section-5.1.1-4">


      On the receiving node, the A-Label provides the forwarding context
      of an incoming interface or an F-Label and is used in subsequent
      service or forwarding sub-layer receive processing, as
      appropriate.  The related additional configuration that may be
      provided is discussed elsewhere in this section.
          </t>
        </section>
      </section>
      <section anchor="mc_summary_fsl" numbered="true" toc="include" removeInRFC="false" pn="section-5.2">
        <name slugifiedName="name-forwarding-sub-layer-inform">Forwarding Sub-Layer Information Summary</name>
        <t indent="0" pn="section-5.2-1">
      The following summarizes the information that is needed (on a per-forwarding-sub-layer-flow basis) on nodes that are
      forwarding sub-layer aware and send DetNet MPLS traffic:
        </t>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.2-2">
          <li pn="section-5.2-2.1">
          The outgoing F-Label stack to be pushed. The stack may include
          H-LSP labels.</li>
          <li pn="section-5.2-2.2">
          The traffic parameters associated with a specific label in
          the stack.  Note that there may be multiple sets of traffic
          parameters associated with specific labels in the stack, e.g.,
          when H-LSPs are used.</li>
          <li pn="section-5.2-2.3">
          Outgoing interface and, for unicast traffic, the next-hop
          information.</li>
          <li pn="section-5.2-2.4">
          Sub-network-specific parameters on a technology-specific
          basis. For example, see <xref target="I-D.ietf-detnet-mpls-over-tsn" format="default" sectionFormat="of" derivedContent="DetNet-MPLS-over-TSN"/>.</li>
        </ul>
        <t indent="0" pn="section-5.2-3">
      The following summarizes the information that is needed (on a
      per-forwarding-sub-layer-flow basis) on nodes that are forwarding
      sub-layer aware and receive DetNet MPLS traffic:
        </t>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.2-4">
          <li pn="section-5.2-4.1">
          The incoming interface.  For some implementations and
          deployment scenarios, this information may not be needed.</li>
          <li pn="section-5.2-4.2">
          The incoming F-Label stack to be popped. The stack may include
          H-LSP labels.</li>
          <li pn="section-5.2-4.3">
          How the incoming forwarding sub-layer flow is to be handled,
          i.e., forwarded as a transit node or provided to the service
          sub-layer.</li>
        </ul>
        <t indent="0" pn="section-5.2-5">
    It is the responsibility of the DetNet Controller Plane to
    properly provision both flow identification information and
    the flow-specific resources needed to provide the traffic
    treatment needed to meet each flow's service requirements.
    This applies for aggregated and individual flows.
        </t>
      </section>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-6">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-6-1">
   Detailed security considerations for DetNet are cataloged in
   <xref target="I-D.ietf-detnet-security" format="default" sectionFormat="of" derivedContent="DetNet-Security"/>, and more general security considerations
   are described in <xref target="RFC8655" format="default" sectionFormat="of" derivedContent="RFC8655"/>. This section
   exclusively considers security considerations that are specific to the DetNet
   MPLS data plane. The considerations raised related to MPLS networks
   in general in <xref target="RFC5920" format="default" sectionFormat="of" derivedContent="RFC5920"/> are equally applicable to
   the DetNet MPLS data plane.
      </t>
      <t indent="0" pn="section-6-2">
   Security aspects that are unique to DetNet are those whose aim is to
   protect the support of specific QoS aspects of DetNet, which are
   primarily to deliver data flows with extremely low packet loss rates
   and bounded end-to-end delivery latency.

       Achieving such loss rates and bounded latency may not be possible
       in the face of a highly capable adversary, such as the one
       envisioned by the Internet Threat Model of BCP 72 <xref target="RFC3552" format="default" sectionFormat="of" derivedContent="RFC3552"/> that can
       arbitrarily drop or delay any or all traffic.  In order to
       present meaningful security considerations, we consider a
       somewhat weaker attacker who does not control the physical links
       of the DetNet domain but may have the ability to control a
       network node within the boundary of the DetNet domain.
      </t>
      <t indent="0" pn="section-6-3">
    An additional consideration for the DetNet data plane is to maintain
    integrity of data and delivery of the associated DetNet service traversing
    the DetNet network.
    Application flows can be protected through whatever means are
    provided by the underlying technology. For example, encryption may be
    used, such as that provided by IPsec <xref target="RFC4301" format="default" sectionFormat="of" derivedContent="RFC4301"/> for IP
    flows and/or by an underlying sub-network using MACsec
    <xref target="IEEE802.1AE-2018" format="default" sectionFormat="of" derivedContent="IEEE802.1AE-2018"/> for IP over Ethernet
    (Layer 2) flows.
	MPLS doesn't provide any native security services to account for 
	confidentiality and integrity.
      </t>
      <t indent="0" pn="section-6-4">
    From a data plane perspective, this document does not add or modify any
    application header information.
      </t>
      <t indent="0" pn="section-6-5">
    At the management and control level, DetNet flows are identified on a
    per-flow basis, which may provide Controller Plane
    attackers with additional information about the data flows (when
    compared to Controller Planes that do not include per-flow identification).
    This is an inherent property of DetNet that has security
    implications that should be considered when determining if DetNet is
    a suitable technology for any given use case.
      </t>
      <t indent="0" pn="section-6-6">
    To provide uninterrupted availability of the DetNet
    service, provisions can be made against DoS attacks and delay
    attacks. To protect against DoS attacks, excess traffic due to
    malicious or malfunctioning devices is prevented or mitigated
    through the use of existing mechanisms, for example, by policing and 
	shaping incoming traffic. To prevent DetNet packets from
	having their delay manipulated by an external entity, precautions need 
	to be taken to ensure that all devices on an LSP are those intended to 
	be there by the network operator and that they are well behaved. In 
	addition to physical security, technical methods,  such as authentication 
	and authorization of network equipment and the instrumentation and 
	monitoring of the LSP packet delay, may be used. If a delay attack is 
	suspected, traffic may be moved to an alternate path, for example, 
	through changing the LSP or management of the PREOF configuration.
      </t>
    </section>
    <section anchor="iana" numbered="true" toc="include" removeInRFC="false" pn="section-7">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-7-1">This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <displayreference target="I-D.ietf-detnet-ip-over-mpls" to="DetNet-IP-over-MPLS"/>
    <displayreference target="I-D.ietf-detnet-mpls-over-tsn" to="DetNet-MPLS-over-TSN"/>
    <displayreference target="I-D.ietf-detnet-security" to="DetNet-Security"/>
    <displayreference target="I-D.ietf-detnet-yang" to="DetNet-YANG"/>
    <displayreference target="I-D.ietf-detnet-mpls-oam" to="DetNet-MPLS-OAM"/>
    <references pn="section-8">
      <name slugifiedName="name-references">References</name>
      <references pn="section-8.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 initials="S." surname="Bradner" fullname="S. Bradner">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1997" month="March"/>
            <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="RFC2211" target="https://www.rfc-editor.org/info/rfc2211" quoteTitle="true" derivedAnchor="RFC2211">
          <front>
            <title>Specification of the Controlled-Load Network Element Service</title>
            <author initials="J." surname="Wroclawski" fullname="J. Wroclawski">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1997" month="September"/>
            <abstract>
              <t indent="0">This memo specifies the network element behavior required to deliver Controlled-Load service in the Internet.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2211"/>
          <seriesInfo name="DOI" value="10.17487/RFC2211"/>
        </reference>
        <reference anchor="RFC2212" target="https://www.rfc-editor.org/info/rfc2212" quoteTitle="true" derivedAnchor="RFC2212">
          <front>
            <title>Specification of Guaranteed Quality of Service</title>
            <author initials="S." surname="Shenker" fullname="S. Shenker">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Partridge" fullname="C. Partridge">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Guerin" fullname="R. Guerin">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1997" month="September"/>
            <abstract>
              <t indent="0">This memo describes the network element behavior required to deliver a guaranteed service (guaranteed delay and bandwidth) in the Internet. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2212"/>
          <seriesInfo name="DOI" value="10.17487/RFC2212"/>
        </reference>
        <reference anchor="RFC3031" target="https://www.rfc-editor.org/info/rfc3031" quoteTitle="true" derivedAnchor="RFC3031">
          <front>
            <title>Multiprotocol Label Switching Architecture</title>
            <author initials="E." surname="Rosen" fullname="E. Rosen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Viswanathan" fullname="A. Viswanathan">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Callon" fullname="R. Callon">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2001" month="January"/>
            <abstract>
              <t indent="0">This document specifies the architecture for Multiprotocol Label Switching (MPLS).  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3031"/>
          <seriesInfo name="DOI" value="10.17487/RFC3031"/>
        </reference>
        <reference anchor="RFC3032" target="https://www.rfc-editor.org/info/rfc3032" quoteTitle="true" derivedAnchor="RFC3032">
          <front>
            <title>MPLS Label Stack Encoding</title>
            <author initials="E." surname="Rosen" fullname="E. Rosen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Tappan" fullname="D. Tappan">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Fedorkow" fullname="G. Fedorkow">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="Y." surname="Rekhter" fullname="Y. Rekhter">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Farinacci" fullname="D. Farinacci">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Li" fullname="T. Li">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Conta" fullname="A. Conta">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2001" month="January"/>
            <abstract>
              <t indent="0">This document specifies the encoding to be used by an LSR in order to transmit labeled packets on Point-to-Point Protocol (PPP) data links, on LAN data links, and possibly on other data links as well.  This document also specifies rules and procedures for processing the various fields of the label stack encoding.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3032"/>
          <seriesInfo name="DOI" value="10.17487/RFC3032"/>
        </reference>
        <reference anchor="RFC3209" target="https://www.rfc-editor.org/info/rfc3209" quoteTitle="true" derivedAnchor="RFC3209">
          <front>
            <title>RSVP-TE: Extensions to RSVP for LSP Tunnels</title>
            <author initials="D." surname="Awduche" fullname="D. Awduche">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Berger" fullname="L. Berger">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Gan" fullname="D. Gan">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Li" fullname="T. Li">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="V." surname="Srinivasan" fullname="V. Srinivasan">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Swallow" fullname="G. Swallow">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2001" month="December"/>
            <abstract>
              <t indent="0">This document describes the use of RSVP (Resource Reservation Protocol), including all the necessary extensions, to establish label-switched paths (LSPs) in MPLS (Multi-Protocol Label Switching).  Since the flow along an LSP is completely identified by the label applied at the ingress node of the path, these paths may be treated as tunnels.  A key application of LSP tunnels is traffic engineering with MPLS as specified in RFC 2702.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3209"/>
          <seriesInfo name="DOI" value="10.17487/RFC3209"/>
        </reference>
        <reference anchor="RFC3270" target="https://www.rfc-editor.org/info/rfc3270" quoteTitle="true" derivedAnchor="RFC3270">
          <front>
            <title>Multi-Protocol Label Switching (MPLS) Support of Differentiated Services</title>
            <author initials="F." surname="Le Faucheur" fullname="F. Le Faucheur">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Wu" fullname="L. Wu">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Davie" fullname="B. Davie">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Davari" fullname="S. Davari">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Vaananen" fullname="P. Vaananen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Krishnan" fullname="R. Krishnan">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Cheval" fullname="P. Cheval">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Heinanen" fullname="J. Heinanen">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2002" month="May"/>
            <abstract>
              <t indent="0">This document defines a flexible solution for support of Differentiated Services (Diff-Serv) over Multi-Protocol Label Switching (MPLS) networks.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3270"/>
          <seriesInfo name="DOI" value="10.17487/RFC3270"/>
        </reference>
        <reference anchor="RFC3443" target="https://www.rfc-editor.org/info/rfc3443" quoteTitle="true" derivedAnchor="RFC3443">
          <front>
            <title>Time To Live (TTL) Processing in Multi-Protocol Label Switching (MPLS) Networks</title>
            <author initials="P." surname="Agarwal" fullname="P. Agarwal">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Akyol" fullname="B. Akyol">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="January"/>
            <abstract>
              <t indent="0">This document describes Time To Live (TTL) processing in hierarchical Multi-Protocol Label Switching (MPLS) networks and is motivated by the need to formalize a TTL-transparent mode of operation for an MPLS label-switched path.  It updates RFC 3032, "MPLS Label Stack Encoding". TTL processing in both Pipe and Uniform Model hierarchical tunnels are specified with examples for both "push" and "pop" cases.  The document also complements RFC 3270, "MPLS Support of Differentiated Services" and ties together the terminology introduced in that document with TTL processing in hierarchical MPLS networks.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3443"/>
          <seriesInfo name="DOI" value="10.17487/RFC3443"/>
        </reference>
        <reference anchor="RFC3473" target="https://www.rfc-editor.org/info/rfc3473" quoteTitle="true" derivedAnchor="RFC3473">
          <front>
            <title>Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions</title>
            <author initials="L." surname="Berger" fullname="L. Berger" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="January"/>
            <abstract>
              <t indent="0">This document describes extensions to Multi-Protocol Label Switching (MPLS) Resource ReserVation Protocol - Traffic Engineering (RSVP-TE) signaling required to support Generalized MPLS.  Generalized MPLS extends the MPLS control plane to encompass time-division (e.g., Synchronous Optical Network and Synchronous Digital Hierarchy, SONET/SDH), wavelength (optical lambdas) and spatial switching (e.g., incoming port or fiber to outgoing port or fiber).  This document presents a RSVP-TE specific description of the extensions.  A generic functional description can be found in separate documents.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3473"/>
          <seriesInfo name="DOI" value="10.17487/RFC3473"/>
        </reference>
        <reference anchor="RFC4206" target="https://www.rfc-editor.org/info/rfc4206" quoteTitle="true" derivedAnchor="RFC4206">
          <front>
            <title>Label Switched Paths (LSP) Hierarchy with Generalized Multi-Protocol Label Switching (GMPLS) Traffic Engineering (TE)</title>
            <author initials="K." surname="Kompella" fullname="K. Kompella">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="Y." surname="Rekhter" fullname="Y. Rekhter">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="October"/>
            <abstract>
              <t indent="0">To improve scalability of Generalized Multi-Protocol Label Switching (GMPLS) it may be useful to aggregate Label Switched Paths (LSPs) by creating a hierarchy of such LSPs.  A way to create such a hierarchy is by (a) a Label Switching Router (LSR) creating a Traffic Engineering Label Switched Path (TE LSP), (b) the LSR forming a forwarding adjacency (FA) out of that LSP (by advertising this LSP as a Traffic Engineering (TE) link into the same instance of ISIS/OSPF as the one that was used to create the LSP), (c) allowing other LSRs to use FAs for their path computation, and (d) nesting of LSPs originated by other LSRs into that LSP (by using the label stack construct).</t>
              <t indent="0">This document describes the mechanisms to accomplish this.  [PROPOSED STANDARD]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4206"/>
          <seriesInfo name="DOI" value="10.17487/RFC4206"/>
        </reference>
        <reference anchor="RFC4385" target="https://www.rfc-editor.org/info/rfc4385" quoteTitle="true" derivedAnchor="RFC4385">
          <front>
            <title>Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for Use over an MPLS PSN</title>
            <author initials="S." surname="Bryant" fullname="S. Bryant">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Swallow" fullname="G. Swallow">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Martini" fullname="L. Martini">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="McPherson" fullname="D. McPherson">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2006" month="February"/>
            <abstract>
              <t indent="0">This document describes the preferred design of a Pseudowire Emulation Edge-to-Edge (PWE3) Control Word to be used over an MPLS packet switched network, and the Pseudowire Associated Channel Header.  The design of these fields is chosen so that an MPLS Label Switching Router performing MPLS payload inspection will not confuse a PWE3 payload with an IP payload.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4385"/>
          <seriesInfo name="DOI" value="10.17487/RFC4385"/>
        </reference>
        <reference anchor="RFC5085" target="https://www.rfc-editor.org/info/rfc5085" quoteTitle="true" derivedAnchor="RFC5085">
          <front>
            <title>Pseudowire Virtual Circuit Connectivity Verification (VCCV): A Control Channel for Pseudowires</title>
            <author initials="T." surname="Nadeau" fullname="T. Nadeau" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Pignataro" fullname="C. Pignataro" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2007" month="December"/>
            <abstract>
              <t indent="0">This document describes Virtual Circuit Connectivity Verification (VCCV), which provides a control channel that is associated with a pseudowire (PW), as well as the corresponding operations and management functions (such as connectivity verification) to be used over that control channel.  VCCV applies to all supported access circuit and transport types currently defined for PWs.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5085"/>
          <seriesInfo name="DOI" value="10.17487/RFC5085"/>
        </reference>
        <reference anchor="RFC5129" target="https://www.rfc-editor.org/info/rfc5129" quoteTitle="true" derivedAnchor="RFC5129">
          <front>
            <title>Explicit Congestion Marking in MPLS</title>
            <author initials="B." surname="Davie" fullname="B. Davie">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Briscoe" fullname="B. Briscoe">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Tay" fullname="J. Tay">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="January"/>
            <abstract>
              <t indent="0">RFC 3270 defines how to support the Diffserv architecture in MPLS networks, including how to encode Diffserv Code Points (DSCPs) in an MPLS header.  DSCPs may be encoded in the EXP field, while other uses of that field are not precluded.  RFC 3270 makes no statement about how Explicit Congestion Notification (ECN) marking might be encoded in the MPLS header.  This document defines how an operator might define some of the EXP codepoints for explicit congestion notification, without precluding other uses.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5129"/>
          <seriesInfo name="DOI" value="10.17487/RFC5129"/>
        </reference>
        <reference anchor="RFC5462" target="https://www.rfc-editor.org/info/rfc5462" quoteTitle="true" derivedAnchor="RFC5462">
          <front>
            <title>Multiprotocol Label Switching (MPLS) Label Stack Entry: "EXP" Field Renamed to "Traffic Class" Field</title>
            <author initials="L." surname="Andersson" fullname="L. Andersson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Asati" fullname="R. Asati">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2009" month="February"/>
            <abstract>
              <t indent="0">The early Multiprotocol Label Switching (MPLS) documents defined the form of the MPLS label stack entry.  This includes a three-bit field called the "EXP field".  The exact use of this field was not defined by these documents, except to state that it was to be "reserved for experimental use".</t>
              <t indent="0">Although the intended use of the EXP field was as a "Class of Service" (CoS) field, it was not named a CoS field by these early documents because the use of such a CoS field was not considered to be sufficiently defined.  Today a number of standards documents define its usage as a CoS field.</t>
              <t indent="0">To avoid misunderstanding about how this field may be used, it has become increasingly necessary to rename this field.  This document changes the name of the field to the "Traffic Class field" ("TC field").  In doing so, it also updates documents that define the current use of the EXP field.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5462"/>
          <seriesInfo name="DOI" value="10.17487/RFC5462"/>
        </reference>
        <reference anchor="RFC5586" target="https://www.rfc-editor.org/info/rfc5586" quoteTitle="true" derivedAnchor="RFC5586">
          <front>
            <title>MPLS Generic Associated Channel</title>
            <author initials="M." surname="Bocci" fullname="M. Bocci" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Vigoureux" fullname="M. Vigoureux" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Bryant" fullname="S. Bryant" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2009" month="June"/>
            <abstract>
              <t indent="0">This document generalizes the applicability of the pseudowire (PW) Associated Channel Header (ACH), enabling the realization of a control channel associated to MPLS Label Switched Paths (LSPs) and MPLS Sections in addition to MPLS pseudowires.  In order to identify the presence of this Associated Channel Header in the label stack, this document also assigns one of the reserved MPLS label values to the Generic Associated Channel Label (GAL), to be used as a label based exception mechanism.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5586"/>
          <seriesInfo name="DOI" value="10.17487/RFC5586"/>
        </reference>
        <reference anchor="RFC6790" target="https://www.rfc-editor.org/info/rfc6790" quoteTitle="true" derivedAnchor="RFC6790">
          <front>
            <title>The Use of Entropy Labels in MPLS Forwarding</title>
            <author initials="K." surname="Kompella" fullname="K. Kompella">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Drake" fullname="J. Drake">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Amante" fullname="S. Amante">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="W." surname="Henderickx" fullname="W. Henderickx">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Yong" fullname="L. Yong">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="November"/>
            <abstract>
              <t indent="0">Load balancing is a powerful tool for engineering traffic across a network.  This memo suggests ways of improving load balancing across MPLS networks using the concept of "entropy labels".  It defines the concept, describes why entropy labels are useful, enumerates properties of entropy labels that allow maximal benefit, and shows how they can be signaled and used for various applications.  This document updates RFCs 3031, 3107, 3209, and 5036.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6790"/>
          <seriesInfo name="DOI" value="10.17487/RFC6790"/>
        </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 initials="B." surname="Leiba" fullname="B. Leiba">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="May"/>
            <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="RFC8655" target="https://www.rfc-editor.org/info/rfc8655" quoteTitle="true" derivedAnchor="RFC8655">
          <front>
            <title>Deterministic Networking Architecture</title>
            <author initials="N." surname="Finn" fullname="N. Finn">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Thubert" fullname="P. Thubert">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Varga" fullname="B. Varga">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Farkas" fullname="J. Farkas">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2019" month="October"/>
            <abstract>
              <t indent="0">This document provides the overall architecture for Deterministic Networking (DetNet), which provides a capability to carry specified unicast or multicast data flows for real-time applications with extremely low data loss rates and bounded latency within a network domain.  Techniques used include 1) reserving data-plane resources for individual (or aggregated) DetNet flows in some or all of the intermediate nodes along the path of the flow, 2) providing explicit routes for DetNet flows that do not immediately change with the network topology, and 3) distributing data from DetNet flow packets over time and/or space to ensure delivery of each packet's data in spite of the loss of a path.  DetNet operates at the IP layer and delivers service over lower-layer technologies such as MPLS and Time- Sensitive Networking (TSN) as defined by IEEE 802.1.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8655"/>
          <seriesInfo name="DOI" value="10.17487/RFC8655"/>
        </reference>
        <reference anchor="RFC8938" target="https://www.rfc-editor.org/info/rfc8938" quoteTitle="true" derivedAnchor="RFC8938">
          <front>
            <title>Deterministic Networking (DetNet) Data Plane Framework</title>
            <author initials="B." surname="Varga" fullname="B. Varga" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Farkas" fullname="J. Farkas">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Berger" fullname="L. Berger">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Malis" fullname="A. Malis">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Bryant" fullname="S. Bryant">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2020" month="November"/>
            <abstract>
              <t indent="0">This document provides an overall framework for the Deterministic Networking (DetNet) data plane.  It covers concepts and considerations that are generally common to any DetNet data plane specification. It describes related Controller Plane considerations as well.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8938"/>
          <seriesInfo name="DOI" value="10.17487/RFC8938"/>
        </reference>
      </references>
      <references pn="section-8.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="I-D.ietf-detnet-ip-over-mpls" quoteTitle="true" target="https://tools.ietf.org/html/draft-ietf-detnet-ip-over-mpls-09" derivedAnchor="DetNet-IP-over-MPLS">
          <front>
            <title>DetNet Data Plane: IP over MPLS</title>
            <author initials="B" surname="Varga" fullname="Balazs Varga" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L" surname="Berger" fullname="Lou Berger">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D" surname="Fedyk" fullname="Don Fedyk">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S" surname="Bryant" fullname="Stewart Bryant">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J" surname="Korhonen" fullname="Jouni Korhonen">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="October" day="11" year="2020"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-detnet-ip-over-mpls-09"/>
          <format type="TXT" target="http://www.ietf.org/internet-drafts/draft-ietf-detnet-ip-over-mpls-09.txt"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="I-D.ietf-detnet-mpls-oam" quoteTitle="true" target="https://tools.ietf.org/html/draft-ietf-detnet-mpls-oam-02" derivedAnchor="DetNet-MPLS-OAM">
          <front>
            <title>Operations, Administration and Maintenance (OAM) for Deterministic Networks (DetNet) with MPLS Data Plane</title>
            <author fullname="Greg Mirsky">
              <organization showOnFrontPage="true">ZTE Corp.</organization>
            </author>
            <author fullname="Mach(Guoyi) Chen">
              <organization showOnFrontPage="true">Huawei</organization>
            </author>
            <date month="January" day="15" year="2021"/>
            <abstract>
              <t indent="0">   This document defines format and use principals of the Deterministic
   Network (DetNet) service Associated Channel (ACH) over a DetNet
   network with the MPLS data plane.  The DetNet service ACH can be used
   to carry test packets of active Operations, Administration, and
   Maintenance protocols that are used to detect DetNet failures and
   measure performance metrics.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-detnet-mpls-oam-02"/>
          <format type="TXT" target="https://www.ietf.org/internet-drafts/draft-ietf-detnet-mpls-oam-02.txt"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="I-D.ietf-detnet-mpls-over-tsn" quoteTitle="true" target="https://tools.ietf.org/html/draft-ietf-detnet-mpls-over-tsn-05" derivedAnchor="DetNet-MPLS-over-TSN">
          <front>
            <title>DetNet Data Plane: MPLS over IEEE 802.1 Time Sensitive Networking (TSN)</title>
            <author initials="B" surname="Varga" fullname="Balazs Varga" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J" surname="Farkas" fullname="Janos Farkas">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A" surname="Malis" fullname="Andrew Malis">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S" surname="Bryant" fullname="Stewart Bryant">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="December" day="13" year="2020"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-detnet-mpls-over-tsn-05"/>
          <format type="TXT" target="http://www.ietf.org/internet-drafts/draft-ietf-detnet-mpls-over-tsn-05.txt"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="I-D.ietf-detnet-security" quoteTitle="true" target="https://tools.ietf.org/html/draft-ietf-detnet-security-13" derivedAnchor="DetNet-Security">
          <front>
            <title>Deterministic Networking (DetNet) Security Considerations</title>
            <author initials="E" surname="Grossman" fullname="Ethan Grossman" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T" surname="Mizrahi" fullname="Tal Mizrahi">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A" surname="Hacker" fullname="Andrew Hacker">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="December" day="11" year="2020"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-detnet-security-13"/>
          <format type="TXT" target="http://www.ietf.org/internet-drafts/draft-ietf-detnet-security-13.txt"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="I-D.ietf-detnet-yang" quoteTitle="true" target="https://tools.ietf.org/html/draft-ietf-detnet-yang-09" derivedAnchor="DetNet-YANG">
          <front>
            <title>Deterministic Networking (DetNet) Configuration YANG Model</title>
            <author fullname="Xuesong Geng">
              <organization showOnFrontPage="true">Huawei Technologies</organization>
            </author>
            <author fullname="Mach(Guoyi) Chen">
              <organization showOnFrontPage="true">Huawei Technologies</organization>
            </author>
            <author fullname="Yeoncheol Ryoo">
              <organization showOnFrontPage="true">ETRI</organization>
            </author>
            <author fullname="Don Fedyk">
              <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
            </author>
            <author fullname="Reshad Rahman">
              <organization showOnFrontPage="true">Individual</organization>
            </author>
            <author fullname="Zhenqiang Li">
              <organization showOnFrontPage="true">China Mobile</organization>
            </author>
            <date month="November" day="16" year="2020"/>
            <abstract>
              <t indent="0">   This document contains the specification for Deterministic Networking
   flow configuration YANG Model.  The model allows for provisioning of
   end-to-end DetNet service along the path without dependency on any
   signaling protocol.

   The YANG module defined in this document conforms to the Network
   Management Datastore Architecture (NMDA).


              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-detnet-yang-09"/>
          <format type="TXT" target="https://www.ietf.org/internet-drafts/draft-ietf-detnet-yang-09.txt"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="IEEE802.1AE-2018" target="https://ieeexplore.ieee.org/document/8585421" quoteTitle="true" derivedAnchor="IEEE802.1AE-2018">
          <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="IEEE" value="802.1AE-2018"/>
          <seriesInfo name="DOI" value="10.1109/IEEESTD.2018.8585421"/>
        </reference>
        <reference anchor="IEEE802.1CB-2017" target="https://ieeexplore.ieee.org/document/8091139" quoteTitle="true" derivedAnchor="IEEE802.1CB-2017">
          <front>
            <title>IEEE Standard for Local and metropolitan area networks-- Frame Replication and Elimination for Reliability</title>
            <author>
              <organization showOnFrontPage="true">IEEE</organization>
            </author>
            <date month="October" year="2017"/>
          </front>
          <seriesInfo name="IEEE" value="802.1CB-2017"/>
          <seriesInfo name="DOI" value="10.1109/IEEESTD.2017.8091139"/>
        </reference>
        <reference anchor="RFC2205" target="https://www.rfc-editor.org/info/rfc2205" quoteTitle="true" derivedAnchor="RFC2205">
          <front>
            <title>Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification</title>
            <author initials="R." surname="Braden" fullname="R. Braden" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Zhang" fullname="L. Zhang">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Berson" fullname="S. Berson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Herzog" fullname="S. Herzog">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Jamin" fullname="S. Jamin">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1997" month="September"/>
            <abstract>
              <t indent="0">This memo describes version 1 of RSVP, a resource reservation setup protocol designed for an integrated services Internet.  RSVP provides receiver-initiated setup of resource reservations for multicast or unicast data flows, with good scaling and robustness properties. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2205"/>
          <seriesInfo name="DOI" value="10.17487/RFC2205"/>
        </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 initials="K." surname="Nichols" fullname="K. Nichols">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Blake" fullname="S. Blake">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="F." surname="Baker" fullname="F. Baker">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Black" fullname="D. Black">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1998" month="December"/>
            <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="RFC3272" target="https://www.rfc-editor.org/info/rfc3272" quoteTitle="true" derivedAnchor="RFC3272">
          <front>
            <title>Overview and Principles of Internet Traffic Engineering</title>
            <author initials="D." surname="Awduche" fullname="D. Awduche">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Chiu" fullname="A. Chiu">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Elwalid" fullname="A. Elwalid">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="I." surname="Widjaja" fullname="I. Widjaja">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="X." surname="Xiao" fullname="X. Xiao">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2002" month="May"/>
            <abstract>
              <t indent="0">This memo describes the principles of Traffic Engineering (TE) in the Internet.  The document is intended to promote better understanding of the issues surrounding traffic engineering in IP networks, and to provide a common basis for the development of traffic engineering capabilities for the Internet.  The principles, architectures, and methodologies for performance evaluation and performance optimization of operational IP networks are discussed throughout this document.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3272"/>
          <seriesInfo name="DOI" value="10.17487/RFC3272"/>
        </reference>
        <reference anchor="RFC3552" target="https://www.rfc-editor.org/info/rfc3552" quoteTitle="true" derivedAnchor="RFC3552">
          <front>
            <title>Guidelines for Writing RFC Text on Security Considerations</title>
            <author initials="E." surname="Rescorla" fullname="E. Rescorla">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Korver" fullname="B. Korver">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="July"/>
            <abstract>
              <t indent="0">All RFCs are required to have a Security Considerations section. Historically, such sections have been relatively weak.  This document provides guidelines to RFC authors on how to write a good Security Considerations section.   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="72"/>
          <seriesInfo name="RFC" value="3552"/>
          <seriesInfo name="DOI" value="10.17487/RFC3552"/>
        </reference>
        <reference anchor="RFC3985" target="https://www.rfc-editor.org/info/rfc3985" quoteTitle="true" derivedAnchor="RFC3985">
          <front>
            <title>Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture</title>
            <author initials="S." surname="Bryant" fullname="S. Bryant" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Pate" fullname="P. Pate" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="March"/>
            <abstract>
              <t indent="0">This document describes an architecture for Pseudo Wire Emulation Edge-to-Edge (PWE3).  It discusses the emulation of services such as Frame Relay, ATM, Ethernet, TDM, and SONET/SDH over packet switched networks (PSNs) using IP or MPLS.  It presents the architectural framework for pseudo wires (PWs), defines terminology, and specifies the various protocol elements and their functions.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3985"/>
          <seriesInfo name="DOI" value="10.17487/RFC3985"/>
        </reference>
        <reference anchor="RFC4301" target="https://www.rfc-editor.org/info/rfc4301" quoteTitle="true" derivedAnchor="RFC4301">
          <front>
            <title>Security Architecture for the Internet Protocol</title>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K." surname="Seo" fullname="K. Seo">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="December"/>
            <abstract>
              <t indent="0">This document describes an updated version of the "Security Architecture for IP", which is designed to provide security services for traffic at the IP layer.  This document obsoletes RFC 2401 (November 1998).  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4301"/>
          <seriesInfo name="DOI" value="10.17487/RFC4301"/>
        </reference>
        <reference anchor="RFC4448" target="https://www.rfc-editor.org/info/rfc4448" quoteTitle="true" derivedAnchor="RFC4448">
          <front>
            <title>Encapsulation Methods for Transport of Ethernet over MPLS Networks</title>
            <author initials="L." surname="Martini" fullname="L. Martini" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="E." surname="Rosen" fullname="E. Rosen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="N." surname="El-Aawar" fullname="N. El-Aawar">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Heron" fullname="G. Heron">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2006" month="April"/>
            <abstract>
              <t indent="0">An Ethernet pseudowire (PW) is used to carry Ethernet/802.3 Protocol Data Units (PDUs) over an MPLS network.  This enables service providers to offer "emulated" Ethernet services over existing MPLS networks.  This document specifies the encapsulation of Ethernet/802.3 PDUs within a pseudowire.  It also specifies the procedures for using a PW to provide a "point-to-point Ethernet" service.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4448"/>
          <seriesInfo name="DOI" value="10.17487/RFC4448"/>
        </reference>
        <reference anchor="RFC4875" target="https://www.rfc-editor.org/info/rfc4875" quoteTitle="true" derivedAnchor="RFC4875">
          <front>
            <title>Extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE Label Switched Paths (LSPs)</title>
            <author initials="R." surname="Aggarwal" fullname="R. Aggarwal" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Papadimitriou" fullname="D. Papadimitriou" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Yasukawa" fullname="S. Yasukawa" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2007" month="May"/>
            <abstract>
              <t indent="0">This document describes extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) for the set up of Traffic Engineered (TE) point-to-multipoint (P2MP) Label Switched Paths (LSPs) in Multi- Protocol Label Switching (MPLS) and Generalized MPLS (GMPLS) networks.  The solution relies on RSVP-TE without requiring a multicast routing protocol in the Service Provider core.  Protocol elements and procedures for this solution are described.</t>
              <t indent="0">There can be various applications for P2MP TE LSPs such as IP multicast.  Specification of how such applications will use a P2MP TE LSP is outside the scope of this document.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4875"/>
          <seriesInfo name="DOI" value="10.17487/RFC4875"/>
        </reference>
        <reference anchor="RFC5440" target="https://www.rfc-editor.org/info/rfc5440" quoteTitle="true" derivedAnchor="RFC5440">
          <front>
            <title>Path Computation Element (PCE) Communication Protocol (PCEP)</title>
            <author initials="JP." surname="Vasseur" fullname="JP. Vasseur" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="JL." surname="Le Roux" fullname="JL. Le Roux" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2009" month="March"/>
            <abstract>
              <t indent="0">This document specifies the Path Computation Element (PCE) Communication Protocol (PCEP) for communications between a Path Computation Client (PCC) and a PCE, or between two PCEs.  Such interactions include path computation requests and path computation replies as well as notifications of specific states related to the use of a PCE in the context of Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) Traffic Engineering.  PCEP is designed to be flexible and extensible so as to easily allow for the addition of further messages and objects, should further requirements be expressed in the future.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5440"/>
          <seriesInfo name="DOI" value="10.17487/RFC5440"/>
        </reference>
        <reference anchor="RFC5920" target="https://www.rfc-editor.org/info/rfc5920" quoteTitle="true" derivedAnchor="RFC5920">
          <front>
            <title>Security Framework for MPLS and GMPLS Networks</title>
            <author initials="L." surname="Fang" fullname="L. Fang" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2010" month="July"/>
            <abstract>
              <t indent="0">This document provides a security framework for Multiprotocol Label Switching (MPLS) and Generalized Multiprotocol Label Switching (GMPLS) Networks.  This document addresses the security aspects that are relevant in the context of MPLS and GMPLS.  It describes the security threats, the related defensive techniques, and the mechanisms for detection and reporting.  This document emphasizes RSVP-TE and LDP security considerations, as well as inter-AS and inter-provider security considerations for building and maintaining MPLS and GMPLS networks across different domains or different Service Providers.  This document is not an Internet Standards Track  specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5920"/>
          <seriesInfo name="DOI" value="10.17487/RFC5920"/>
        </reference>
        <reference anchor="RFC5921" target="https://www.rfc-editor.org/info/rfc5921" quoteTitle="true" derivedAnchor="RFC5921">
          <front>
            <title>A Framework for MPLS in Transport Networks</title>
            <author initials="M." surname="Bocci" fullname="M. Bocci" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Bryant" fullname="S. Bryant" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Frost" fullname="D. Frost" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Levrau" fullname="L. Levrau">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Berger" fullname="L. Berger">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2010" month="July"/>
            <abstract>
              <t indent="0">This document specifies an architectural framework for the application of Multiprotocol Label Switching (MPLS) to the construction of packet-switched transport networks.  It describes a common set of protocol functions -- the MPLS Transport Profile (MPLS-TP) -- that supports the operational models and capabilities typical of such networks, including signaled or explicitly provisioned bidirectional connection-oriented paths, protection and restoration mechanisms, comprehensive Operations, Administration, and Maintenance (OAM) functions, and network operation in the absence of a dynamic control plane or IP forwarding support.  Some of these functions are defined in existing MPLS specifications, while others require extensions to existing specifications to meet the requirements of the MPLS-TP.</t>
              <t indent="0">This document defines the subset of the MPLS-TP applicable in general and to point-to-point transport paths.  The remaining subset, applicable specifically to point-to-multipoint transport paths, is outside the scope of this document.</t>
              <t indent="0">This document is a product of a joint Internet Engineering Task Force (IETF) / International Telecommunication Union Telecommunication Standardization Sector (ITU-T) effort to include an MPLS Transport Profile within the IETF MPLS and Pseudowire Emulation Edge-to-Edge (PWE3) architectures to support the capabilities and functionalities of a packet transport network as defined by the ITU-T.  This document  is not an Internet Standards Track specification; it is published for  informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5921"/>
          <seriesInfo name="DOI" value="10.17487/RFC5921"/>
        </reference>
        <reference anchor="RFC6003" target="https://www.rfc-editor.org/info/rfc6003" quoteTitle="true" derivedAnchor="RFC6003">
          <front>
            <title>Ethernet Traffic Parameters</title>
            <author initials="D." surname="Papadimitriou" fullname="D. Papadimitriou">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2010" month="October"/>
            <abstract>
              <t indent="0">This document describes the support of Metro Ethernet Forum (MEF) Ethernet traffic parameters as described in MEF10.1 when using Generalized Multi-Protocol Label Switching (GMPLS) Resource ReSerVation Protocol - Traffic Engineering (RSVP-TE) signaling. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6003"/>
          <seriesInfo name="DOI" value="10.17487/RFC6003"/>
        </reference>
        <reference anchor="RFC6073" target="https://www.rfc-editor.org/info/rfc6073" quoteTitle="true" derivedAnchor="RFC6073">
          <front>
            <title>Segmented Pseudowire</title>
            <author initials="L." surname="Martini" fullname="L. Martini">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Metz" fullname="C. Metz">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Nadeau" fullname="T. Nadeau">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Bocci" fullname="M. Bocci">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Aissaoui" fullname="M. Aissaoui">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2011" month="January"/>
            <abstract>
              <t indent="0">This document describes how to connect pseudowires (PWs) between different Packet Switched Network (PSN) domains or between two or more distinct PW control plane domains, where a control plane domain uses a common control plane protocol or instance of that protocol for a given PW.  The different PW control plane domains may belong to independent autonomous systems, or the PSN technology is heterogeneous, or a PW might need to be aggregated at a specific PSN point.  The PW packet data units are simply switched from one PW to another without changing the PW payload.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6073"/>
          <seriesInfo name="DOI" value="10.17487/RFC6073"/>
        </reference>
        <reference anchor="RFC8306" target="https://www.rfc-editor.org/info/rfc8306" quoteTitle="true" derivedAnchor="RFC8306">
          <front>
            <title>Extensions to the Path Computation Element Communication Protocol (PCEP) for Point-to-Multipoint Traffic Engineering Label Switched Paths</title>
            <author initials="Q." surname="Zhao" fullname="Q. Zhao">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Dhody" fullname="D. Dhody" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Palleti" fullname="R. Palleti">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="King" fullname="D. King">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="November"/>
            <abstract>
              <t indent="0">Point-to-point Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) Traffic Engineering Label Switched Paths (TE LSPs) may be established using signaling techniques, but their paths may first need to be determined.  The Path Computation Element (PCE) has been identified as an appropriate technology for the determination of the paths of point-to-multipoint (P2MP) TE LSPs.</t>
              <t indent="0">This document describes extensions to the PCE Communication Protocol (PCEP) to handle requests and responses for the computation of paths for P2MP TE LSPs.</t>
              <t indent="0">This document obsoletes RFC 6006.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8306"/>
          <seriesInfo name="DOI" value="10.17487/RFC8306"/>
        </reference>
        <reference anchor="RFC8660" target="https://www.rfc-editor.org/info/rfc8660" quoteTitle="true" derivedAnchor="RFC8660">
          <front>
            <title>Segment Routing with the MPLS Data Plane</title>
            <author initials="A." surname="Bashandy" fullname="A. Bashandy" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Filsfils" fullname="C. Filsfils" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Previdi" fullname="S. Previdi">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Decraene" fullname="B. Decraene">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Litkowski" fullname="S. Litkowski">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Shakir" fullname="R. Shakir">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2019" month="December"/>
            <abstract>
              <t indent="0">Segment Routing (SR) leverages the source-routing paradigm.  A node steers a packet through a controlled set of instructions, called segments, by prepending the packet with an SR header.  In the MPLS data plane, the SR header is instantiated through a label stack. This document specifies the forwarding behavior to allow instantiating SR over the MPLS data plane (SR-MPLS).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8660"/>
          <seriesInfo name="DOI" value="10.17487/RFC8660"/>
        </reference>
        <reference anchor="RFC8939" target="https://www.rfc-editor.org/info/rfc8939" quoteTitle="true" derivedAnchor="RFC8939">
          <front>
            <title>Deterministic Networking (DetNet) Data Plane: IP</title>
            <author initials="B." surname="Varga" fullname="B. Varga" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Farkas" fullname="J. Farkas">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Berger" fullname="L. Berger">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Fedyk" fullname="D. Fedyk">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Bryant" fullname="S. Bryant">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2020" month="November"/>
            <abstract>
              <t indent="0">This document specifies the Deterministic Networking (DetNet) data plane operation for IP hosts and routers that provide DetNet service to IP-encapsulated data. No DetNet-specific encapsulation is defined to support IP flows; instead, the existing IP-layer and higher-layer protocol header information is used to support flow identification and DetNet service delivery.  This document builds on the DetNet architecture (RFC 8655) and data plane framework (RFC 8938).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8939"/>
          <seriesInfo name="DOI" value="10.17487/RFC8939"/>
        </reference>
      </references>
    </references>
    <section anchor="acks" numbered="false" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t indent="0" pn="section-appendix.a-1">
                The authors wish to thank <contact fullname="Pat Thaler"/>,
		<contact fullname="Norman Finn"/>, <contact fullname="Loa   Anderson"/>, <contact fullname="David Black"/>,
                <contact fullname="Rodney Cummings"/>, <contact fullname="Ethan Grossman"/>, <contact fullname="Tal   Mizrahi"/>, <contact fullname="David Mozes"/>, <contact fullname="Craig Gunther"/>, 
                <contact fullname="George Swallow"/>, <contact fullname="Yuanlong Jiang"/>, <contact fullname="Jeong-dong   Ryoo"/>, and <contact fullname="Carlos J. Bernardos"/> for their
                various contributions to this work.
      </t>
    </section>
    <section anchor="Contributors" numbered="false" toc="include" removeInRFC="false" pn="section-appendix.b">
      <name slugifiedName="name-contributors">Contributors</name>
      <t indent="0" pn="section-appendix.b-1">
   The editor of this document wishes to thank and acknowledge the
   following person who contributed substantially to the content of this
   document and should be considered a coauthor:
      </t>
      <contact fullname="Don Fedyk">
        <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
        <address>
          <postal/>
          <email>dfedyk@labn.net</email>
        </address>
      </contact>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.c">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author role="editor" fullname="Balázs Varga" initials="B." surname="Varga">
        <organization showOnFrontPage="true">Ericsson</organization>
        <address>
          <postal>
            <street>Magyar Tudosok krt. 11.</street>
            <city>Budapest</city>
            <country>Hungary</country>
            <code>1117</code>
          </postal>
          <email>balazs.a.varga@ericsson.com</email>
        </address>
      </author>
      <author fullname="János Farkas" initials="J." surname="Farkas">
        <organization showOnFrontPage="true">Ericsson</organization>
        <address>
          <postal>
            <street>Magyar Tudosok krt. 11.</street>
            <city>Budapest</city>
            <country>Hungary</country>
            <code>1117</code>
          </postal>
          <email>janos.farkas@ericsson.com</email>
        </address>
      </author>
      <author fullname="Lou Berger" initials="L." surname="Berger">
        <organization showOnFrontPage="true">LabN Consulting, L.L.C.</organization>
        <address>
          <email>lberger@labn.net</email>
        </address>
      </author>
      <author fullname="Andrew G. Malis" initials="A." surname="Malis">
        <organization showOnFrontPage="true">Malis Consulting</organization>
        <address>
          <email>agmalis@gmail.com</email>
        </address>
      </author>
      <author fullname="Stewart Bryant" initials="S." surname="Bryant">
        <organization showOnFrontPage="true">Futurewei Technologies</organization>
        <address>
          <email>sb@stewartbryant.com</email>
        </address>
      </author>
      <author fullname="Jouni Korhonen" initials="J." surname="Korhonen">
        <address>
          <email>jouni.nospam@gmail.com</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
