<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?rfc strict="yes"?>
<?rfc toc="yes"?>
<?rfc tocdepth="4"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-qian-detnet-preof-ioam-00" ipr="trust200902" obsoletes="" updates="" submissionType="IETF" xml:lang="en" tocInclude="true" tocDepth="4" symRefs="true" sortRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.18.0 -->
  <!-- ***** FRONT MATTER ***** -->

    <front>
    <title abbrev="PREOF IOAM for DetNet Service Sub-layer">PREOF IOAM Method for Deterministic Network Service Sub-layer</title>
    <seriesInfo name="Internet-Draft" value="draft-qian-detnet-preof-ioam-00"/>
    <author fullname="Xiaocong Qian" initials="X" surname="Qian">
      <organization>ZTE Corporation</organization>
      <address>
        <postal>
          <street>No.50 Software Avenue</street>
          <city>Nanjing</city>
          <region>Jiangsu</region>
          <code>210012</code>
          <country>China</country>
        </postal>
        <phone/>
        <email>qian.xiaocong@zte.com.cn</email>
      </address>
    </author>
    <author fullname="Quan Xiong" initials="Q" surname="Xiong">
      <organization>ZTE Corporation</organization>
      <address>
        <postal>
          <street>No.6 Huashi Park Rd</street>
          <city>Wuhan</city>
          <region>Hubei</region>
          <code>430223</code>
          <country>China</country>
        </postal>
        <phone/>
        <email>xiong.quan@zte.com.cn</email>
      </address>
    </author>
    <author fullname="Fenlin Zhou" initials="F" surname="Zhou">
      <organization>ZTE Corporation</organization>
      <address>
        <postal>
          <street>No.50 Software Avenue</street>
          <city>Nanjing</city>
          <region>Jiangsu</region>
          <code>210012</code>
          <country>China</country>
        </postal>
        <phone/>
        <email>zhou.fenlin@zte.com.cn</email>
      </address>
    </author>
    <date day="22" month="September" year="2023"/>
    <area>Routing</area>
    <workgroup>DETNET</workgroup>
    <keyword>PREOF DETNET IOAM TRACE</keyword>
    <abstract>
      <t>This document proposes an active IOAM method to PREOF monitor and troubleshoot for 
			Deterministic Networking (DetNet) in its service sub-layer. The method uses a special 
			PREOF-TRACE message to collect multiple types of information from the target flow's PREOF 
			entities and to record them in the packet, and uses a PREOF-RESPONCE message to feed them 
			back to the head node. It assists the DetNet to monitor and maintain the PREOF for the 
			traffic flow.</t>
    </abstract>
  </front>
  <!-- ***** MIDDLE MATTER ***** -->

    <middle>
    <section numbered="true" toc="default">
      <name>Introduction</name>
      <t>Deterministic Networking (DetNet) provides the ability to carry traffic flows with 
                extremely low packet loss rates, assured latency, limited jitter, and limited out-of-order 
                delivery. The DetNet-related data plane is decomposed into a forwarding sub-layer and 
                a service sub-layer, which is described in <xref target="RFC8655" format="default"/> <xref target="RFC8938" format="default"/>. 
                The forwarding sub-layer leverages traffic engineering mechanisms and provides congestion protection. The service 
                sub-layer provides DetNet service protection and reordering.</t>
      <t>The DetNet service sub-layer includes the Packet Replication Function (PRF), Packet Elimination 
                Function (PEF), and Packet Ordering Function (POF) entities. These functions can be 
                enabled in a DetNet edge node, relay node, or end system. The collective name for 
                PRF/PEF/POF is PREOF as per <xref target="RFC8655" format="default"/>.</t>
      <t> OAM is expected to support monitoring and troubleshooting PREOF within the domain
                <xref target="I-D.ietf-detnet-oam-framework" format="default"/>. An on-demand 
                OAM method for particular PREOF node is described in  <xref target="I-D.varga-detnet-service-sub-layer-oam" format="default"/>.
                That method is referred to as "DetNet PING", which is an in-band OAM approach, i.e., 
                the OAM packets follow precisely the same path as the data packets of the corresponding 
                DetNet flow(s). The OAM packets provide DetNet service sub-layer specific information 
                such as: 1) Identity of a DetNet service sub-layer node. 2) Discover Ingress/Egress 
                flow-specific configuration of a DetNet service sub-layer node. 3) Detect the status 
                of the flow-specific service sub-layer function.</t>
      <t>This document proposes another method for detecting and troubleshooting PREOF entities 
                for the targeted DetNet traffic flow (which is briefly called traget flow in following 
                content) in DetNet service sub-layer. This method designs PREOF-TRACE and PREOF-RESPONCE 
                messages. The PREOF-TRACE message sent by the OAM head node is transplanted from the 
                target flow. So its behavior in forwarding sublayer is equal to that of the traffic flow. 
                Relay nodes those have DetNet service sub-layer in the forwarding path recognize PREOF-TRACE 
                message, and append records into PREOF-TRACE message only when they run PRF/PEF/POF entities 
                for that flow. The recorded content includes the identity, attributes, status of the functional 
                entity and other information about interface, time, queue, etc. When the PEF node eliminates 
                redundant replicas, or when the PREOF-TRACE message reaches its destination, a PREOF-RESPONCE 
                message containing all information collected along the way of the PREOF-TRACE message will be 
                generated and sent back to the OAM head node. The PREOF-RESPONCE message is also generated 
                by PEF nodes and carrys the current replica count value.</t>
    </section>
    <section numbered="true" toc="default">
      <name>Requirements Language</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD
                NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are
                to be interpreted as described in BCP 14 <xref target="RFC2119" format="default"/>
        <xref target="RFC8174" format="default"/> when, and only when, they appear in all capitals, as
                shown here.</t>
    </section>
    <section numbered="true" toc="default">
      <name>Terminology</name>
      <ul spacing="normal">
        <li>IOAM: In situ Operations, Administration and Maintenance.</li>
        <li>PRF: Packet Replication Function. It divides a DetNet flow into multiple DetNet 
                            member flows by replicating packets and sending them out with different egress interfaces.</li>
        <li>PEF: Packet Elimination Function. It eliminates duplicated packets of a DetNet 
                            flow based on the sequencing information and a history of received packets. 
                            The output of the PEF is always a single packet.RIB: Routing Information Base.</li>
        <li>POF: Packet Ordering Function. It uses the sequencing information to reorder a DetNet flow's packets that are received out of order.</li>
        <li>PREOF: A collective name for Packet Replication, Elimination, and Ordering Functions.</li>
        <li>PREOF-TRACE: A message used to collect information on all PREOF entities along its way to the destination.</li>
        <li>PREOF-RESPONCE: A message used to postback collected information about PREOF entities to the head node.</li>
        <li>PREOF IOAM TRACE: an active IOAM method for DetNet PREOF that appends collected information in the 
                            PREOF-TRACE packet and postbacks in the PREOF-RESPONCE packet.</li>
      </ul>
    </section>
    <section numbered="true" toc="default">
      <name>Overview</name>
      <t>The proposed PREOF IOAM TRACE is a method of active OAM for DetNet.</t>
      <t>For the target flow, the PREOF IOAM TRACE uses the message transmission method by sending 
                a "PREOF-TRACE" message and accepting its "PREOF-RESPONCE" message to monitor and 
                troubleshoot PREOF ability. At the beginning, a "PREOF-TRACE" message is sent from the 
                head node. The outer part of PREOF-TRACE carries the same IP header (for IP data plane) 
                or MPLS label (for MPLS data plane) as the service message. The inner part of PREOF-TRACE 
                carries a header containing fields such as "PREOF-TRACE Flag", dedicated "Serial Number", 
                "TRACE Type" as well as "Data Field" used to record running information of all encountered 
                PREOF functional entities along the way. PREOF-TRACE follows exactly the same forwarding 
                way and the same replication, elimination and ordering behaviors as the DetNet flow. 
                Accordingly, information about location, attributes, status and other items concerned by 
                networks' operator for PREOF entity in the forwarding path will be recorded into the data 
                field as a list, in accordance with the specification carried by TRACE type.</t>
      <t>When the PEF node eliminates redundant "PREOF-TRACE" copies, or when the tail node receives 
                the "PREOF-TRACE" message, a "PREOF-RESPONCE" message will be returned, which carries the 
                flow identification, node identification, sequence number of the message and all records 
                in data field of the "PREOF-TRACE" message.</t>
      <t>Figure 1 shows an instance of PREOF IOAM TRACE. There are two PRF entities (R1, R2), 
                two PEF entites(E1, E2) and one POF entity(O1) applied for the target flow in the DetNet 
                OAM domain. P1, P2 to P6 are forwarding paths between two PREOF entities..</t>
      <t>For this instance, Every PREOF-TRACE packet from the head node is replicated by R1 into 
                two packets: pkt1(along P1) and pkt2(along P2). The pkt2 is replicated by R2 into two 
                packets: pkt2(along P2,P3) and pkt3(along P2,P4). For E1 that receives pkt1 and pkt3, 
                it is supposed that pkt1 is accept and forwarded ahead while pkt3 is discarded. For E2 
                that receives pkt1(along P1,P5) and pkt2(along P2,P3), it is supposed that pkt2 is accept 
                and forwarded ahead while pkt1 is discarded. At O1, PREOF-TRACE packets are reorderd 
                by their serial numbers. </t>
      <t>At the moment when E1 decides to discard pkt3, E1 generates a PREOF-RESPONCE packet 
                containing historic records(about R1,R2) carried in pkt3 and current record of E1, then 
                sends it back to the head node.</t>
      <t>When the tail node receives pkt2, it generates a PREOF-RESPONCE packet containing 
                all historic records(about R1,R2,E2,O1) carried in pkt2 and sents it back to the head node.</t>
      <figure>
        <name>an instance of PREOF IOAM TRACE</name>
        <artwork align="center" name="" type="" alt=""><![CDATA[

             +------------E1-------------+
             |    P1       |      P5     |
             |             |             |
   +----+    |             |             |          +----+
   |Head|----R1       +----+P4           E2----O1---+Tail|
   +----+    |        |                  |  P6      +----+
             |        |                  |
             | P2     |       P3         |
             +-------R2---------- -------+
      <---------------DetNet OAM domain--------------->

                ]]></artwork>
      </figure>
      <t keepWithPrevious="true"/>
    </section>
    <section numbered="true" toc="default">
      <name>PREOF-TRACE</name>
      <t>The PREOF-TRACE message collects items including the location, attributes, status, configuration 
                and other information of the entities that provide PRF, PEF, or POF for the target flow when it passes 
                through the OAM domain. Besides, some information in the forwarding sub-layer can also be collected.</t>
      <section numbered="true" toc="default">
        <name>Encapsulation</name>
        <t>Since PRF, PEF, and POF entities are deployed for the target flow, the OAM packets should be 
                associated with the target flow. So for PREOF-TRACE's encapsulation, it is necessary to carry 
                a flow identifier which is consistent with the targeted DetNet traffic flow. That means, 
                PREOF-TRACE should carry the same S-label in the DetNet encapsulation as described in 
                <xref target="RFC8938" format="default"/> for MPLS data plane. While for IP data plane, PREOF-TRACE 
                should carry the six tuples in the DetNet encapsulation (in cases where port information 
                cannot be obtained, triples or binaries can also be used, as described in <xref target="RFC8938" format="default"/>
          <xref target="RFC8939" format="default"/>). Furthermore, in order to ensure that PREOF-TRACE packets 
                and associated DetNet traffic packets are treated equally by all DetNet network nodes and 
                follow the same path in the forwarding sub-layer, the outer encapsulation of PREOF-TRACE 
                packets should be the same as that of DetNet traffic packets.</t>
        <t>The PREOF-TRACE packet should encapsulates an OAM header and data field.</t>
        <section numbered="true" toc="default">
          <name>OAM Header</name>
          <t>OAM header within the PREOF-TRACE packet carries fields for packet identification, 
                    trace type description and necessary auxiliary information such as the serial number.</t>
          <section numbered="true" toc="default">
            <name>OAM Distinguishing Nibble</name>
            <t>The OAM Distinguishing nibble is used to distinguish an OAM packet from a DetNet traffic 
                        packet in MPLS data plane. These four bits are 0001 for PREOF-TRACE packet, which is 
                        consistent to the section 4.1 of <xref target="I-D.ietf-detnet-mpls-oam" format="default"/>.</t>
          </section>
          <section numbered="true" toc="default">
            <name>PREOF-TRACE Flag</name>
            <t>The PREOF-TRACE flag uses one bit to identify the OAM packet as a PREOF-TRACE packet.</t>
          </section>
          <section numbered="true" toc="default">
            <name>Serial Number</name>
            <t>The Serial Number field carrys a dedicated serial number referenced for PREOF. 
                        It's a number represented by a set of consecutive bits, and the sequence code in the 
                        next PREOF-TRACE packet is added by 1 to that in the previous message.</t>
          </section>
          <section numbered="true" toc="default">
            <name>Node ID</name>
            <t>The Node ID field takes an unique value to identify the DetNet node that originates 
                        the packet.</t>
          </section>
          <section numbered="true" toc="default">
            <name>TRACE Type</name>
            <t>The TRACE Type field specifies which data types are used the data field. The structure 
                        of this field is bit-map, and each bit within the map has a particular regulation, just 
                        as follows:</t>
            <t>ID-bit: When set, indicates the PREOF entity to record its identity.</t>
            <t>FT-Bit: When set, indicates the PREOF entity to record its function type (RPF, PEF or POF).</t>
            <t>RT-bit: When set, indicates the PREOF entity to record its location (eg. the identity of the router).</t>
            <t>Time-bit: When set, indicates the PREOF entity to record a timestamp on the moment of 
                        PEF/PEF/POF process ending.</t>
            <t>RN-bit: When set, indicates the PRF entity to record the number of replication.</t>
            <t>SN-bit: When set, indicates the PEF entity to record the current value of the 
                        counter for the packet with the same serial number.</t>
            <t>QL-bit: When set, indicates the PRF entity to record the current length of the reordering queue.</t>
            <t>TRACE Type may also define some bits to collect information from the forwarding 
                        sub-layer, so as to help the DetNet flow to detect characteristics or performances of its member 
                        flows, for example, to detect delay differences among different member flows between 
                        PRF and PEF nodes.</t>
            <t>IIFI-bit: When set, indicates the PREOF entity to record the ingress interface information.</t>
            <t>EIFI-bit: When set, indicates the PREOF entity to record the egress interface information.</t>
            <t>IIFT-bit: When set, indicates the PREOF entity to record the time when the packet reaches 
                        the ingress interface.</t>
            <t>EIFT-bit: When set, indicates the PREOF entity to record the time when the packet leaves 
                        the egress interface.</t>
            <t>EIFS-bit: When set, indicates the PREOF entity to record the timeslot or cycle id on the 
                        egress interface.</t>
            <t>EIFQ-bit: When set, indicates the PREOF entity to record the queue information on the 
                        egress interface.</t>
            <t>More bits can be regulated in the TRACE type in the future.</t>
            <t>Figure 2 shows an instance of TRACE Type bit-map structure.</t>
            <figure>
              <name>an instance of TRACE Type bit-map structure</name>
              <artwork align="center" name="" type="" alt=""><![CDATA[

bit0  1   2   3   4   5   6   7   8   9  10  11  12
+---+---+---+---+---+---+---+---+---+---+---+---+---+........+
|   |   |   |   |   |   |   |   |   |   |   |   |   |        |
+---+---+---+---+---+---+---+---+---+---+---+---+---+........+
  ^   ^   ^   ^   ^   ^   ^   ^   ^   ^   ^   ^   ^  ^      ^
  |   |   |   |   |   |   |   |   |   |   |   |   |   \    /
 ID   |   |   |  RN|  |   |   | EIFI  |   |  EIFS |  reserved
     FT   |   |      SN   |   |       |   |      EIFQ  bits
         RT   |          QL   |     IIFT  |
             Time            IIFI        EIFT

                     ]]></artwork>
            </figure>
            <t keepWithPrevious="true"/>
          </section>
        </section>
        <section numbered="true" toc="default">
          <name>Data Field</name>
          <t>Data field is the most important field for this OAM packet. It consists 
                        of a series of record lists. Each record list is written by the PREOF 
                        entity through which the PREOF-TRACE flows. The recorded items are: 
                        identification of the node; Identification, attributes, and status information 
                        of PRF/PEF/POF entities; Interface parameters, time parameters, queue 
                        parameters and other useful information  for OAM. Suggestions for information 
                        collection are as follows:</t>
          <t>1. If PRF entity is provided for the flow at the relay node, PRF entity should 
                        record the node ID, entity ID, entity attributes (PRF), and necessary 
                        information indicated by the trace type field into the data field of the 
                        PREOF-TRACE packet.</t>
          <t>2. If PEF entity is provided for the flow at the relay node, PEF entity should 
                        record the node ID, entity ID, entity attributes (PEF), and necessary information 
                        indicated by the trace type field into the data field of the PREOF-TRACE packet.</t>
          <t>3. If POF entity is provided for the flow at the relay node, POF entity should 
                        record the node ID, entity ID, entity attributes (POF), and necessary information 
                        indicated by the trace type field into the data field of the PREOF-TRACE packet.</t>
        </section>
      </section>
    </section>
    <section numbered="true" toc="default">
      <name>PREOF-RESPONCE</name>
      <t>The PREOF-RESPONCE message transmits all information of PREOF entities along the way 
                collectted by the PREOF-TRACE message to the OAM head node.</t>
      <t>The PREOF-RESPONCE packet should be generated for two circumstances below:</t>
      <t>1. When the OAM tail node (it should be a relay node or an end system which owns DetNet 
                service-sublayer) receives a PREOF-RESPONCE packet.</t>
      <t>2. When a PEF node receives an redundant replica of PEROF-TRACE packet.</t>
      <section numbered="true" toc="default">
        <name>Encapsulation</name>
        <t>The PREOF-RESPONCE packet encapsualtion should carry several features listed below:</t>
        <t>1. The flow identification of the the PREOF-TRACE packet.</t>
        <t>2. The serial number of the PREOF-TRACE packet.</t>
        <t>3. The node ID of the PREOF-TRACE packet.</t>
        <t>4. The trace type field of the PREOF-TRACE packet.</t>
        <t>5. Whole information recorded in the data field of the PREOF-TRACE packet. Direct copy 
                    is suitable while appropriate compression is also considerable, which is out of 
                    this document.</t>
        <t>6. A bit of PREOF-RESPONCE flag is added in the packet.</t>
        <t>7. When a PEF node generates the PREOF-RESPONCE packet, it should set SN-bit of the 
                    trace type field and record the counter value for the replica.</t>
      </section>
    </section>
    <section numbered="true" toc="default">
      <name>PREOF IOAM TRACE Procedures</name>
      <t>The head node of PREOF IOAM TRACE is an end system or an relay node within the DetNet 
                domain, and an IOAM encapsulating node in the OAM domain. The tail node of PREOF IOAM 
                TRACE is an end system or an relay node within the DetNet domain, and an IOAM decapsulating 
                node in the OAM domain. Once It is confirmed that the tail node has no less than one 
                reachable route to the head node, DetNet can perform PREOF IOAM TRACE with following 
                procedures:</t>
      <section numbered="true" toc="default">
        <name>OAM Head Node</name>
        <t>1. The head node generates PREOF-TRACE packets for trageted DetNet service flow 
                    and sends PREOF-TRACE packets to the tail node within the OAM domain. A serial 
                    number is allocated in each packet.</t>
        <t>2. For every PREOF-TRACE packet, the head node waits for its PREOF-RESPONCE 
                    packet carrying the same serial number.</t>
        <t>3. The head node receives PREOF-RESPONCE packets and extracts out information 
                    about all PREOF entities.</t>
        <t>There is a state machine for the head node to wait and receive PREOF-RESPONCE 
                    packets which are normally more than one when PEF entity exists.</t>
      </section>
      <section numbered="true" toc="default">
        <name>Intermediate Node</name>
        <t>The procedures for intermediate node depend on following cases:</t>
        <t>Case 1: the intermediate node is a DetNet transit node which only works on forwarding sub-layer.</t>
        <t>For case 1, the intermediate node directly forwards the packet to the next hop 
                    without processing its inner OAM part.</t>
        <t>Case 2: the intermediate node is a DetNet relay node which works on service sub-layer, but 
                    it is not a PREOF entity for the trageted DetNet service flow.</t>
        <t>For case 2, the intermediate node directly forwards the packet to the next hop 
                    without processing its inner OAM part.</t>
        <t>Case 3: the intermediate node is a DetNet relay node which runs PRF for the trageted 
                    DetNet service flow.</t>
        <t>For case 3, the intermediate node performs the following steps:</t>
        <t>1. It copys the PREOF-Trace packet, including the OAM serial number, and adds a PRF 
                    record into the data field of each copied message according to the trace type field.</t>
        <t>2. It sends replicas through multiple egress interfaces to multiple next hops, complying 
                    with the rules pre-defined in the PRF entity.</t>
        <t>Case 4: the intermediate node is a DetNet relay node which runs PEF for the trageted 
                    DetNet service flow..</t>
        <t>For case 4, the intermediate node performs the following steps:</t>
        <t>1. It counts the number of received replicas locally based on the serial number 
                    of PREOF-TRACE packet.</t>
        <t>2. If the count value is 1, it adds a PEF record in the data area of the PREOF-TRACE 
                    message according to the trace type field, and continues forwarding the PREOF-TRACE packet.</t>
        <t>3. If the count value is equal to or bigger than 2, it generates a PREOF-RESPONCE 
                    packet containing all historical trace records, one current PEF record, as well as 
                    the count value in step 1.</t>
        <t>4. It sends the PREOF-RESPONCE packet to the OAM head node, while the PREOF-TRACE 
                    replica is discarded.</t>
        <t>Case 5: the intermediate node is a DetNet relay node which runs POF for the trageted 
                    DetNet service flow.</t>
        <t>For case 5, the intermediate node performs the following steps:</t>
        <t>1. It adds a POF record to the data field of the PREOF-TRACE packet according to 
                    the trace type field.</t>
        <t>2. PREOF-TRACE packets out of order are reordered in the queue by their serial numbers.</t>
        <t>3. PREOF-TRACE packets are sent to the next hop in order.</t>
      </section>
      <section numbered="true" toc="default">
        <name>OAM Tail Node</name>
        <t>When the tail node receives PREOF-TRACE, it generates a PREOF-RESPONCE packet 
                    whose content is described in section 5, and sends it back to the OAM head node.</t>
      </section>
    </section>
    <section numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>TBA.</t>
    </section>
    <section anchor="IANA" numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>TBA.</t>
    </section>
  </middle>
  <!--  *****BACK MATTER ***** -->

    <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>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" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8655.xml">
          <front>
            <title>Deterministic Networking Architecture</title>
            <author fullname="N. Finn" initials="N." surname="Finn"/>
            <author fullname="P. Thubert" initials="P." surname="Thubert"/>
            <author fullname="B. Varga" initials="B." surname="Varga"/>
            <author fullname="J. Farkas" initials="J." surname="Farkas"/>
            <date month="October" year="2019"/>
            <abstract>
              <t>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>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC8938" target="https://www.rfc-editor.org/info/rfc8938" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8938.xml">
          <front>
            <title>Deterministic Networking (DetNet) Data Plane Framework</title>
            <author fullname="B. Varga" initials="B." role="editor" surname="Varga"/>
            <author fullname="J. Farkas" initials="J." surname="Farkas"/>
            <author fullname="L. Berger" initials="L." surname="Berger"/>
            <author fullname="A. Malis" initials="A." surname="Malis"/>
            <author fullname="S. Bryant" initials="S." surname="Bryant"/>
            <date month="November" year="2020"/>
            <abstract>
              <t>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>
        <reference anchor="RFC8939" target="https://www.rfc-editor.org/info/rfc8939" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8939.xml">
          <front>
            <title>Deterministic Networking (DetNet) Data Plane: IP</title>
            <author fullname="B. Varga" initials="B." role="editor" surname="Varga"/>
            <author fullname="J. Farkas" initials="J." surname="Farkas"/>
            <author fullname="L. Berger" initials="L." surname="Berger"/>
            <author fullname="D. Fedyk" initials="D." surname="Fedyk"/>
            <author fullname="S. Bryant" initials="S." surname="Bryant"/>
            <date month="November" year="2020"/>
            <abstract>
              <t>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>
        <reference anchor="I-D.ietf-detnet-oam-framework" target="https://datatracker.ietf.org/doc/html/draft-ietf-detnet-oam-framework-08" xml:base="https://bib.ietf.org/public/rfc/bibxml-ids/reference.I-D.ietf-detnet-oam-framework.xml">
          <front>
            <title>Framework of Operations, Administration and Maintenance (OAM) for Deterministic Networking (DetNet)</title>
            <author fullname="Greg Mirsky" initials="G." surname="Mirsky">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Fabrice Theoleyre" initials="F." surname="Theoleyre">
              <organization>CNRS</organization>
            </author>
            <author fullname="Georgios Z. Papadopoulos" initials="G. Z." surname="Papadopoulos">
              <organization>IMT Atlantique</organization>
            </author>
            <author fullname="Carlos J. Bernardos" initials="C. J." surname="Bernardos">
              <organization>Universidad Carlos III de Madrid</organization>
            </author>
            <author fullname="Balazs Varga" initials="B." surname="Varga">
              <organization>Ericsson</organization>
            </author>
            <author fullname="János Farkas" initials="J." surname="Farkas">
              <organization>Ericsson</organization>
            </author>
            <date day="1" month="February" year="2023"/>
            <abstract>
              <t>Deterministic Networking (DetNet), as defined in RFC 8655, is aimed to provide a bounded end-to-end latency on top of the network infrastructure, comprising both Layer 2 bridged and Layer 3 routed segments. This document's primary purpose is to detail the specific requirements of the Operation, Administration, and Maintenance (OAM) recommended to maintain a deterministic network. The document will be used in future work that defines the applicability of and extension of OAM protocols for a deterministic network. With the implementation of the OAM framework in DetNet, an operator will have a real-time view of the network infrastructure regarding the network's ability to respect the Service Level Objective, such as packet delay, delay variation, and packet loss ratio, assigned to each DetNet flow.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-detnet-oam-framework-08"/>
        </reference>
        <reference anchor="I-D.ietf-detnet-mpls-oam" target="https://datatracker.ietf.org/doc/html/draft-ietf-detnet-mpls-oam-13" xml:base="https://bib.ietf.org/public/rfc/bibxml-ids/reference.I-D.ietf-detnet-mpls-oam.xml">
          <front>
            <title>Operations, Administration and Maintenance (OAM) for Deterministic Networks (DetNet) with MPLS Data Plane</title>
            <author fullname="Greg Mirsky" initials="G." surname="Mirsky">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Mach Chen" initials="M." surname="Chen">
              <organization>Huawei</organization>
            </author>
            <author fullname="Balazs Varga" initials="B." surname="Varga">
              <organization>Ericsson</organization>
            </author>
            <date day="6" month="July" year="2023"/>
            <abstract>
              <t>This document defines format and usage principles 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-13"/>
        </reference>
        <reference anchor="I-D.varga-detnet-service-sub-layer-oam" target="https://datatracker.ietf.org/doc/html/draft-varga-detnet-service-sub-layer-oam-03" xml:base="https://bib.ietf.org/public/rfc/bibxml-ids/reference.I-D.varga-detnet-service-sub-layer-oam.xml">
          <front>
            <title>Deterministic Networking (DetNet): OAM Functions for The Service Sub-Layer</title>
            <author fullname="Balazs Varga" initials="B." surname="Varga">
              <organization>Ericsson</organization>
            </author>
            <author fullname="János Farkas" initials="J." surname="Farkas">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Greg Mirsky" initials="G." surname="Mirsky">
              <organization>Ericsson</organization>
            </author>
            <date day="25" month="July" year="2022"/>
            <abstract>
              <t>Operation, Administration, and Maintenance (OAM) tools are essential for a deterministic network. The DetNet architecture [RFC8655] has defined two sub-layers: (1) DetNet service sub-layer and (2) DetNet forwarding sub-layer. OAM mechanisms exist for the DetNet forwarding sub-layer. Nonetheless, OAM for the service sub-layer might require new extensions to the existing OAM protocols. This draft presents an analysis of OAM procedures for the DetNet service sub-layer functions.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-varga-detnet-service-sub-layer-oam-03"/>
        </reference>
      </references>
    </references>
  </back>
</rfc>
