<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.19 (Ruby 3.0.2) -->
<?rfc docmapping="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-rc-detnet-data-unit-groups-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.23.2 -->
  <front>
    <title abbrev="DUG-for-DetNet">Data Unit Groups for DetNet-Enabled Networks</title>
    <seriesInfo name="Internet-Draft" value="draft-rc-detnet-data-unit-groups-00"/>
    <author initials="S." surname="Robitzsch" fullname="Sebastian Robitzsch">
      <organization>InterDigital</organization>
      <address>
        <postal>
          <country>United Kingdom</country>
        </postal>
        <email>sebastian.robitzsch@interdigital.com</email>
      </address>
    </author>
    <author initials="" surname="LM Contreras" fullname="Luis M. Contreras">
      <organization>Telefonica</organization>
      <address>
        <postal>
          <country>Spain</country>
        </postal>
        <email>luismiguel.contrerasmurillo@telefonica.com</email>
      </address>
    </author>
    <date/>
    <area>Routing</area>
    <workgroup>detnet</workgroup>
    <abstract>
      <?line 70?>

<t>This document provides the description of an Internet Protocol (IP) Version 6 (IPv6) extension header allowing DetNet routers to determine the relative importance between packets of the same flow, which enables gracefully dropping packets in case of congestion.  This behaviour can for example be useful for media flows, where different application units can have very different impact on the quality of experience of the user.  This document aims primarily at extending the DetNet IP Data Plane in an initial revision of this draft, and may be extended to Multi-Protocol Label Switching (MPLS) and MPLS over User Datagram Protocol (UDP)/IP data plane options in future revisions.</t>
    </abstract>
  </front>
  <middle>
    <?line 74?>

<section anchor="definition-and-abbreviations">
      <name>Definition, and abbreviations</name>
      <section anchor="abbreviation">
        <name>Abbreviation</name>
        <t>AR Augmented Reality</t>
        <t>ADU Application Data Unit</t>
        <t>DUG Data Unit Group</t>
        <t>IP Internet Protocol</t>
        <t>IPv6 Internet Protocol Version 6</t>
        <t>MPLS Multi-Protocol Label Switching</t>
        <t>MTU Maximum Transmission Unit</t>
        <t>QoE Quality of Experience</t>
        <t>TLS Transport Layer Security</t>
        <t>TLV Type Length Values</t>
        <t>UDP User Datagram Protocol</t>
        <t>VR Virtual Reality</t>
        <t>XR eXtended Reality</t>
      </section>
    </section>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Applications often send data which does not fit as payload into a single IP packet.  As a result, a single Application Data Unit (ADU) is fragmented into smaller chunks with a maximum length of each chuck determined by the underlying computer network and its Maximum Transmission Unit (MTU). The set of packets that carry the entirety of a single ADU are hereby defined as a Data Unit Group (DUG).  For high-throughput, low-latency applications such as Augmented Reality (AR) or Virtual Reality (VR) media applications, collectively called eXtended Reality (XR) applications, this can lead to situations where a single packet loss can lead to the loss of the whole ADU for the application.  The same applies for closed-loop automation digital twinning applications that require a wide range of monitoring data of the real world to create the digital twin for on-demand decision making.</t>
      <t>Since some ADUs are more important than others for the Quality of Experience (QoE) for the application user or the accurate performance of a digital twin, it can be useful for the network to be aware of the difference of importance between the ADUs, to be able to down-prioritise (or even drop) the least important packets in case of congestion.</t>
      <t>Techniques have been developed in 5G (in 3GPP Release 18, <xref target="_3GPP-23.501"/>), to convey "XR metadata", including importance within the flow, associated with a "PDU Set" (i.e., set of packets transporting an ADU) to the network. The sending application determines the metadata and associates it with ADUs (e.g., within individual packets). The network uses the importance of packets to determine which packets to drop in case of congestion.</t>
      <t>Within this document, the group of packets that transport a single ADU is designated as a "Data Unit Group" (DUG). The purpose of this document is to define a mechanism for conveying importance (within the flow) and related metadata of DUGs to DetNet routers, to make it available for enhanced queuing, shaping, scheduling, and pre-emption decisions.</t>
      <t>This document aims primarily at extending the DetNet IP Data Plane <xref target="RFC8939"/> in an initial revision of this draft, and may be extended to Multi-Protocol Label Switching (MPLS) <xref target="RFC8964"/> and MPLS over User Datagram Protocol (UDP)/IP <xref target="RFC9566"/> data plane options in future revisions.</t>
    </section>
    <section anchor="internet-protocol-version-6-extension">
      <name>Internet Protocol Version 6 Extension</name>
      <t>This document proposes the introduction of DUG as an extension to the IPv6 header.  In order to comply with this requirement and to follow the guidelines on how to design IPv6 header extensions <xref target="RFC6564"/>, <xref target="RFC8200"/>, i.e., using Type Length Values (TLVs), a new IPv6 TLV is defined.</t>
      <t>As the order of extension headers are fixed in IPv6, the DUG-related information is added to an appropriate IPv6 header option.  The main purpose of the proposed DUG TLVs is for intermediate node to read the values and perform any DetNet queuing, shaping, scheduling, ordering or even dropping over them.  Thus, the "Hop-by-Hop" options header is identified as the most appropriate one, as intermediate nodes shall process the DUG-related information.</t>
      <t>The IPv6 header option is illustrated in <xref target="_figure-header"/> and is a sequence in form of an unsigned integer number indicating the order of packets within a Data Unit Group. With each new packet, the sequence number is iterated by 1.</t>
      <figure anchor="_figure-header">
        <name>DUG metadata IPv6 option</name>
        <artwork><![CDATA[
 0                   1                   2                    3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3  4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Type         | Length        |  DUG ID       | Sequence      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|D|   I   |C|S|E|
+-+-+-+-+-+-+-+-+
]]></artwork>
      </figure>
      <t>The set of values describe the DUG as follows:</t>
      <ul spacing="normal">
        <li>
          <t>DUG ID: an unsigned integer number identifying the DUG. The DUG ID of each new DUG is increased by 1 by the sender.</t>
        </li>
        <li>
          <t>Sequence: an unsigned integer number indicating the order of packets within a DUG, starting from 0 and increased by 1 for each packet in the DUG.</t>
        </li>
        <li>
          <t>D: This bit indicates the end of the DUG.</t>
        </li>
        <li>
          <t>I: These four bits indicate the importance of this packet against other packets in the same DUG.  Lower values indicate a higher importance and allow to prioritise packets in different DUGs.  Importance may be derived from the application type or the sensitivity of applications when not receiving a DUG in their application.</t>
        </li>
        <li>
          <t>C: A 1-bit field to indicate higher layer control plane packets. When reliable transport protocols are in use, e.g., TCP, or upper-layer control procedures take place, e.g., establishment of a TLS session, there is no ADU exchanged.  However, these control packets are equally important to the delivery of an ADU and depending on their functionality in the communication sometime even more important than the ADU itself.  This bit allows to tag these packets.</t>
        </li>
        <li>
          <t>S: This 1-bit field indicates the start of a burst of packets within a DUG.</t>
        </li>
        <li>
          <t>E: This 1-bit field indicates the end of a burst of packets within a DUG.</t>
        </li>
      </ul>
      <t>Additional padding may be needed to make the hop-by-hop options header a multiple of 8 bytes long.</t>
    </section>
    <section anchor="router-behavior">
      <name>Router Behavior</name>
      <t>A router can use DUG metadata to process packets belonging to the same traffic flow. For illustration, examples of such processing operations may include:</t>
      <ul spacing="normal">
        <li>
          <t>For increased reliability, DetNet routers may use one or more DUG header options to apply frame replication or different queuing techniques. For instance, the C or I flag can indicate higher importance of a packet or set of packets within the DUG, e.g., the establishment of a Transport Layer Security (TLS) session before the actual ADU is sent.</t>
        </li>
        <li>
          <t>In case of congestion where some packets need to be dropped, the importance can be used to determine which packets to drop. This can include a subset of the entire DUG, identified by their DUG ID, within a DetNet flow.</t>
        </li>
        <li>
          <t>Scheduling operations can use importance or other DUG metadata to determine which packet to send on which link. For example, the scheduler may forward packets on the same link used for other packets of the same DUG, to provide a consistent treatment. In another example, packets of higher importance may be forwarded over higher quality links.</t>
        </li>
      </ul>
    </section>
    <section anchor="known-implementations">
      <name>Known Implementations</name>
      <t>The DUG concept described in this document is currently being implemented and validated in the SNS project PREDICT-6G <xref target="P6G"/>, using temporary experimental values for the DUG sequence option and the DUG flag option</t>
      <t>The DUG-enabled router implementation utilises Express Data Paths (XDP) hooks provided by the extended Berkley Filters (eBPF) implementation in the Linux kernel <xref target="eBPF"/>. The XDP hook implements the parsing of the IPv6 header and the DUG options as well as extended logging to feed packet treatment behaviours to the monitoring repository of a Digital Twin. Furthermore, the XDP hook implements a fixed cycle time to judge all arriving packets against and over which basic queuing and drop mechanisms can be applied.</t>
      <t>Before testing the implementation, it was verified that the XDP hook has no negative impact on the actual networking performance of Linux. As reported in Section 2.2.7 in <xref target="P6G-D4.2"/>, the hook without any packet treatment (only parsing an IPv6 header and with logging implemented) had no impact on neither UDP nor TCP measurements using iperf and plain IPv6 traffic.</t>
      <t>To stress test the XDP hook and to provide measurement data to the Digital Twin to predict the impact on packet latency and jitter when admitting a new DetNet flow, a testbed of four nodes was created, as illustrated in <xref target="_figure-testbed"/>. Two clients are connected to a forwarder, which is then connected to a Server. All links operate at 1G and are dedicated PCIe network interface cards. The forwarder is equipped with three network interface cards.</t>
      <t>To create congestion on the forwarder-to-server link, both clients (Client 1 and Client 2) send iperf-generated IPv6 traffic to the server. The clients also host a self-written client application that generates IPv6 traffic with the DUG header option. The DUG client applications inject two packets per second at the moment, signalling the start and the stop of a DUG.</t>
      <figure anchor="_figure-testbed">
        <name>DUG validation testbed</name>
        <artwork><![CDATA[
------------
| Client 1 |
------------\
             \
              -------------   ----------
              | Forwarder |---| Server |
              -------------   ----------
             /
------------/
| Client 2 |
------------
]]></artwork>
      </figure>
      <t>With both iperf clients configured to max out the forwarder-to-server link (940Mbps maximum UDP goodput), the XDP hook allows to report on DUG packets that are not processed within a cycle to the monitoring repository of the Digital Twin.</t>
      <t>In the upcoming months, the XDP hook will be extended to be configurable from DetNet Controllers to read the priority field of the DUG flags and to prioritise a percentage of them if they are not being delivered with the configured XDP cycle time.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This memo describes metadata exposed in cleartext in the IPv6 header. This metadata is similar to metadata exposed in RTP header extensions such as <xref target="I-D.draft-ietf-avtext-framemarking"/>. There is a potential for some limited privacy leakage, which may be acceptable for some applications, as a tradeoff to improve the overall quality of experience for the application. For example, it may be possible to determine video keyframes and their frequency.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>TODO: this memo may reserve one or more IPv6 Hop-by-Hop Options.</t>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This work has been partially funded by the European Commission Horizon Europe SNS JU projects PREDICT-6G (GA 101095890) <xref target="P6G"/>. The following people contributed substantially to the content of this document and should be considered coauthors: Xavier de Foy, Abinaya Babu, and Muhammad Awais Jadoon.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-informative-references">
      <name>Informative References</name>
      <reference anchor="RFC8939">
        <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="RFC6564">
        <front>
          <title>A Uniform Format for IPv6 Extension Headers</title>
          <author fullname="S. Krishnan" initials="S." surname="Krishnan"/>
          <author fullname="J. Woodyatt" initials="J." surname="Woodyatt"/>
          <author fullname="E. Kline" initials="E." surname="Kline"/>
          <author fullname="J. Hoagland" initials="J." surname="Hoagland"/>
          <author fullname="M. Bhatia" initials="M." surname="Bhatia"/>
          <date month="April" year="2012"/>
          <abstract>
            <t>In IPv6, optional internet-layer information is encoded in separate headers that may be placed between the IPv6 header and the transport-layer header. There are a small number of such extension headers currently defined. This document describes the issues that can arise when defining new extension headers and discusses the alternate extension mechanisms in IPv6. It also provides a common format for defining any new IPv6 extension headers, if they are needed. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6564"/>
        <seriesInfo name="DOI" value="10.17487/RFC6564"/>
      </reference>
      <reference anchor="RFC8200">
        <front>
          <title>Internet Protocol, Version 6 (IPv6) Specification</title>
          <author fullname="S. Deering" initials="S." surname="Deering"/>
          <author fullname="R. Hinden" initials="R." surname="Hinden"/>
          <date month="July" year="2017"/>
          <abstract>
            <t>This document specifies version 6 of the Internet Protocol (IPv6). It obsoletes RFC 2460.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="86"/>
        <seriesInfo name="RFC" value="8200"/>
        <seriesInfo name="DOI" value="10.17487/RFC8200"/>
      </reference>
      <reference anchor="_3GPP-23.501" target="https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3144">
        <front>
          <title>Technical Specification Group Services and System Aspects; Stage 2, Release 19</title>
          <author>
            <organization>3GPP</organization>
          </author>
          <date year="2024"/>
        </front>
        <seriesInfo name="3GPP" value="23.501"/>
      </reference>
      <reference anchor="RFC8964">
        <front>
          <title>Deterministic Networking (DetNet) Data Plane: MPLS</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"/>
          <author fullname="J. Korhonen" initials="J." surname="Korhonen"/>
          <date month="January" year="2021"/>
          <abstract>
            <t>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>
        </front>
        <seriesInfo name="RFC" value="8964"/>
        <seriesInfo name="DOI" value="10.17487/RFC8964"/>
      </reference>
      <reference anchor="RFC9566">
        <front>
          <title>Deterministic Networking (DetNet) Packet Replication, Elimination, and Ordering Functions (PREOF) via MPLS over UDP/IP</title>
          <author fullname="B. Varga" initials="B." surname="Varga"/>
          <author fullname="J. Farkas" initials="J." surname="Farkas"/>
          <author fullname="A. Malis" initials="A." surname="Malis"/>
          <date month="April" year="2024"/>
          <abstract>
            <t>This document describes how the DetNet IP data plane can support the Packet Replication, Elimination, and Ordering Functions (PREOF) built on the existing MPLS PREOF solution defined for the DetNet MPLS data plane and the mechanisms defined by MPLS-over-UDP technology.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9566"/>
        <seriesInfo name="DOI" value="10.17487/RFC9566"/>
      </reference>
      <reference anchor="P6G" target="https://www.predict-6g.eu">
        <front>
          <title>PRogrammable AI-Enabled DeterminIstiC neTworking for 6G</title>
          <author>
            <organization>PREDICT-6G</organization>
          </author>
          <date year="2024"/>
        </front>
      </reference>
      <reference anchor="eBPF" target="https://ebpf.io">
        <front>
          <title>Dynamically program the kernel for efficient networking, observability, tracing, and security</title>
          <author>
            <organization>eBPF</organization>
          </author>
          <date year="2024"/>
        </front>
      </reference>
      <reference anchor="P6G-D4.2" target="https://zenodo.org/records/13867457">
        <front>
          <title>D4.2 First report on PREDICT-6G system validation</title>
          <author>
            <organization>PREDICT-6G</organization>
          </author>
          <date year="2024"/>
        </front>
      </reference>
      <reference anchor="I-D.draft-ietf-avtext-framemarking">
        <front>
          <title>Video Frame Marking RTP Header Extension</title>
          <author fullname="Mo Zanaty" initials="M." surname="Zanaty">
            <organization>Cisco Systems</organization>
          </author>
          <author fullname="Espen Berger" initials="E." surname="Berger">
            <organization>Cisco Systems</organization>
          </author>
          <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
            <organization>Cisco Systems</organization>
          </author>
          <date day="4" month="March" year="2024"/>
          <abstract>
            <t>   This document describes a Video Frame Marking RTP header extension
   used to convey information about video frames that is critical for
   error recovery and packet forwarding in RTP middleboxes or network
   nodes.  It is most useful when media is encrypted, and essential when
   the middlebox or node has no access to the media decryption keys.  It
   is also useful for codec-agnostic processing of encrypted or
   unencrypted media, while it also supports extensions for codec-
   specific information.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-avtext-framemarking-16"/>
      </reference>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
