<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" ipr="trust200902" docName="draft-irtf-coinrg-use-cases-07" number="9817" category="info" consensus="true" updates="" obsoletes="" submissionType="IRTF" tocInclude="true" sortRefs="true" symRefs="true" tocDepth="2" xml:lang="en" prepTime="2025-08-20T15:28:17" indexInclude="true" scripts="Common,Latin">
  <link href="https://datatracker.ietf.org/doc/draft-irtf-coinrg-use-cases-07" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9817" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="COIN Use Cases">Use Cases for In-Network Computing</title>
    <seriesInfo name="RFC" value="9817" stream="IRTF"/>
    <author initials="I." surname="Kunze" fullname="Ike Kunze">
      <organization abbrev="RWTH Aachen" showOnFrontPage="true">RWTH Aachen University</organization>
      <address>
        <postal>
          <street>Ahornstr. 55</street>
          <city>Aachen</city>
          <code>D-52074</code>
          <country>Germany</country>
        </postal>
        <email>kunze@comsys.rwth-aachen.de</email>
      </address>
    </author>
    <author initials="K." surname="Wehrle" fullname="Klaus Wehrle">
      <organization abbrev="RWTH Aachen" showOnFrontPage="true">RWTH Aachen University</organization>
      <address>
        <postal>
          <street>Ahornstr. 55</street>
          <city>Aachen</city>
          <code>D-52074</code>
          <country>Germany</country>
        </postal>
        <email>wehrle@comsys.rwth-aachen.de</email>
      </address>
    </author>
    <author initials="D." surname="Trossen" fullname="Dirk Trossen">
      <organization abbrev="DaPaDOT Tech" showOnFrontPage="true">DaPaDOT Tech UG (haftungsbeschränkt)</organization>
      <address>
        <postal>
          <street>Palestrinastr. 7A</street>
          <city>Munich</city>
          <code>D-80639</code>
          <country>Germany</country>
        </postal>
        <email>dirk@dapadot-tech.eu</email>
      </address>
    </author>
    <author initials="M-J." surname="Montpetit" fullname="Marie-Jose Montpetit">
      <organization abbrev="SLICES-RI" showOnFrontPage="true">SLICES-RI</organization>
      <address>
        <postal>
          <street>.</street>
          <city>Paris</city>
          <code/>
          <country>France</country>
        </postal>
        <email>marie-jose.montpetit@slices-ri.eu</email>
      </address>
    </author>
    <author initials="X." surname="de Foy" fullname="Xavier de Foy">
      <organization showOnFrontPage="true">InterDigital Communications, LLC</organization>
      <address>
        <postal>
          <street>1000 Sherbrooke West</street>
          <city>Montreal</city>
          <code>H3A 3G4</code>
          <country>Canada</country>
        </postal>
        <email>xavier.defoy@interdigital.com</email>
      </address>
    </author>
    <author initials="D." surname="Griffin" fullname="David Griffin">
      <organization abbrev="UCL" showOnFrontPage="true">University College London</organization>
      <address>
        <postal>
          <street>Gower St</street>
          <city>London</city>
          <code>WC1E 6BT</code>
          <country>United Kingdom</country>
        </postal>
        <email>d.griffin@ucl.ac.uk</email>
      </address>
    </author>
    <author initials="M." surname="Rio" fullname="Miguel Rio">
      <organization abbrev="UCL" showOnFrontPage="true">University College London</organization>
      <address>
        <postal>
          <street>Gower St</street>
          <city>London</city>
          <code>WC1E 6BT</code>
          <country>United Kingdom</country>
        </postal>
        <email>miguel.rio@ucl.ac.uk</email>
      </address>
    </author>
    <date month="08" year="2025"/>
    <workgroup>Computing in the Network (COIN)</workgroup>
    <keyword>COIN, in-network computing, VR, XR, Industry 4.0, Industrial IIoT, Performing Arts, CDN, P4</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">Computing in the Network (COIN) comes with the prospect of deploying
      processing functionality on networking devices such as switches and
      network interface cards.  While such functionality can be beneficial, it
      has to be carefully placed into the context of the general Internet
      communication, and it needs to be clearly identified where and how those
      benefits apply.</t>
      <t indent="0" pn="section-abstract-2">This document presents some use cases to demonstrate how a number of
      salient COIN-related applications can benefit from COIN.  Furthermore,
      to guide research on COIN, it identifies essential research questions
      and outlines desirable capabilities that COIN systems addressing these use
      cases may need to support.  Finally, the document provides a preliminary
      categorization of the described research questions to source future work
      in this domain.  This document is a product of the Computing in the Network
      Research Group (COINRG).  It is not an IETF product and it is not a
      standard.</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 document is not an Internet Standards Track specification; it is
            published for informational purposes.  
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Research Task Force
            (IRTF).  The IRTF publishes the results of Internet-related
            research and development activities.  These results might not be
            suitable for deployment.  This RFC represents the consensus of the Computing in the Network (COIN)
            Research Group of the Internet Research Task Force (IRTF).
            Documents approved for publication by the IRSG are not
            candidates for any level of Internet Standard; see 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/rfc9817" 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) 2025 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.
        </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" keepWithNext="true" 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>
          </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-providing-new-coin-experien">Providing New COIN Experiences</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" keepWithNext="true" 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-mobile-application-offloadi">Mobile Application Offloading</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-extended-reality-and-immers">Extended Reality and Immersive Media</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.3">
                <t indent="0" pn="section-toc.1-1.3.2.3.1"><xref derivedContent="3.3" format="counter" sectionFormat="of" target="section-3.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-personalized-and-interactiv">Personalized and Interactive Performing Arts</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-supporting-new-coin-systems">Supporting New COIN Systems</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-in-network-control-time-sen">In-Network Control / Time-Sensitive Applications</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-large-volume-applications">Large-Volume Applications</xref></t>
              </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-industrial-safety">Industrial Safety</xref></t>
              </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-improving-existing-coin-cap">Improving Existing COIN Capabilities</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-content-delivery-networks">Content Delivery Networks</xref></t>
              </li>
              <li pn="section-toc.1-1.5.2.2">
                <t indent="0" pn="section-toc.1-1.5.2.2.1"><xref derivedContent="5.2" format="counter" sectionFormat="of" target="section-5.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-compute-fabric-as-a-service">Compute-Fabric-as-a-Service (CFaaS)</xref></t>
              </li>
              <li pn="section-toc.1-1.5.2.3">
                <t indent="0" pn="section-toc.1-1.5.2.3.1"><xref derivedContent="5.3" format="counter" sectionFormat="of" target="section-5.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-virtual-networks-programmin">Virtual Networks Programming</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-enabling-new-coin-capabilit">Enabling New COIN Capabilities</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.6.2">
              <li pn="section-toc.1-1.6.2.1">
                <t indent="0" pn="section-toc.1-1.6.2.1.1"><xref derivedContent="6.1" format="counter" sectionFormat="of" target="section-6.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-distributed-ai-training">Distributed AI Training</xref></t>
              </li>
            </ul>
          </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-preliminary-categorization-">Preliminary Categorization of the Research Questions</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-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="9" format="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="10" format="counter" sectionFormat="of" target="section-10"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-conclusion">Conclusion</xref></t>
          </li>
          <li pn="section-toc.1-1.11">
            <t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="11" format="counter" sectionFormat="of" target="section-11"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
          </li>
          <li pn="section-toc.1-1.12">
            <t indent="0" pn="section-toc.1-1.12.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.13">
            <t indent="0" pn="section-toc.1-1.13.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="intro" numbered="true" removeInRFC="false" toc="include" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">The Internet was designed as a best-effort packet network, forwarding
      packets from source to destination with limited guarantees regarding
      their timely and successful reception.  Data manipulation, computation,
      and more complex protocol functionalities are generally provided by the
      end hosts, while network nodes are commonly kept simple and only
      offer a "store and forward" packet facility.  This simplicity of purpose
      of the network has shown to be suitable for a wide variety of
      applications and has facilitated the rapid growth of the Internet.  However,
      introducing middleboxes with specialized functionality for enhancing
      performance has often led to problems due to their inflexibility.</t>
      <t indent="0" pn="section-1-2">However, with the rise of new services, some of which are described
      in this document, there is a growing number of application domains that
      require more than best-effort forwarding, including strict performance
      guarantees or closed-loop integration to manage data flows.  In this
      context, allowing for a tighter integration of computing and networking
      resources for enabling a more flexible distribution of computation tasks
      across the network (e.g., beyond "just" endpoints and without requiring
      specialized middleboxes) may help to achieve the desired guarantees and
      behaviors, increase overall performance, and improve resilience to
      failures.</t>
      <t indent="0" pn="section-1-3">The vision of "in-network computing" and the provisioning of such
      capabilities that capitalize on joint computation and communication
      resource usage throughout the network is part of the move from a
      telephone network analogy of the Internet into a more distributed
      computer board architecture.  We refer to those capabilities as "COIN
      capabilities" in the remainder of the document.</t>
      <t indent="0" pn="section-1-4">We believe that this vision of in-network computing can be best
      outlined along four dimensions of use cases, namely those that:</t>
      <ol type="i" indent="adaptive" spacing="normal" start="1" pn="section-1-5">
	<li pn="section-1-5.1" derivedCounter="i.">provide new user experiences through the utilization of COIN
	capabilities (referred to as "COIN experiences"),</li>
        <li pn="section-1-5.2" derivedCounter="ii.">enable new COIN systems (e.g., through new interactions
	between communication and compute providers),</li>
        <li pn="section-1-5.3" derivedCounter="iii.">improve on already existing COIN capabilities, and</li>
        <li pn="section-1-5.4" derivedCounter="iv.">enable new COIN capabilities.</li>
      </ol>
      <t indent="0" pn="section-1-6">Sections <xref target="newExperiences" format="counter" sectionFormat="of" derivedContent="3"/> through <xref target="newCapabilities" format="counter" sectionFormat="of" derivedContent="6"/> capture those categories of
      use cases and provide the main structure of this document.  The goal is
      to present how computing resources inside the network impact existing
      services and applications or allow for innovation in emerging
      application domains.</t>
      <t indent="0" pn="section-1-7">By delving into some individual examples within each of the above
      categories, we outline opportunities and propose possible research
      questions for consideration by the wider community when pushing forward
      in-network computing architectures.  Furthermore, identifying
      desirable capabilities for an evolving solution space of COIN systems is
      another objective of the use case descriptions. To achieve this, the
      following taxonomy is proposed to describe each of the use cases:</t>
      <dl spacing="normal" newline="false" indent="3" pn="section-1-8">
        <dt pn="section-1-8.1">Description:</dt>
        <dd pn="section-1-8.2">A high-level presentation of the purpose of the
       use case and a short explanation of the use case behavior.</dd>
        <dt pn="section-1-8.3">Characterization:</dt>
        <dd pn="section-1-8.4">An explanation of the services that are
       being utilized and realized as well as the semantics of interactions in
       the use case.</dd>
        <dt pn="section-1-8.5">Existing solutions:</dt>
        <dd pn="section-1-8.6">A description of current methods that may
       realize the use case (if they exist), though not claiming to exhaustively
       review the landscape of solutions.</dd>
        <dt pn="section-1-8.7">Opportunities:</dt>
        <dd pn="section-1-8.8">An outline of how COIN capabilities may
       support or improve on the use case in terms of performance and other
       metrics.</dd>
        <dt pn="section-1-8.9">Research questions:</dt>
        <dd pn="section-1-8.10">Essential questions that are suitable
       for guiding research to achieve the identified opportunities. The
       research questions also capture immediate capabilities for any COIN
       solution addressing the particular use case whose development may
       immediately follow when working toward answers to the research
       questions.</dd>
        <dt pn="section-1-8.11">Additional desirable capabilities:</dt>
        <dd pn="section-1-8.12">A description of
       additional capabilities that might not require research but may be
       desirable for any COIN solution addressing the particular use case; we
       limit these capabilities to those directly affecting COIN, recognizing
       that any use case will realistically require many additional
       capabilities for its realization. We omit this dedicated section if
       relevant capabilities are already sufficiently covered by the
       corresponding research questions.</dd>
      </dl>
      <t indent="0" pn="section-1-9">This document discusses these six aspects along a number of
      individual use cases to demonstrate the diversity of COIN applications.
      It is intended as a basis for further analyses and discussions within
      the wider research community. This document has received review comments 
      at different stages of its development, by experts within and out of COINRG, 
      as detailed in the Acknowledgements section. This document represents the 
      consensus of COINRG.</t>
    </section>
    <section anchor="terms" numbered="true" removeInRFC="false" toc="include" pn="section-2">
      <name slugifiedName="name-terminology">Terminology</name>
      <t indent="0" pn="section-2-1">This document uses the terminology defined below.</t>
      <dl spacing="normal" newline="false" indent="3" pn="section-2-2">
        <dt pn="section-2-2.1">Programmable Network Devices (PNDs):</dt>
        <dd pn="section-2-2.2">network devices, such
	as network interface cards and switches, which are programmable (e.g.,
	using P4 <xref target="P4" format="default" sectionFormat="of" derivedContent="P4"/> or other languages).</dd>
        <dt pn="section-2-2.3">COIN execution environment:</dt>
        <dd pn="section-2-2.4">a class of target
	environments for function execution, for example, an
	execution environment based on the Java Virtual Machine (JVM) that can run functions represented in JVM byte
	code.</dd>
        <dt pn="section-2-2.5">COIN system:</dt>
        <dd pn="section-2-2.6">the PNDs (and end systems) and their
	execution environments, together with the communication resources
	interconnecting them, operated by a single provider or through
	interactions between multiple providers that jointly offer COIN
	capabilities.</dd>
        <dt pn="section-2-2.7">COIN capability:</dt>
        <dd pn="section-2-2.8">a feature enabled through the joint
	processing of computation and communication resources in the
	network.</dd>
        <dt pn="section-2-2.9">COIN program:</dt>
        <dd pn="section-2-2.10">a monolithic functionality that is
	provided according to the specification for said program and which may
	be requested by a user.  A composite service can be built by
	orchestrating a combination of monolithic COIN programs.</dd>
        <dt pn="section-2-2.11">COIN program instance:</dt>
        <dd pn="section-2-2.12">one running instance of a program.</dd>
        <dt pn="section-2-2.13">COIN experience:</dt>
        <dd pn="section-2-2.14">a new user experience brought about
	through the utilization of COIN capabilities.</dd>
      </dl>
    </section>
    <section anchor="newExperiences" numbered="true" removeInRFC="false" toc="include" pn="section-3">
      <name slugifiedName="name-providing-new-coin-experien">Providing New COIN Experiences</name>
      <section anchor="mobileAppOffload" numbered="true" removeInRFC="false" toc="include" pn="section-3.1">
        <name slugifiedName="name-mobile-application-offloadi">Mobile Application Offloading</name>
        <section anchor="description" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.1.1">
          <name slugifiedName="name-description">Description</name>
          <t indent="0" pn="section-3.1.1-1">This scenario can be exemplified in an immersive gaming
          application, where a single user plays a game using a Virtual
          Reality (VR) headset. The headset hosts several COIN programs.
          For instance, the display COIN program renders frames to the
          user, while other programs are realized for VR content processing
          and to incorporate input data received from sensors (e.g., in bodily
          worn devices including the VR headset).</t>
          <t indent="0" pn="section-3.1.1-2">Once this application is partitioned into its constituent COIN
             programs and deployed throughout a COIN system utilizing a COIN
             execution environment, only the display COIN program may be left in
             the headset. Meanwhile, the CPU-intensive real-time VR content
             processing COIN program can be offloaded to a nearby resource rich
             home PC or a Programmable Network Device (PND) in the operator's
             access network for a better execution (i.e., faster and possibly higher
             resolution generation).</t>
        </section>
        <section anchor="characterization" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.1.2">
          <name slugifiedName="name-characterization">Characterization</name>
          <t indent="0" pn="section-3.1.2-1">Partitioning a mobile application into several constituent COIN
          programs allows for denoting the application as a collection of
          COIN programs for a flexible composition and a distributed
          execution.  In our example above, most capabilities of a mobile
          application can be categorized into any of three groups: receiving,
          processing, and displaying.</t>
          <t indent="0" pn="section-3.1.2-2">Any device may realize one or more of the COIN programs of a
          mobile application and expose them to the COIN system and its
          constituent COIN execution environments.  When the COIN program
          sequence is executed on a single device, the outcome is what you
          commonly see with applications running on mobile devices.</t>
          <t indent="0" pn="section-3.1.2-3">However, the execution of a COIN program may be moved to other
          (e.g., more suitable) devices, including PNDs, which have exposed
          the corresponding COIN program as individual COIN program
          instances to the COIN system by means of a service identifier.
          The result is the equivalent to mobile function offloading, in that it
          offers the possible reduction of power consumption (e.g., offloading CPU-
          intensive process functions to a remote server) or an improved
          end-user experience (e.g., moving display functions to a nearby smart TV)
          by selecting more suitably placed COIN program instances in the overall
          COIN system.</t>
          <t indent="0" pn="section-3.1.2-4">We can already see a trend toward supporting such functionality
          that relies on dedicated cloud hardware (e.g., gaming platforms
          rendering content externally). We envision, however, that such
          functionality is becoming more pervasive through specific
          facilities, such as entertainment parks or even hotels, in order to
          deploy needed edge computing capabilities to enable localized gaming
          as well as non-gaming scenarios.</t>
          <t indent="0" pn="section-3.1.2-5"><xref target="figureAppOffload" format="default" sectionFormat="of" derivedContent="Figure 1"/> shows one realization
          of the above scenario, where a "DPR app" is running on a mobile
          device (containing the partitioned COIN programs Display (D), Process (P) and
          Receive (R)) over a programmable switching network, e.g., a Software-Defined Network (SDN) here.  The packaged applications are made available
          through a localized "playstore server".  The mobile application
          installation is realized as a service deployment process, combining
          the local app installation with a distributed deployment (and
          orchestration) of one or more COIN programs on most suitable end
          systems or PNDs (here, a "processing server").</t>
          <figure anchor="figureAppOffload" align="left" suppress-title="false" pn="figure-1">
            <name slugifiedName="name-application-function-offloa">Application Function Offloading Example</name>
            <artwork align="left" pn="section-3.1.2-6.1">
                             +----------+ Processing Server
           Mobile            | +------+ |
        +---------+          | |  P   | |
        |   App   |          | +------+ |
        | +-----+ |          | +------+ |
        | |D|P|R| |          | |  SR  | |
        | +-----+ |          | +------+ |         Internet
        | +-----+ |          +----------+            /
        | |  SR | |              |                  /
        | +-----+ |            +----------+     +------+
        +---------+           /|SDN Switch|_____|Border|
                  +-------+ /  +----------+     |  SR  |
                  | 5GAN  |/        |           +------+
                  +-------+         |
      +---------+                   |
      |+-------+|               +----------+
      ||Display||              /|SDN Switch|
      |+-------+|   +-------+ / +----------+
      |+-------+|  /|WIFI AP|/
      ||   D   || / +-------+     +--+
      |+-------+|/                |SR|
      |+-------+|                /+--+
      ||  SR   ||            +---------+
      |+-------+|            |Playstore|
      +---------+            | Server  |
          TV                 +---------+
</artwork>
          </figure>
          <t indent="0" pn="section-3.1.2-7">Such localized deployment could, for instance, be provided by a
          visiting site, such as a hotel or a theme park.  Once the
          processing COIN program is terminated on the mobile device, the
          "service routing (SR)" elements in the network route (service)
          requests instead to the (previously deployed) processing COIN
          program running on the processing server over an existing SDN
          network.  Here, capabilities and other constraints for selecting the
          appropriate COIN program, in case of having deployed more than
          one, may be provided both in the advertisement of the COIN program
          and the service request itself.</t>
          <t indent="0" pn="section-3.1.2-8">As an extension to the above scenarios, we can also envision that
          content from one processing COIN program may be distributed to
          more than one display COIN program (e.g., for multi- and many-viewing
          scenarios).  Here, an offloaded processing program may collate
          input from several users in the (virtual) environment to generate a
          possibly three-dimensional render that is then distributed via a
          service-level multicast capability towards more than one display
          COIN program.</t>
        </section>
        <section anchor="existing-solutions" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.1.3">
          <name slugifiedName="name-existing-solutions">Existing Solutions</name>
          <t indent="0" pn="section-3.1.3-1">The ETSI Multi-access Edge Computing (MEC) <xref target="ETSI" format="default" sectionFormat="of" derivedContent="ETSI"/> suite
          of technologies provides solutions for mobile function offloading by
          allowing mobile applications to select resources in edge devices to
          execute functions instead of the mobile device directly.  For this,
          ETSI MEC utilizes a set of interfaces for the selection of suitable
          edge resources, connecting to so-called MEC application servers,
          while also allowing for sending data for function execution to the
          application server.</t>
          <t indent="0" pn="section-3.1.3-2">However, the technologies do not utilize microservices <xref target="Microservices" format="default" sectionFormat="of" derivedContent="Microservices"/>; they mainly rely on virtualization
          approaches such as containers or virtual machines, thus requiring a
          heavier processing and memory footprint in a COIN execution
          environment and the executing intermediaries.  Also, the ETSI work
          does not allow for the dynamic selection and redirection of COIN
          program calls to varying edge resources; it does allow for them to
          a single MEC application server.</t>
          <t indent="0" pn="section-3.1.3-3">Also, the selection of the edge resource (the app server) is
          relatively static, relying on DNS-based endpoint selection, which
          does not cater to the requirements of the example provided above,
          where the latency for redirecting to another device lies within a few
          milliseconds for aligning with the frame rate of the display
          microservice.</t>
          <t indent="0" pn="section-3.1.3-4">Lastly, MEC application servers are usually considered resources
          provided by the network operator through its MEC infrastructure,
          while our use case here also foresees the placement and execution of
          microservices in end-user devices.</t>
          <t indent="0" pn="section-3.1.3-5">There also exists a plethora of mobile offloading platforms
          provided through proprietary platforms, all of which follow a
          similar approach as ETSI MEC in that a selected edge application
          server is being utilized to send functional descriptions and data
          for execution.</t>
          <t indent="0" pn="section-3.1.3-6"><xref target="I-D.sarathchandra-coin-appcentres" format="default" sectionFormat="of" derivedContent="APPCENTRES"/> outlines a
          number of enabling technologies for the use case, some of which have
          been realized in an Android-based realization of the microservices
          as a single application, which is capable of dynamically redirecting
          traffic to other microservice instances in the network.  This
          capability, together with the underlying path-based forwarding
          capability (using SDN), was demonstrated publicly (e.g., at the
          Mobile World Congress 2018 and 2019).</t>
        </section>
        <section anchor="opportunities" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.1.4">
          <name slugifiedName="name-opportunities">Opportunities</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.1.4-1">
            <li pn="section-3.1.4-1.1">
              <t indent="0" pn="section-3.1.4-1.1.1">The packaging of COIN programs into existing mobile
              application packaging may enable the migration from current
              (mobile) device-centric execution of those mobile applications
              toward a possible distributed execution of the constituent
              COIN programs that are part of the overall mobile
              application.</t>
            </li>
            <li pn="section-3.1.4-1.2">
              <t indent="0" pn="section-3.1.4-1.2.1">The orchestration for deploying COIN program instances in
              specific end systems and PNDs alike may open up the possibility
              for localized infrastructure owners, such as hotels or venue
              owners, to offer their compute capabilities to their visitors
              for improved or even site-specific experiences.</t>
            </li>
            <li pn="section-3.1.4-1.3">
              <t indent="0" pn="section-3.1.4-1.3.1">The execution of (current mobile) app-level COIN programs
              may speed up the execution of said COIN program by relocating
              the execution to more suitable devices, including PNDs that may
              reside better located in relation to other COIN programs and
              thus improve performance, such as latency.</t>
            </li>
            <li pn="section-3.1.4-1.4">
              <t indent="0" pn="section-3.1.4-1.4.1">The support for service-level routing of requests (such as service
              routing in <xref target="I-D.sarathchandra-coin-appcentres" format="default" sectionFormat="of" derivedContent="APPCENTRES"/>)
              may support higher flexibility when switching from one COIN
              program instance to another (e.g., due to changing constraints
              for selecting the new COIN program instance).  Here, PNDs may
              support service routing solutions by acting as routing overlay
              nodes to implement the necessary additional lookup functionality
              and also possibly support the handling of affinity relations
              (i.e., the forwarding of one packet to the destination of a
              previous one due to a higher level service relation as
              discussed and described in <xref target="SarNet2021" format="default" sectionFormat="of" derivedContent="SarNet2021"/>).</t>
            </li>
            <li pn="section-3.1.4-1.5">
              <t indent="0" pn="section-3.1.4-1.5.1">The ability to identify service-level COIN elements will
              allow for routing service requests to those COIN elements,
              including PNDs, therefore possibly allowing for a new COIN
              functionality to be included in the mobile application.</t>
            </li>
            <li pn="section-3.1.4-1.6">
              <t indent="0" pn="section-3.1.4-1.6.1">The support for constraint-based selection of a specific
              COIN program instance over others (e.g., constraint-based routing in
              <xref target="I-D.sarathchandra-coin-appcentres" format="default" sectionFormat="of" derivedContent="APPCENTRES"/>, showcased
              for PNDs in <xref target="SarNet2021" format="default" sectionFormat="of" derivedContent="SarNet2021"/>) may allow for a more
              flexible and app-specific selection of COIN program instances,
              thereby allowing for better meeting the app-specific and end-user requirements.</t>
            </li>
          </ul>
        </section>
        <section anchor="mobileOffloadRQ" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.1.5">
          <name slugifiedName="name-research-questions">Research Questions</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.1.5-1">
            <li pn="section-3.1.5-1.1">RQ 3.1.1: How to combine service-level orchestration
            frameworks, such as TOSCA orchestration templates <xref target="TOSCA" format="default" sectionFormat="of" derivedContent="TOSCA"/>, with app-level (e.g., mobile application)
            packaging methods, ultimately providing the means for packaging
            microservices for deployments in distributed networked computing
            environments?</li>
            <li pn="section-3.1.5-1.2">RQ 3.1.2: How to reduce latencies involved in COIN program
            interactions where COIN program instance locations may change
            quickly? Can service-level requests be routed directly through
            in-band signaling methods instead of relying on out-of-band
            discovery, such as through the DNS?</li>
            <li pn="section-3.1.5-1.3">RQ 3.1.3: How to signal constraints used for routing requests
            towards COIN program instances in a scalable manner (i.e., for
            dynamically choosing the best possible service sequence of one or
            more COIN programs for a given application experience through
            chaining COIN program executions)?</li>
            <li pn="section-3.1.5-1.4">RQ 3.1.4: How to identify COIN programs and program
            instances so as to allow routing (service) requests to specific
            instances of a given service?</li>
            <li pn="section-3.1.5-1.5">RQ 3.1.5: How to identify a specific choice of a COIN program
            instance over others, thus allowing pinning the execution of a
            service of a specific COIN program to a specific resource (i.e., a
            COIN program instance in the distributed environment)?</li>
            <li pn="section-3.1.5-1.6">RQ 3.1.6: How to provide affinity of service requests towards
            COIN program instances (i.e., longer-term transactions with
            ephemeral state established at a specific COIN program
            instance)?</li>
            <li pn="section-3.1.5-1.7">RQ 3.1.7: How to provide constraint-based routing decisions
            that can be realized at packet forwarding speed (e.g., using
            techniques explored in <xref target="SarNet2021" format="default" sectionFormat="of" derivedContent="SarNet2021"/> at the
            forwarding plane or using approaches like <xref target="Multi2020" format="default" sectionFormat="of" derivedContent="Multi2020"/> for extended routing protocols)?</li>
            <li pn="section-3.1.5-1.8">RQ 3.1.8: What COIN capabilities may support the execution of
            COIN programs and their instances?</li>
            <li pn="section-3.1.5-1.9">RQ 3.1.9: How to ensure real-time synchronization and
            consistency of distributed application states among COIN program
            instances, in particular, when frequently changing the choice for a
            particular COIN program in terms of executing a service
            instance?</li>
          </ul>
        </section>
      </section>
      <section anchor="XR" numbered="true" removeInRFC="false" toc="include" pn="section-3.2">
        <name slugifiedName="name-extended-reality-and-immers">Extended Reality and Immersive Media</name>
        <section anchor="description-1" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.2.1">
          <name slugifiedName="name-description-2">Description</name>
          <t indent="0" pn="section-3.2.1-1">Extended Reality (XR) encompasses VR, Augmented Reality (AR) and
          Mixed Reality (MR).  It provides the basis for the metaverse and is
          the driver of a number of advances in interactive technologies.
          While initially associated with gaming and immersive entertainment,
          applications now include remote diagnosis, maintenance,
          telemedicine, manufacturing and assembly, intelligent agriculture,
          smart cities, and immersive classrooms.  XR is one example of the
          multisource-multidestination problem that combines video and haptics
          in interactive multiparty interactions under strict delay
          requirements. As such, XR can benefit from a functional distribution that
          includes fog computing for local information processing, the edge
          for aggregation, and the cloud for image processing.</t>
          <t indent="0" pn="section-3.2.1-2">XR stands to benefit significantly from computing capabilities in
          the network.  For example, XR applications can offload intensive
          processing tasks to edge servers, considerably reducing latency when
          compared to cloud-based applications and enhancing the overall user
          experience.  More importantly, COIN can enable collaborative XR
          experiences, where multiple users interact in the same virtual space
          in real time, regardless of their physical locations, by allowing
          resource discovery and re-routing of XR streams.  While not a
          feature of most XR implementations, this capability opens up new
          possibilities for remote collaboration, training, and entertainment.
          Furthermore, COIN can support dynamic content delivery, allowing XR
          applications to seamlessly adapt to changing environments and user
          interactions.  Hence, the integration of computing capabilities into
          the network architecture enhances the scalability, flexibility, and
          performance of XR applications by supplying telemetry and advanced
          stream management, paving the way for more immersive and interactive
          experiences.</t>
          <t indent="0" pn="section-3.2.1-3">Indeed, XR applications require real-time interactivity for
          immersive and increasingly mobile applications with tactile and
          time-sensitive data.  Because high bandwidth is needed for high
          resolution images and local rendering for 3D images and holograms,
          strictly relying on cloud-based architectures, even with headset
          processing, limits some of its potential benefits in the
          collaborative space.  As a consequence, innovation is needed to
          unlock the full potential of XR.</t>
        </section>
        <section anchor="characterization-1" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.2.2">
          <name slugifiedName="name-characterization-2">Characterization</name>
          <t indent="0" pn="section-3.2.2-1">As mentioned above, XR experiences, especially those involving
	  collaboration, are difficult to deliver with a client-server
	  cloud-based solution. This is because they require a combination of
	  multistream aggregation, low delays and delay variations, means to
	  recover from losses, and optimized caching and rendering as close as
	  possible to the user at the network edge.  Hence, implementing such
	  XR solutions necessitates substantial computational power and
	  minimal latency, which, for now, has spurred the development of
	  better headsets, rather than spurring networked or distributed
	  solutions, as factors like distance from cloud servers and limited
	  bandwidth can still significantly lower application responsiveness.
	  Furthermore, when XR deals with sensitive information, XR
	  applications must also provide a secure environment and ensure user
	  privacy, which represent additional burdens for delay-sensitive
	  applications.  Additionally, the sheer amount of data needed for and
	  generated by XR applications, such as video holography, put them
	  squarely in the realm of data-driven applications that can use
	  recent trend analysis and mechanisms, as well as machine learning,
	  in order to find the optimal caching and processing solution and
	  ideally reduce the size of the data that needs transiting through
	  the network.  Other mechanisms, such as data filtering and
	  reduction, and functional distribution and partitioning, are also
	  needed to accommodate the low delay needs for the same
	  applications.</t>
          <t indent="0" pn="section-3.2.2-2">With functional decomposition as the goal of a better XR experience,
          the elements involved in a COIN XR implementation include:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.2.2-3">
            <li pn="section-3.2.2-3.1">
              <t indent="0" pn="section-3.2.2-3.1.1">the XR application residing in the headset,</t>
            </li>
            <li pn="section-3.2.2-3.2">
              <t indent="0" pn="section-3.2.2-3.2.1">edge federation services that allow local devices to
              communicate with one another directly,</t>
            </li>
            <li pn="section-3.2.2-3.3">
              <t indent="0" pn="section-3.2.2-3.3.1">edge application servers that enable local processing but
              also intelligent stream aggregation to reduce bandwidth
              requirements,</t>
            </li>
            <li pn="section-3.2.2-3.4">
              <t indent="0" pn="section-3.2.2-3.4.1">edge data networks that allow precaching of information based
              on locality and usage,</t>
            </li>
            <li pn="section-3.2.2-3.5">
              <t indent="0" pn="section-3.2.2-3.5.1">cloud-based services for image processing and application
              training, and</t>
            </li>
            <li pn="section-3.2.2-3.6">
              <t indent="0" pn="section-3.2.2-3.6.1">intelligent 5G/6G core networks for managing advanced access
              services and providing performance data for XR stream
              management.</t>
            </li>
          </ul>
          <t indent="0" pn="section-3.2.2-4">These characteristics of XR paired with the capabilities of COIN
          make it likely that COIN can help to realize XR over networks for
          collaborative applications.  In particular, COIN functions can
          enable the distribution of the service components across different
          nodes in the network.  For example, data filtering, image rendering,
          and video processing leverage different hardware capabilities with
          combinations of CPUs and Graphics Processing Units (GPUs) at the
          network edge and in the fog, where the content is consumed. These
          represent possible remedies for the high bandwidth demands of XR.
          Machine learning across the network nodes can better manage the data
          flows by distributing them over more adequate paths.  In order to
          provide adequate quality of experience, multivariate and
          heterogeneous resource allocation and goal optimization problems
          need to be solved, likely requiring advanced analysis and
          artificial intelligence.  For the purpose of this document, it is
          important to note that the use of COIN for XR does not imply a
          specific protocol but targets an architecture enabling the
          deployment of the services.  In this context, similar considerations
          as for <xref target="mobileAppOffload" format="default" sectionFormat="of" derivedContent="Section 3.1"/> apply.</t>
        </section>
        <section anchor="existing-solutions-1" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.2.3">
          <name slugifiedName="name-existing-solutions-2">Existing Solutions</name>
          <t indent="0" pn="section-3.2.3-1">The XR field has profited from extensive research in the past
	  years in gaming, machine learning, network telemetry, high
	  resolution imaging, smart cities, and the Internet of Things (IoT).
	  Information-Centric Networking (ICN) (and related) approaches that
	  combine publish-subscribe and distributed storage are also very
	  suited for the multisource-multidestination applications of XR.  New
	  AR and VR headsets and glasses have continued to evolve towards
	  autonomy with local computation capabilities, increasingly
	  performing much of the processing that is needed to render and
	  augment the local images.  Mechanisms aimed at enhancing the
	  computational and storage capacities of mobile devices could also
	  improve XR capabilities, as they include discovering available
	  servers within the environment and using them opportunistically to
	  enhance the performance of interactive applications and distributed
	  file systems.</t>
          <t indent="0" pn="section-3.2.3-2">While there is still no specific COIN research in AR and VR, the
          need for network support is important to offload some of the
          computations related to movement, multiuser interactions, and
          networked applications, notably in gaming but also in health <xref target="NetworkedVR" format="default" sectionFormat="of" derivedContent="NetworkedVR"/>.  This new approach to networked AR and VR is
          exemplified in <xref target="eCAR" format="default" sectionFormat="of" derivedContent="eCAR"/> by using synchronized messaging
          at the edge to share the information that all users need to
          interact.  In <xref target="CompNet2021" format="default" sectionFormat="of" derivedContent="CompNet2021"/> and <xref target="WirelessNet2024" format="default" sectionFormat="of" derivedContent="WirelessNet2024"/>, the offloading uses Artificial
          Intelligence (AI) to assign the 5G resources necessary for the
          real-time interactions, and one could think that implementing this
          scheme on a PND is essentially a natural next step.  Hence, as AR,
          VR, and XR are increasingly becoming more interactive, the
          efficiency needed to implement novel applications will require some
          form or another of edge-core implementation and COIN support.</t>
          <t indent="0" pn="section-3.2.3-3">In summary, some XR solutions exist, and headsets continue to
	  evolve to what is now claimed to be spatial computing.
	  Additionally, with recent work on the metaverse, the number of
	  publications related to XR has skyrocketed.  However, in terms of
	  networking, which is the focus of this document, current deployments
	  do not take advantage of network capabilities.  The information is
	  rendered and displayed based on the local processing but does not
	  readily discover the other elements in the vicinity or in the
	  network that could improve its performance either locally, at the
	  edge, or in the cloud.  Yet, there are still very few interactive and
	  immersive media applications over networks that allow for the
	  federation of systems capabilities.</t>
        </section>
        <section anchor="opportunities-1" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.2.4">
          <name slugifiedName="name-opportunities-2">Opportunities</name>
          <t indent="0" pn="section-3.2.4-1">While delay is inherently related to information transmission, if
          we continue the analogy of the computer board to highlight some of
          the COIN capabilities in terms of computation and storage but also
          allocation of resources, there are some opportunities that XR could
          take advantage of:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.2.4-2">
            <li pn="section-3.2.4-2.1">
              <t indent="0" pn="section-3.2.4-2.1.1">Round trip time: 20 ms is usually cited as an upper limit for
              XR applications. Storage and preprocessing of scenes in local
              elements (including in the mobile network) could extend the
              reach of XR applications at least over the extended edge.</t>
            </li>
            <li pn="section-3.2.4-2.2">
              <t indent="0" pn="section-3.2.4-2.2.1">Video transmission: The use of better transcoding, advanced
              context-based compression algorithms, prefetching and
              precaching, as well as movement prediction all help to reduce
              bandwidth consumption. While this is now limited to local
              processing, it is not outside the realm of COIN to push some of
              these functionalities to the network, especially as related to
              caching and fetching but also context-based flow direction and
              aggregation.</t>
            </li>
            <li pn="section-3.2.4-2.3">
              <t indent="0" pn="section-3.2.4-2.3.1">Monitoring: Since bandwidth and data are fundamental to XR
              deployment, COIN functionality could help to better monitor and
              distribute the XR services over collaborating network elements
              to optimize end-to-end performance.</t>
            </li>
            <li pn="section-3.2.4-2.4">
              <t indent="0" pn="section-3.2.4-2.4.1">Functional decomposition: Advanced functional decomposition,
              localization, and discovery of computing and storage resources
              in the network can help to optimize user experience in
              general.</t>
            </li>
            <li pn="section-3.2.4-2.5">
              <t indent="0" pn="section-3.2.4-2.5.1">Intelligent network management and configuration: The move to
              AI in network management to learn about
              flows and adapt resources based on both data plane and control
              plane programmability can help the overall deployment of XR
              services.</t>
            </li>
          </ul>
        </section>
        <section anchor="research-questions" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.2.5">
          <name slugifiedName="name-research-questions-2">Research Questions</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.2.5-1">
            <li pn="section-3.2.5-1.1">RQ 3.2.1: Can current PNDs provide the speed required for
            executing complex filtering operations, including metadata
            analysis for complex and dynamic scene rendering?</li>
            <li pn="section-3.2.5-1.2">RQ 3.2.2: Where should PNDs equipped with these operations be
            located for optimal performance gains?</li>
            <li pn="section-3.2.5-1.3">RQ 3.2.3: Can the use of distributed AI algorithms across
	    both data center and edge computers be leveraged for creating
	    optimal function allocation? Can the creation of semi-permanent
	    datasets and analytics for usage trending and flow management
	    result in better localization of XR functions?</li>
            <li pn="section-3.2.5-1.4">RQ 3.2.4: Can COIN improve the dynamic distribution of
            control, forwarding, and storage resources and related usage
            models in XR, such as to integrate local and fog caching with
            cloud-based pre- rendering? Could this jointly optimize COIN and
            higher layer protocols to reduce latency and, more generally,
            manage the quality of XR sessions (e.g., through reduced
            in-network congestion and improved flow delivery by determining
            how to prioritize XR data)?</li>
            <li pn="section-3.2.5-1.5">RQ 3.2.5: Can COIN provide the necessary infrastructure for
            the use of interactive XR everywhere? Particularly, how can a COIN
            system enable the joint collaboration across all segments of the
            network (fog, edge, core, and cloud) to support functional
            decompositions, including using edge resources without the need
            for a (remote) cloud connection?</li>
            <li pn="section-3.2.5-1.6">RQ 3.2.6: How can COIN systems provide multistream efficient
            transmission and stream combining at the edge, including the
            ability to dynamically include extra streams, such as audio and
            extra video tracks?</li>
          </ul>
        </section>
        <section anchor="additional-desirable-capabilities" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.2.6">
          <name slugifiedName="name-additional-desirable-capabi">Additional Desirable Capabilities</name>
          <t indent="0" pn="section-3.2.6-1">In addition to the capabilities driven by the research questions
          above, there are a number of other features that solutions in this
          space might benefit from.  In particular, the provided XR experience
          should be optimized both in the amount of transmitted data, while
          equally optimizing loss protection.  Furthermore, the means for trend
          analysis and telemetry to measure performance may foster uptake of
          the XR services, while the interaction of the XR system with indoor
          and outdoor positioning systems may improve on service experience
          and user perception.</t>
        </section>
      </section>
      <section anchor="PerformingArts" numbered="true" removeInRFC="false" toc="include" pn="section-3.3">
        <name slugifiedName="name-personalized-and-interactiv">Personalized and Interactive Performing Arts</name>
        <section anchor="description-2" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.3.1">
          <name slugifiedName="name-description-3">Description</name>
          <t indent="0" pn="section-3.3.1-1">This use case is a deeper dive into a specific scenario of the
          immersive and extended reality class of use cases discussed in
          <xref target="XR" format="default" sectionFormat="of" derivedContent="Section 3.2"/>.  It focuses on live productions of the
          performing arts where the performers and audience members are
          geographically distributed.  The performance is conveyed through
          multiple networked streams, which are tailored to the requirements
          of the remote performers, the director, the sound and lighting
          technicians, and the individual audience members. Performers need to
          observe, interact, and synchronize with other performers in remote
          locations, and the performers receive live feedback from the
          audience, which may also be conveyed to other audience members.</t>
          <t indent="0" pn="section-3.3.1-2">There are two main aspects:</t>
          <ol type="i" indent="adaptive" spacing="normal" start="1" pn="section-3.3.1-3">
	    <li pn="section-3.3.1-3.1" derivedCounter="i.">to emulate as closely as possible the experience of live
	    performances where the performers, audience, director, and
	    technicians are co-located in the same physical space, such as a
	    theater; and</li>
            <li pn="section-3.3.1-3.2" derivedCounter="ii.">to enhance conventional physical performances with features
	    such as personalization of the experience according to the
	    preferences or needs of the performers, directors, and audience
	    members.</li>
          </ol>
          <t indent="0" pn="section-3.3.1-4">Examples of personalization include:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.3.1-5">
            <li pn="section-3.3.1-5.1">
              <t indent="0" pn="section-3.3.1-5.1.1">Viewpoint selection, such as choosing a specific seat in the
              theater or for more advanced positioning of the audience
              member's viewpoint outside of the conventional seating (i.e.,
              amongst, above, or behind the performers, but within some limits
              that may be imposed by the performers or the director for
              artistic reasons);</t>
            </li>
            <li pn="section-3.3.1-5.2">
              <t indent="0" pn="section-3.3.1-5.2.1">Augmentation of the performance with subtitles, audio
              description, actor tagging, language translation, advertisements
              and product placement, and other enhancements and filters to
              make the performance accessible to audience members who are disabled
              (e.g., the removal of flashing images for audience members who have epilepsy or alternative color
              schemes for those who have color blindness).</t>
            </li>
          </ul>
        </section>
        <section anchor="characterization-2" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.3.2">
          <name slugifiedName="name-characterization-3">Characterization</name>
          <t indent="0" pn="section-3.3.2-1">There are several chained functional entities that are
          candidates for being deployed as COIN programs:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.3.2-2">
            <li pn="section-3.3.2-2.1">
              <t indent="0" pn="section-3.3.2-2.1.1">Performer aggregation and editing functions</t>
            </li>
            <li pn="section-3.3.2-2.2">
              <t indent="0" pn="section-3.3.2-2.2.1">Distribution and encoding functions</t>
            </li>
            <li pn="section-3.3.2-2.3">
              <t indent="0" pn="section-3.3.2-2.3.1">Personalization functions
              </t>
              <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.3.2-2.3.2">
                <li pn="section-3.3.2-2.3.2.1">
                  <t indent="0" pn="section-3.3.2-2.3.2.1.1">to select which of the existing streams should be
                  forwarded to the audience member, remote performer, or
                  member of the production team</t>
                </li>
                <li pn="section-3.3.2-2.3.2.2">
                  <t indent="0" pn="section-3.3.2-2.3.2.2.1">to augment streams with additional metadata such as subtitles</t>
                </li>
                <li pn="section-3.3.2-2.3.2.3">
                  <t indent="0" pn="section-3.3.2-2.3.2.3.1">to create new streams after processing existing ones
                  (e.g., to interpolate between camera angles to create a new
                  viewpoint or to render point clouds from an audience
                  member's chosen perspective)</t>
                </li>
                <li pn="section-3.3.2-2.3.2.4">
                  <t indent="0" pn="section-3.3.2-2.3.2.4.1">to undertake remote rendering according to viewer
                  position (e.g., the creation of VR headset display streams
                  according to audience head position) when this processing
                  has been offloaded from the viewer's end system to the COIN
                  function due to limited processing power in the end system
                  or due to limited network bandwidth to receive all of the
                  individual streams to be processed.</t>
                </li>
              </ul>
            </li>
            <li pn="section-3.3.2-2.4">
              <t indent="0" pn="section-3.3.2-2.4.1">Audience feedback sensor processing functions</t>
            </li>
            <li pn="section-3.3.2-2.5">
              <t indent="0" pn="section-3.3.2-2.5.1">Audience feedback aggregation functions</t>
            </li>
          </ul>
          <t indent="0" pn="section-3.3.2-3">These are candidates for deployment as COIN programs in PNDs
          rather than being located in end systems (at the performers' site,
          the audience members' premises, or in a central cloud location) for
          several reasons:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.3.2-4">
            <li pn="section-3.3.2-4.1">
              <t indent="0" pn="section-3.3.2-4.1.1">Personalization of the performance according to viewer
              preferences and requirements makes it infeasible to be done in a
              centralized manner at the performer premises: the computational
              resources and network bandwidth would need to scale with the
              number of personalized streams.</t>
            </li>
            <li pn="section-3.3.2-4.2">
              <t indent="0" pn="section-3.3.2-4.2.1">Rendering of VR headset content to follow viewer head
              movements has an upper bound on lag to maintain viewer Quality of Experience (QoE),
              which requires the processing to be undertaken sufficiently
              close to the viewer to avoid large network latencies.</t>
            </li>
            <li pn="section-3.3.2-4.3">
              <t indent="0" pn="section-3.3.2-4.3.1">Viewer devices may not have the processing power to perform
              the personalization tasks, or the viewers' network may not have
              the capacity to receive all of the constituent streams to
              undertake the personalization functions.</t>
            </li>
            <li pn="section-3.3.2-4.4">
              <t indent="0" pn="section-3.3.2-4.4.1">There are strict latency requirements for live and
              interactive aspects that require the deviation from the direct
              network path between performers and audience members to be
              minimized, which reduces the opportunity to route streams via
              large-scale processing capabilities at centralized
              data centers.</t>
            </li>
          </ul>
        </section>
        <section anchor="existing-solutions-2" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.3.3">
          <name slugifiedName="name-existing-solutions-3">Existing Solutions</name>
          <t indent="0" pn="section-3.3.3-1">Note: Existing solutions for some aspects of this use case are
          covered in <xref target="mobileAppOffload" format="default" sectionFormat="of" derivedContent="Section 3.1"/>, <xref target="XR" format="default" sectionFormat="of" derivedContent="Section 3.2"/>,
          and <xref target="CDNs" format="default" sectionFormat="of" derivedContent="Section 5.1"/>.</t>
        </section>
        <section anchor="opportunities-2" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.3.4">
          <name slugifiedName="name-opportunities-3">Opportunities</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.3.4-1">
            <li pn="section-3.3.4-1.1">
              <t indent="0" pn="section-3.3.4-1.1.1">Executing media processing and personalization functions
              on-path as COIN programs in PNDs can avoid detour/stretch to
              central servers, thus reducing latency and bandwidth
              consumption.  For example, the overall delay for performance
              capture, aggregation, distribution, personalization,
              consumption, capture of audience response, feedback processing,
              aggregation, and rendering should be achieved within an upper
              bound of latency (the tolerable amount is to be defined, but in
              the order of 100s of ms to mimic performers perceiving audience
              feedback, such as laughter or other emotional responses in a
              theater setting).</t>
            </li>
            <li pn="section-3.3.4-1.2">
              <t indent="0" pn="section-3.3.4-1.2.1">Processing of media streams allows COIN programs, PNDs, and
              the wider COIN system/environment to be contextually aware of
              flows and their requirements, which can be used for determining
              network treatment of the flows (e.g., path selection,
              prioritization, multiflow coordination, synchronization, and
              resilience).</t>
            </li>
          </ul>
        </section>
        <section anchor="research-questions-1" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.3.5">
          <name slugifiedName="name-research-questions-3">Research Questions</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.3.5-1">
            <li pn="section-3.3.5-1.1">
              <t indent="0" pn="section-3.3.5-1.1.1">RQ 3.3.1: In which PNDs should COIN programs for
              aggregation, encoding, and personalization functions be located?
              Close to the performers or close to the viewers?</t>
            </li>
            <li pn="section-3.3.5-1.2">
              <t indent="0" pn="section-3.3.5-1.2.1">RQ 3.3.2: How far from the direct network path from performer
              to viewer should COIN programs be located, considering the
              latency implications of path-stretch and the availability of
              processing capacity at PNDs? How should tolerances be defined by
              users?</t>
            </li>
            <li pn="section-3.3.5-1.3">
              <t indent="0" pn="section-3.3.5-1.3.1">RQ 3.3.3: Should users decide which PNDs should be used for
              executing COIN programs for their flows, or should they express
              requirements and constraints that will direct decisions by the
              orchestrator/manager of a COIN system? In case of the latter,
              how can users specify requirements on network and processing
              metrics (such as latency and throughput bounds)?</t>
            </li>
            <li pn="section-3.3.5-1.4">
              <t indent="0" pn="section-3.3.5-1.4.1">RQ 3.3.4: How to achieve synchronization across multiple
	      streams to allow for merging, audio-video interpolation, and
	      other cross-stream processing functions that require time
	      synchronization for the integrity of the output?  How can this
	      be achieved considering that synchronization may be required
	      between flows that are:</t>
              <ol type="i" indent="adaptive" spacing="normal" start="1" pn="section-3.3.5-1.4.2">
		<li pn="section-3.3.5-1.4.2.1" derivedCounter="i.">
                  <t indent="0" pn="section-3.3.5-1.4.2.1.1">on the same data pathway through a PND/router,</t>
                </li>
                <li pn="section-3.3.5-1.4.2.2" derivedCounter="ii.">
                  <t indent="0" pn="section-3.3.5-1.4.2.2.1">arriving/leaving through different ingress/egress
		  interfaces of the same PND/router, or</t>
                </li>
                <li pn="section-3.3.5-1.4.2.3" derivedCounter="iii.">
                  <t indent="0" pn="section-3.3.5-1.4.2.3.1">routed through disjoint paths through different PNDs/routers?</t>
                </li>
              </ol>
              <t indent="0" pn="section-3.3.5-1.4.3">This RQ raises issues associated with synchronization
		across multiple media streams and substreams <xref target="RFC7272" format="default" sectionFormat="of" derivedContent="RFC7272"/> as well as time synchronization between
		PNDs/routers on multiple paths <xref target="RFC8039" format="default" sectionFormat="of" derivedContent="RFC8039"/>.</t>
            </li>
            <li pn="section-3.3.5-1.5">
              <t indent="0" pn="section-3.3.5-1.5.1">RQ 3.3.5: Where will COIN programs be executed? In the
              data plane of PNDs, in other on-router computational
              capabilities within PNDs, or in adjacent computational
              nodes?</t>
            </li>
            <li pn="section-3.3.5-1.6">
              <t indent="0" pn="section-3.3.5-1.6.1">RQ 3.3.6: Are computationally intensive tasks, such as video
              stitching or media recognition and annotation (cf. <xref target="XR" format="default" sectionFormat="of" derivedContent="Section 3.2"/>), considered as suitable candidate COIN
              programs or should they be implemented in end systems?</t>
            </li>
            <li pn="section-3.3.5-1.7">
              <t indent="0" pn="section-3.3.5-1.7.1">RQ 3.3.7: If the execution of COIN programs is offloaded to
              computational nodes outside of PNDs (e.g., for processing by
              GPUs), should this still be considered as COIN? Where is the
              boundary between COIN capabilities and explicit routing of flows
              to end systems?</t>
            </li>
          </ul>
        </section>
        <section anchor="additional-desirable-capabilities-1" numbered="true" removeInRFC="false" toc="exclude" pn="section-3.3.6">
          <name slugifiedName="name-additional-desirable-capabil">Additional Desirable Capabilities</name>
          <t indent="0" pn="section-3.3.6-1">In addition to the capabilities driven by the research questions
          above, there are a number of other features that solutions in this
          space might benefit from.  In particular, if users are indeed
          empowered to specify requirements on network and processing metrics,
          one important capability of COIN systems will be to respect these
          user-specified requirements and constraints when routing flows and
          selecting PNDs for executing COIN programs.  Similarly, solutions
          should be able to synchronize flow treatment and processing across
          multiple related flows, which may be on disjoint paths, to provide
          similar performance to different entities.</t>
        </section>
      </section>
    </section>
    <section anchor="newEnvironments" numbered="true" removeInRFC="false" toc="include" pn="section-4">
      <name slugifiedName="name-supporting-new-coin-systems">Supporting New COIN Systems</name>
      <section anchor="control" numbered="true" removeInRFC="false" toc="include" pn="section-4.1">
        <name slugifiedName="name-in-network-control-time-sen">In-Network Control / Time-Sensitive Applications</name>
        <section anchor="description-3" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.1.1">
          <name slugifiedName="name-description-4">Description</name>
          <t indent="0" pn="section-4.1.1-1">The control of physical processes and components of industrial
          production lines is essential for the growing automation of
          production and ideally allows for a consistent quality level.
          Commonly, the control has been exercised by control software
          running on Programmable Logic Controllers (PLCs) located directly
          next to the controlled process or component.  This approach is
          best suited for settings with a simple model that is focused on a
          single or a few controlled components.</t>
          <t indent="0" pn="section-4.1.1-2">Modern production lines and shop floors are characterized by an
          increasing number of involved devices and sensors, a growing level
          of dependency between the different components, and more complex
          control models.  A centralized control is desirable to manage the
          large amount of available information, which often has to be
          preprocessed or aggregated with other information before it can be
          used.  As a result, computations are increasingly spatially
          decoupled and moved away from the controlled objects, thus inducing
          additional latency.  Instead, moving compute functionality onto COIN
          execution environments inside the network offers a new solution
          space to these challenges, providing new compute locations with much
          smaller latencies.</t>
        </section>
        <section anchor="characterization-3" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.1.2">
          <name slugifiedName="name-characterization-4">Characterization</name>
          <t indent="0" pn="section-4.1.2-1">A control process consists of two main components as illustrated
          in <xref target="processControl" format="default" sectionFormat="of" derivedContent="Figure 2"/>: a system under control and a
          controller.  In feedback control, the current state of the system is
          monitored (e.g., using sensors), and the controller influences the
          system based on the difference between the current and the reference
          state to keep it close to this reference state.</t>
          <figure anchor="processControl" align="left" suppress-title="false" pn="figure-2">
            <name slugifiedName="name-simple-feedback-control-mod">Simple Feedback Control Model</name>
            <artwork align="left" pn="section-4.1.2-2.1">
 reference
   state      ------------        --------    Output
----------&gt;  | Controller | ---&gt; | System | ----------&gt;
           ^  ------------        --------       |
           |                                     |
           |   observed state                    |
           |                    ---------        |
            -------------------| Sensors | &lt;-----
                                ---------
</artwork>
          </figure>
          <t indent="0" pn="section-4.1.2-3">Apart from the control model, the quality of the control
          primarily depends on the timely reception of the sensor feedback,
          which can be subject to tight latency constraints, often in the
          single-digit millisecond range.  Even shorter feedback requirements
          may exist in other use cases, such as interferometry or high-energy
          physics, but these use cases are out of scope for this document.
          While low latencies are essential, there is an even greater need for
          stable and deterministic levels of latency, because controllers can
          generally cope with different levels of latency if they are
          designed for them, but they are significantly challenged by
          dynamically changing or unstable latencies.  The unpredictable
          latency of the Internet exemplifies this problem if, for example,
          off-premise cloud platforms are included.</t>
        </section>
        <section anchor="existing-solutions-3" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.1.3">
          <name slugifiedName="name-existing-solutions-4">Existing Solutions</name>
          <t indent="0" pn="section-4.1.3-1">Control functionality is commonly executed on PLCs close to
          the machinery.  These PLCs typically require vendor-specific
          implementations and are often hard to upgrade and update, which makes
          such control processes inflexible and difficult to manage.  Moving
          computations to more freely programmable devices thus has the
          potential of significantly improving the flexibility.  In this
          context, directly moving control functionality to (central) cloud
          environments is generally possible, yet only feasible if latency
          constraints are lenient.</t>
          <t indent="0" pn="section-4.1.3-2">Early approaches such as <xref target="RÜTH" format="default" sectionFormat="of" derivedContent="RÜTH"/> and <xref target="VESTIN" format="default" sectionFormat="of" derivedContent="VESTIN"/> have already shown the general applicability of
          leveraging COIN for in-network control.</t>
        </section>
        <section anchor="opportunities-3" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.1.4">
          <name slugifiedName="name-opportunities-4">Opportunities</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.1.4-1">
            <li pn="section-4.1.4-1.1">
              <t indent="0" pn="section-4.1.4-1.1.1">Performing simple control logic on PNDs and/or in COIN
              execution environments can bring the controlled system and the
              controller closer together, possibly satisfying the tight
              latency requirements.</t>
            </li>
            <li pn="section-4.1.4-1.2">
              <t indent="0" pn="section-4.1.4-1.2.1">Creating a coupled control that is exercised via</t>
              <ol type="i" indent="adaptive" spacing="normal" start="1" pn="section-4.1.4-1.2.2">
		<li pn="section-4.1.4-1.2.2.1" derivedCounter="i.">
                  <t indent="0" pn="section-4.1.4-1.2.2.1.1">simplified approximations of more complex control
		  algorithms deployed in COIN execution environments, and</t>
                </li>
                <li pn="section-4.1.4-1.2.2.2" derivedCounter="ii.">
                  <t indent="0" pn="section-4.1.4-1.2.2.2.1">more complex overall control schemes deployed in the cloud</t>
                </li>
              </ol>
              <t indent="0" pn="section-4.1.4-1.2.3">can allow for quicker, yet more inaccurate responses from
	      within the network while still providing for sufficient control
	      accuracy at higher latencies from afar.</t>
            </li>
          </ul>
        </section>
        <section anchor="research-questions-2" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.1.5">
          <name slugifiedName="name-research-questions-4">Research Questions</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.1.5-1">
            <li pn="section-4.1.5-1.1">
              <t indent="0" pn="section-4.1.5-1.1.1">RQ 4.1.1: How to derive simplified versions of the global
              (control) function?</t>
            </li>
            <li pn="section-4.1.5-1.2">
              <t indent="0" pn="section-4.1.5-1.2.1">RQ 4.1.2: How to account for the limited computational
              precision of PNDs that typically only allow for integer
              precision computation for enabling high processing rates, while
              floating-point precision is needed by most control algorithms
              (cf. <xref target="KUNZE-APPLICABILITY" format="default" sectionFormat="of" derivedContent="KUNZE-APPLICABILITY"/>)?</t>
            </li>
            <li pn="section-4.1.5-1.3">
              <t indent="0" pn="section-4.1.5-1.3.1">RQ 4.1.3: How to find suitable tradeoffs regarding simplicity
              of the control function ("accuracy of the control") and
              implementation complexity ("implementability")?</t>
            </li>
            <li pn="section-4.1.5-1.4">
              <t indent="0" pn="section-4.1.5-1.4.1">RQ 4.1.4: How to (dynamically) distribute simplified versions
              of the global (control) function among COIN execution
              environments?</t>
            </li>
            <li pn="section-4.1.5-1.5">
              <t indent="0" pn="section-4.1.5-1.5.1">RQ 4.1.5: How to (dynamically) compose or recompose the distributed
              control functions?</t>
            </li>
            <li pn="section-4.1.5-1.6">
              <t indent="0" pn="section-4.1.5-1.6.1">RQ 4.1.6: Can there be different control levels? For example,
              "quite inaccurate &amp; very low latency" for PNDs deep in the network;
              "more accurate &amp; higher latency" for more powerful COIN execution
              environments that are farther away; and "very accurate &amp; very high
              latency" for cloud environments that are far away.</t>
            </li>
            <li pn="section-4.1.5-1.7">
              <t indent="0" pn="section-4.1.5-1.7.1">RQ 4.1.7: Who decides which control instance is executed and
              which information can be used for this decision?</t>
            </li>
            <li pn="section-4.1.5-1.8">
              <t indent="0" pn="section-4.1.5-1.8.1">RQ 4.1.8: How do the different control instances interact and
              how can we define their hierarchy?</t>
            </li>
          </ul>
        </section>
        <section anchor="additional-desirable-capabilities-2" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.1.6">
          <name slugifiedName="name-additional-desirable-capabili">Additional Desirable Capabilities</name>
          <t indent="0" pn="section-4.1.6-1">In addition to the capabilities driven by the research questions
          above, there are a number of other features that approaches
          deploying control functionality in COIN execution environments could
          benefit from.  For example, having an explicit interaction between
          the COIN execution environments and the global controller would
          ensure that it is always clear which entity is emitting which
          signals.  In this context, it is also important that actions of COIN
          execution environments are overridable by the global controller such
          that the global controller has the final say in the process
          behavior.  Finally, by accommodating the general characteristics of
          control approaches, functions in COIN execution environments should
          ideally expose reliable information on the predicted delay and must
          expose reliable information on the predicted accuracy to the global
          control such that these aspects can be accommodated in the overall
          control.</t>
        </section>
      </section>
      <section anchor="filtering" numbered="true" removeInRFC="false" toc="include" pn="section-4.2">
        <name slugifiedName="name-large-volume-applications">Large-Volume Applications</name>
        <section anchor="FilteringDesc" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.2.1">
          <name slugifiedName="name-description-5">Description</name>
          <t indent="0" pn="section-4.2.1-1">In modern industrial networks, processes and machines are
          extensively monitored by distributed sensors with a large spectrum
          of capabilities, ranging from simple binary (e.g., light barriers)
          to sophisticated sensors with varying degrees of resolution.
          Sensors further serve different purposes, as some are used for
          time-critical process control, while others represent redundant
          fallback platforms.  Overall, there is a high level of heterogeneity,
          which makes managing the sensor output a challenging task.</t>
          <t indent="0" pn="section-4.2.1-2">Depending on the deployed sensors and the complexity of the
          observed system, the resulting overall data volume can easily be in
          the range of several Gbit/s <xref target="GLEBKE" format="default" sectionFormat="of" derivedContent="GLEBKE"/>.  These volumes
          are often already difficult to handle in local environments, and it
          becomes even more challenging when off-premise clouds are used for
          managing the data.  While large networking companies can simply
          upgrade their infrastructure to accommodate the accruing data
          volumes, most industrial companies operate on tight infrastructure
          budgets such that frequently upgrading is not always feasible or
          possible.  Hence, a major challenge is to devise a methodology that
          is able to handle such amounts of data efficiently and flexibly
          without relying on recurring infrastructure upgrades.</t>
          <t indent="0" pn="section-4.2.1-3">Data filtering and preprocessing, similar to the considerations
          in <xref target="XR" format="default" sectionFormat="of" derivedContent="Section 3.2"/>, can be building blocks for new solutions in
          this space.  Such solutions, however, might also have to address the
          added challenge of business data leaving the premises and control of
          the company.  As this data could include sensitive information or
          valuable business secrets, additional security measures have to be
          taken.  Yet, typical security measures such as encrypting the data
          make filtering or preprocessing approaches hardly applicable as they
          typically work on unencrypted data.  Consequently, incorporating
          security into these approaches, either by adding functionality for
          handling encrypted data or devising general security measures, is an
          additional auspicious field for research.</t>
        </section>
        <section anchor="FilteringChar" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.2.2">
          <name slugifiedName="name-characterization-5">Characterization</name>
          <t indent="0" pn="section-4.2.2-1">In essence, the described monitoring systems consist of sensors
          that produce large volumes of monitoring data.  This data is then
          transmitted to additional components that provide data processing
          and analysis capabilities or simply store the data in large data
          silos.</t>
          <t indent="0" pn="section-4.2.2-2">As sensors are often set up redundantly, parts of the collected
          data might also be redundant.  Moreover, sensors are often hard to
          configure or not configurable at all, which is why their resolution
          or sampling frequency is often larger than required.  Consequently,
          it is likely that more data is transmitted than is needed or
          desired, prompting the deployment of filtering techniques.  For
          example, COIN programs deployed in the on-premise network could
          filter out redundant or undesired data before it leaves the premise
          using simple traffic filters, thus reducing the required (upload)
          bandwidths.  The available sensor data could be scaled down using
          standard statistical sampling, packet-based sub-sampling (i.e., only
          forwarding every n-th packet), or using filtering as long as the
          sensor value is in an uninteresting range while forwarding with a
          higher resolution once the sensor value range becomes interesting
          (cf. <xref target="KUNZE-SIGNAL" format="default" sectionFormat="of" derivedContent="KUNZE-SIGNAL"/> and <xref target="TIRPITZ-REDUCIO" format="default" sectionFormat="of" derivedContent="TIRPITZ-REDUCIO"/>).  While the former variants are
          oblivious to the semantics of the sensor data, the latter variant
          requires an understanding of the current sensor levels.  In any
          case, it is important that end hosts are informed about the
          filtering so that they can distinguish between data loss and data
          filtered out on purpose.</t>
          <t indent="0" pn="section-4.2.2-3">In practice, the collected data is further processed using
          various forms of computation.  Some of them are very complex or need
          the complete sensor data during the computation, but there are also
          simpler operations that can already be done on subsets of the
          overall dataset or earlier on the communication path as soon as all
          data is available.  One example is finding the maximum of all sensor
          values, which can either be done iteratively at each intermediate hop
          or at the first hop where all data is available.  Using expert
          knowledge about the exact computation steps and the concrete
          transmission path of the sensor data, simple computation steps can
          thus be deployed in the on-premise network, again reducing the
          overall data volume.</t>
        </section>
        <section anchor="FilteringSol" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.2.3">
          <name slugifiedName="name-existing-solutions-5">Existing Solutions</name>
          <t indent="0" pn="section-4.2.3-1">Current approaches for handling such large amounts of information
          typically build upon stream processing frameworks such as Apache
          Flink.  These solutions allow for handling large-volume applications
          and map the compute functionality to performant server machines or
          distributed compute platforms.  Augmenting the existing
          capabilities, COIN offers a new dimension of platforms for such
          processing frameworks.</t>
        </section>
        <section anchor="FilteringOppo" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.2.4">
          <name slugifiedName="name-opportunities-5">Opportunities</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.2.4-1">
            <li pn="section-4.2.4-1.1">
              <t indent="0" pn="section-4.2.4-1.1.1">(Stream) processing frameworks can become more flexible by
              introducing COIN execution environments as additional deployment
              targets.</t>
            </li>
            <li pn="section-4.2.4-1.2">
              <t indent="0" pn="section-4.2.4-1.2.1">(Semantic) packet filtering based on packet header and
              payload, as well as multipacket information can (drastically)
              reduce the data volume, possibly even without losing any
              important information.</t>
            </li>
            <li pn="section-4.2.4-1.3">
              <t indent="0" pn="section-4.2.4-1.3.1">(Semantic) data preprocessing and processing (e.g., in the form of
              computations across multiple packets and potentially leveraging
              packet payload) can also reduce the data volume without losing
              any important information.</t>
            </li>
          </ul>
        </section>
        <section anchor="FilteringRQ" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.2.5">
          <name slugifiedName="name-research-questions-5">Research Questions</name>
          <t indent="0" pn="section-4.2.5-1">Some of the following research questions are also relevant in the
          context of general stream processing systems.</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.2.5-2">
            <li pn="section-4.2.5-2.1">
              <t indent="0" pn="section-4.2.5-2.1.1">RQ 4.2.1: How can the overall data processing pipeline be
              divided into individual processing steps that could then be
              deployed as COIN functionality?</t>
            </li>
            <li pn="section-4.2.5-2.2">
              <t indent="0" pn="section-4.2.5-2.2.1">RQ 4.2.2: How to design COIN programs for (semantic) packet
              filtering and which filtering criteria make sense?</t>
            </li>
            <li pn="section-4.2.5-2.3">
              <t indent="0" pn="section-4.2.5-2.3.1">RQ 4.2.3: Which kinds of COIN programs can be leveraged for
              preprocessing and processing steps and what complexity can they have?</t>
            </li>
            <li pn="section-4.2.5-2.4">
              <t indent="0" pn="section-4.2.5-2.4.1">RQ 4.2.4: How to distribute and coordinate COIN programs?</t>
            </li>
            <li pn="section-4.2.5-2.5">
              <t indent="0" pn="section-4.2.5-2.5.1">RQ 4.2.5: How to dynamically reconfigure and recompose COIN programs?</t>
            </li>
            <li pn="section-4.2.5-2.6">
              <t indent="0" pn="section-4.2.5-2.6.1">RQ 4.2.6: How to incorporate the preprocessing, processing, and
              filtering steps into the overall system?</t>
            </li>
            <li pn="section-4.2.5-2.7">
              <t indent="0" pn="section-4.2.5-2.7.1">RQ 4.2.7: How can changes to the data by COIN programs be
              signaled to the end hosts?</t>
            </li>
          </ul>
        </section>
        <section anchor="FilteringReq" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.2.6">
          <name slugifiedName="name-additional-desirable-capabilit">Additional Desirable Capabilities</name>
          <t indent="0" pn="section-4.2.6-1">In addition to the capabilities driven by the research questions
          above, there are a number of other features that such large-volume
          applications could benefit from.  In particular, conforming to
          standard application-level syntax and semantics likely simplifies
          embedding filters and preprocessors into the overall system.  If
          these filters and preprocessors also leverage packet header and
          payload information for their operation, this could further improve
          the performance of any approach developed based on the above
          research questions.</t>
        </section>
      </section>
      <section anchor="safety" numbered="true" removeInRFC="false" toc="include" pn="section-4.3">
        <name slugifiedName="name-industrial-safety">Industrial Safety</name>
        <section anchor="description-4" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.3.1">
          <name slugifiedName="name-description-6">Description</name>
          <t indent="0" pn="section-4.3.1-1">Despite an increasing automation in production processes, human
          workers are still often necessary.  Consequently, safety measures
          have a high priority to ensure that no human life is endangered.  In
          conventional factories, the regions of contact between humans and
          machines are well defined and interactions are simple.  Simple
          safety measures like emergency switches at the working positions are
          enough to provide a good level of safety.</t>
          <t indent="0" pn="section-4.3.1-2">Modern factories are characterized by increasingly dynamic and
          complex environments with new interaction scenarios between humans
          and robots.  Robots can directly assist humans, perform tasks
          autonomously, or even freely move around on the shop floor.  Hence,
          the intersect between the human working area and the robots grows,
          and it is harder for human workers to fully observe the complete
          environment.  Additional safety measures are essential to prevent
          accidents and support humans in observing the environment.</t>
        </section>
        <section anchor="characterization-4" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.3.2">
          <name slugifiedName="name-characterization-6">Characterization</name>
          <t indent="0" pn="section-4.3.2-1">Industrial safety measures are typically hardware solutions
          because they have to pass rigorous testing before they are certified
          and deployment ready.  Standard measures include safety switches and
          light barriers.  Additionally, the working area can be explicitly
          divided into "contact" and "safe" areas, indicating when workers
          have to watch out for interactions with machinery.  For example,
          markings on the factory floor can show the areas where robots move
          or indicate their maximum physical reach.</t>
          <t indent="0" pn="section-4.3.2-2">These measures are static solutions, potentially relying on
          specialized hardware, and are challenged by the increased dynamics
          of modern factories where the factory configuration can be changed
          on demand or where all entities are freely moving around.  Software
          solutions offer higher flexibility as they can dynamically respect
          new information gathered by the sensor systems, but in most cases
          they cannot give guaranteed safety.  COIN systems could leverage the
          increased availability of sensor data and the detailed monitoring of
          the factories to enable additional safety measures with shorter
          response times and higher guarantees.  Different safety indicators
          within the production hall could be combined within the network so
          that PNDs can give early responses if a potential safety breach is
          detected.  For example, the positions of human workers and robots
          could be tracked, and robots could be stopped when they get too close
          to a human in a non-working area or if a human enters a defined
          safety zone.  More advanced concepts could also include image data
          or combine arbitrary sensor data.  Finally, the increasing
          softwarization of industrial processes can also lead to new
          problems, e.g., if software bugs cause unintended movements of
          robots.  Here, COIN systems could independently double check issued
          commands to void unsafe commands.</t>
        </section>
        <section anchor="existing-solutions-4" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.3.3">
          <name slugifiedName="name-existing-solutions-6">Existing Solutions</name>
          <t indent="0" pn="section-4.3.3-1">Due to the importance of safety, there is a wide range of
          software-based approaches aiming at enhancing security.  One example
          are tag-based systems (e.g., using RFID), where drivers of forklifts
          can be warned if pedestrian workers carrying tags are nearby.  Such
          solutions, however, require setting up an additional system and do
          not leverage existing sensor data.</t>
        </section>
        <section anchor="opportunities-4" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.3.4">
          <name slugifiedName="name-opportunities-6">Opportunities</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.3.4-1">
            <li pn="section-4.3.4-1.1">
              <t indent="0" pn="section-4.3.4-1.1.1">Executing safety-critical COIN functions on PNDs could allow
              for early emergency reactions based on diverse sensor feedback
              with low latencies.</t>
            </li>
            <li pn="section-4.3.4-1.2">
              <t indent="0" pn="section-4.3.4-1.2.1">COIN software could provide independent on-path surveillance
              of control software-initiated actions to block unsafe
              commands.</t>
            </li>
          </ul>
        </section>
        <section anchor="research-questions-3" numbered="true" removeInRFC="false" toc="exclude" pn="section-4.3.5">
          <name slugifiedName="name-research-questions-6">Research Questions</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-4.3.5-1">
            <li pn="section-4.3.5-1.1">
              <t indent="0" pn="section-4.3.5-1.1.1">RQ 4.3.1: Which additional safety measures can be provided
              and do they actually improve safety?</t>
            </li>
            <li pn="section-4.3.5-1.2">
              <t indent="0" pn="section-4.3.5-1.2.1">RQ 4.3.2: Which sensor information can be combined and
              how?</t>
            </li>
            <li pn="section-4.3.5-1.3">
              <t indent="0" pn="section-4.3.5-1.3.1">RQ 4.3.3: How can COIN-based safety measures be integrated
              with existing safety measures without degrading safety?</t>
            </li>
            <li pn="section-4.3.5-1.4">
              <t indent="0" pn="section-4.3.5-1.4.1">RQ 4.3.4: How can COIN software validate control
              software-initiated commands to prevent unsafe operations?</t>
            </li>
          </ul>
        </section>
      </section>
    </section>
    <section anchor="existingCapabilities" numbered="true" removeInRFC="false" toc="include" pn="section-5">
      <name slugifiedName="name-improving-existing-coin-cap">Improving Existing COIN Capabilities</name>
      <section anchor="CDNs" numbered="true" removeInRFC="false" toc="include" pn="section-5.1">
        <name slugifiedName="name-content-delivery-networks">Content Delivery Networks</name>
        <section anchor="description-5" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.1.1">
          <name slugifiedName="name-description-7">Description</name>
          <t indent="0" pn="section-5.1.1-1">Delivery of content to end users often relies on Content Delivery
          Networks (CDNs).  CDNs store said content closer to end users for
          latency-reduced delivery as well as to reduce load on origin
          servers.  For this, they often utilize DNS-based indirection to
          serve the request on behalf of the origin server.  Both of these
          objectives are within scope to be addressed by COIN methods and
          solutions.</t>
        </section>
        <section anchor="characterization-5" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.1.2">
          <name slugifiedName="name-characterization-7">Characterization</name>
          <t indent="0" pn="section-5.1.2-1">From the perspective of this draft, a CDN can be interpreted as a
          (network service level) set of COIN programs.  These programs
          implement a distributed logic for first distributing content from
          the origin server to the CDN ingress and then further to the CDN
          replication points, which ultimately serve the user-facing content
          requests.</t>
        </section>
        <section anchor="existing-solutions-5" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.1.3">
          <name slugifiedName="name-existing-solutions-7">Existing Solutions</name>
          <t indent="0" pn="section-5.1.3-1">CDN technologies have been well described and deployed in the
          existing Internet.  Core technologies like Global Server Load
          Balancing (GSLB) <xref target="GSLB" format="default" sectionFormat="of" derivedContent="GSLB"/> and Anycast server solutions
          are used to deal with the required indirection of a content request
          (usually in the form of an HTTP request) to the most suitable local
          CDN server.  Content is replicated from seeding servers, which serve
          as injection points for content from content owners/producers, to
          the actual CDN servers, which will eventually serve the user's
          request.  The replication architecture and mechanisms themselves differ
          from one (CDN) provider to another, and often utilize private
          peering or network arrangements in order to distribute the content
          internationally and regionally.</t>
          <t indent="0" pn="section-5.1.3-2">Studies such as those in <xref target="FCDN" format="default" sectionFormat="of" derivedContent="FCDN"/> have shown that
          content distribution at the level of named content, utilizing
          efficient (e.g., Layer 2 (L2)) multicast for replication towards edge CDN
          nodes, can significantly increase the overall network and server
          efficiency.  It also reduces indirection latency for content
          retrieval as well as required edge storage capacity by benefiting
          from the increased network efficiency to renew edge content more
          quickly against changing demand.  Works such as those in <xref target="SILKROAD" format="default" sectionFormat="of" derivedContent="SILKROAD"/> utilize Application-Specific Integrated Circuits (ASICs) to replace server-based load
          balancing with significant cost reductions, thus showcasing the
          potential for in-network operations.</t>
        </section>
        <section anchor="opportunities-5" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.1.4">
          <name slugifiedName="name-opportunities-7">Opportunities</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.1.4-1">
            <li pn="section-5.1.4-1.1">
              <t indent="0" pn="section-5.1.4-1.1.1">Supporting service-level routing of requests (such as service
              routing in <xref target="I-D.sarathchandra-coin-appcentres" format="default" sectionFormat="of" derivedContent="APPCENTRES"/>)
              to specific COIN program instances may improve on end-user
              experience in retrieving faster (and possibly better
              quality) content.</t>
            </li>
            <li pn="section-5.1.4-1.2">
              <t indent="0" pn="section-5.1.4-1.2.1">COIN instances may also be utilized to integrate
              service-related telemetry information to support the selection
              of the final service instance destination from a pool of
              possible choices.</t>
            </li>
            <li pn="section-5.1.4-1.3">
              <t indent="0" pn="section-5.1.4-1.3.1">Supporting the selection of a service destination from a set of
                 possible choices (virtualized and distributed) in COIN program
                 instances (e.g., through constraint-based routing decisions as seen in
                 [APPCENTRES]) to improve the overall end-user experience by selecting a
                 "more suitable" service destination over another (e.g.,
                 avoiding/reducing overload situations in specific service destinations).</t>
            </li>
            <li pn="section-5.1.4-1.4">
              <t indent="0" pn="section-5.1.4-1.4.1">Supporting L2 capabilities for multicast (compute interconnection
                 and collective communication as seen in [APPCENTRES]) may
                 reduce the network utilization and therefore increase the overall
                 system efficiency. For example, this support may be
                 through in-network, switch-based replication decisions (and their
                 optimizations) based on dynamic group membership information.</t>
            </li>
          </ul>
        </section>
        <section anchor="research-questions-4" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.1.5">
          <name slugifiedName="name-research-questions-7">Research Questions</name>
          <t indent="0" pn="section-5.1.5-1">In addition to the research questions in <xref target="mobileOffloadRQ" format="default" sectionFormat="of" derivedContent="Section 3.1.5"/>:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.1.5-2">
            <li pn="section-5.1.5-2.1">
              <t indent="0" pn="section-5.1.5-2.1.1">RQ 5.1.1: How to utilize L2 multicast to improve on CDN
              designs? How to utilize COIN capabilities in those designs, such
              as through on-path optimizations for fanouts?</t>
            </li>
            <li pn="section-5.1.5-2.2">
              <t indent="0" pn="section-5.1.5-2.2.1">RQ 5.1.2: What forwarding methods may support the required
              multicast capabilities (see <xref target="FCDN" format="default" sectionFormat="of" derivedContent="FCDN"/>) and how could
              programmable COIN forwarding elements support those methods
              (e.g., extending current SDN capabilities)?</t>
            </li>
            <li pn="section-5.1.5-2.3">
              <t indent="0" pn="section-5.1.5-2.3.1">RQ 5.1.3: What are the constraints, reflecting both compute
              and network capabilities, that may support joint optimization of
              routing and computing? How could intermediary COIN program
              instances support, for example, the aggregation of those constraints to
              reduce overall telemetry network traffic?</t>
            </li>
            <li pn="section-5.1.5-2.4">
              <t indent="0" pn="section-5.1.5-2.4.1">RQ 5.1.4: Could traffic steering be performed on the data
              path and per service request (e.g., through COIN program
              instances that perform novel routing request lookup methods)? If
              so, what would be performance improvements?</t>
            </li>
            <li pn="section-5.1.5-2.5">
              <t indent="0" pn="section-5.1.5-2.5.1">RQ 5.1.5: How could storage be traded off against frequent,
              multicast-based replication (see <xref target="FCDN" format="default" sectionFormat="of" derivedContent="FCDN"/>)? Could
              intermediary/in-network COIN elements support the storage
              beyond current endpoint-based methods?</t>
            </li>
            <li pn="section-5.1.5-2.6">
              <t indent="0" pn="section-5.1.5-2.6.1">RQ 5.1.6: What scalability limits exist for L2 multicast
              capabilities? How to overcome them, e.g., through COIN program
              instances serving as stateful subtree aggregators to reduce the
              needed identifier space (e.g., for bit-based forwarding)?</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="CFaaS" numbered="true" removeInRFC="false" toc="include" pn="section-5.2">
        <name slugifiedName="name-compute-fabric-as-a-service">Compute-Fabric-as-a-Service (CFaaS)</name>
        <section anchor="description-6" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.2.1">
          <name slugifiedName="name-description-8">Description</name>
          <t indent="0" pn="section-5.2.1-1">We interpret connected compute resources as operating at a
          suitable layer, such as Ethernet, InfiniBand, but also at Layer 3 (L3), to
          allow for the exchange of suitable invocation methods, such as those
          exposed through verb-based or socket-based APIs.  The specific
          invocations here are subject to the applications running over a
          selected pool of such connected compute resources.</t>
          <t indent="0" pn="section-5.2.1-2">Providing such a pool of connected compute resources (e.g., in
          regional or edge data centers, base stations, and even end-user
          devices) opens up the opportunity for infrastructure providers to
          offer CFaaS-like offerings to application providers, leaving the
          choice of the appropriate invocation method to the app and service
          provider.  Through this, the compute resources can be utilized to
          execute the desired COIN programs of which the application is
          composed, while utilizing the interconnection between those compute
          resources to do so in a distributed manner.</t>
        </section>
        <section anchor="characterization-6" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.2.2">
          <name slugifiedName="name-characterization-8">Characterization</name>
          <t indent="0" pn="section-5.2.2-1">We foresee those CFaaS offerings to be tenant-specific, with a tenant
          here defined as the provider of at least one application.  For this,
          we foresee an interaction between the CFaaS provider and tenant to
          dynamically select the appropriate resources to define the demand
          side of the fabric.  Conversely, we also foresee the supply side of
          the fabric to be highly dynamic, with resources being offered to the
          fabric through, for example, user-provided resources (whose supply might
          depend on highly context-specific supply policies) or infrastructure
          resources of intermittent availability such as those provided
          through road-side infrastructure in vehicular scenarios.</t>
          <t indent="0" pn="section-5.2.2-2">The resulting dynamic demand-supply matching establishes a
          dynamic nature of the compute fabric that in turn requires trust
          relationships to be built dynamically between the resource
          provider(s) and the CFaaS provider.  This also requires the
          communication resources to be dynamically adjusted to suitably
          interconnect all resources into the (tenant-specific) fabric exposed
          as CFaaS.</t>
        </section>
        <section anchor="existing-solutions-6" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.2.3">
          <name slugifiedName="name-existing-solutions-8">Existing Solutions</name>
          <t indent="0" pn="section-5.2.3-1">There exist a number of technologies to build non-local (wide
          area) L2 as well as L3 networks, which in turn allows for connecting
          compute resources for a distributed computational task.  For
          instance, 5G-LAN <xref target="SA2-5GLAN" format="default" sectionFormat="of" derivedContent="SA2-5GLAN"/> specifies a cellular L2
          bearer for interconnecting L2 resources within a single cellular
          operator.  The work in <xref target="I-D.trossen-icnrg-internet-icn-5glan" format="default" sectionFormat="of" derivedContent="ICN-5GLAN"/> outlines using a
          path-based forwarding solution over 5G-LAN as well as SDN-based LAN
          connectivity together with an ICN-based naming of IP and HTTP-level resources. This is done in order
          to achieve computational interconnections, including scenarios such
          as those outlined in <xref target="mobileAppOffload" format="default" sectionFormat="of" derivedContent="Section 3.1"/>.  L2 network
          virtualization (see <xref target="L2Virt" format="default" sectionFormat="of" derivedContent="L2Virt"/>) is one of the methods
          used for realizing so-called "cloud-based" applications for
          applications developed with "physical" networks in mind, thus
          forming an interconnected compute and storage fabric.</t>
        </section>
        <section anchor="opportunities-6" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.2.4">
          <name slugifiedName="name-opportunities-8">Opportunities</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.2.4-1">
            <li pn="section-5.2.4-1.1">
              <t indent="0" pn="section-5.2.4-1.1.1">Supporting service-level routing of compute resource requests
              (such as service routing in <xref target="I-D.sarathchandra-coin-appcentres" format="default" sectionFormat="of" derivedContent="APPCENTRES"/>) may allow for
              utilizing the wealth of compute resources in the overall CFaaS
              fabric for execution of distributed applications, where the
              distributed constituents of those applications are realized as
              COIN programs and executed within a COIN system as COIN
              program instances.</t>
            </li>
            <li pn="section-5.2.4-1.2">
              <t indent="0" pn="section-5.2.4-1.2.1">Supporting the constraint-based selection of a specific
              COIN program instance over others (such as constraint-based routing in
              <xref target="I-D.sarathchandra-coin-appcentres" format="default" sectionFormat="of" derivedContent="APPCENTRES"/>) will allow
              for optimizing both the CFaaS provider constraints as well as
              tenant-specific constraints.</t>
            </li>
            <li pn="section-5.2.4-1.3">
              <t indent="0" pn="section-5.2.4-1.3.1">Supporting L2 and L3 capabilities for multicast (such as compute
              interconnection and collective communication in <xref target="I-D.sarathchandra-coin-appcentres" format="default" sectionFormat="of" derivedContent="APPCENTRES"/>) will allow for
              decreasing both network utilization but also possible compute
              utilization (due to avoiding unicast replication at those
              compute endpoints), thereby decreasing total cost of ownership
              for the CFaaS offering.</t>
            </li>
            <li pn="section-5.2.4-1.4">
              <t indent="0" pn="section-5.2.4-1.4.1">Supporting intermediary COIN program
              instances to allow for the enforcement of trust relationships and
              isolation policies (e.g., enforcing specific traffic shares or strict
              isolation of traffic through differentiated queueing).</t>
            </li>
          </ul>
        </section>
        <section anchor="research-questions-5" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.2.5">
          <name slugifiedName="name-research-questions-8">Research Questions</name>
          <t indent="0" pn="section-5.2.5-1">In addition to the research questions in <xref target="mobileOffloadRQ" format="default" sectionFormat="of" derivedContent="Section 3.1.5"/>:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.2.5-2">
            <li pn="section-5.2.5-2.1">
              <t indent="0" pn="section-5.2.5-2.1.1">RQ 5.2.1: How to convey tenant-specific requirements for the
              creation of the CFaaS fabric?</t>
            </li>
            <li pn="section-5.2.5-2.2">
              <t indent="0" pn="section-5.2.5-2.2.1">RQ 5.2.2: How to dynamically integrate resources into the
              compute fabric being utilized for the app execution (those
              resources include, but are not limited to, end-user provided
              resources), particularly when driven by tenant-level
              requirements and changing service-specific constraints? How can
              those resources be exposed through possible COIN execution
              environments?</t>
            </li>
            <li pn="section-5.2.5-2.3">
              <t indent="0" pn="section-5.2.5-2.3.1">RQ 5.2.3: How to utilize COIN capabilities to aid the
              availability and accountability of resources, i.e., what may be
              COIN programs for a CFaaS environment that in turn would
              utilize the distributed execution capability of a COIN
              system?</t>
            </li>
            <li pn="section-5.2.5-2.4">
              <t indent="0" pn="section-5.2.5-2.4.1">RQ 5.2.4: How to utilize COIN capabilities to enforce traffic
              and isolation policies for establishing trust between tenant and
              CFaaS provider in an assured operation?</t>
            </li>
            <li pn="section-5.2.5-2.5">
              <t indent="0" pn="section-5.2.5-2.5.1">RQ 5.2.5: How to optimize the interconnection of compute
              resources, including those dynamically added and removed during
              the provisioning of the tenant-specific compute fabric?</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="virtNetProg" numbered="true" removeInRFC="false" toc="include" pn="section-5.3">
        <name slugifiedName="name-virtual-networks-programmin">Virtual Networks Programming</name>
        <section anchor="description-7" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.3.1">
          <name slugifiedName="name-description-9">Description</name>
          <t indent="0" pn="section-5.3.1-1">The term "virtual network programming" is proposed to describe
          mechanisms by which tenants deploy and operate COIN programs in
          their virtual network.  Such COIN programs can be, for example, P4
          programs, OpenFlow rules, or higher layer programs.  This feature
          can enable other use cases described in this draft to be deployed
          using virtual network services, over underlying networks such as
          data centers, mobile networks, or other fixed or wireless
          networks.</t>
          <t indent="0" pn="section-5.3.1-2">For example, COIN programs could perform the following on a
          tenant's virtual network:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.3.1-3">
            <li pn="section-5.3.1-3.1">
              <t indent="0" pn="section-5.3.1-3.1.1">Allow or block flows, and request rules from an SDN
              controller for each new flow, or for flows to or from specific
              hosts that need enhanced security.</t>
            </li>
            <li pn="section-5.3.1-3.2">
              <t indent="0" pn="section-5.3.1-3.2.1">Forward a copy of some flows towards a node for storage and
              analysis.</t>
            </li>
            <li pn="section-5.3.1-3.3">
              <t indent="0" pn="section-5.3.1-3.3.1">Update metrics based on specific sources/destinations or
              protocols, for detailed analytics.</t>
            </li>
            <li pn="section-5.3.1-3.4">
              <t indent="0" pn="section-5.3.1-3.4.1">Associate traffic between specific endpoints, using specific
              protocols, or originated from a given application, to a given
              slice, while other traffic uses a default slice.</t>
            </li>
            <li pn="section-5.3.1-3.5">
              <t indent="0" pn="section-5.3.1-3.5.1">Experiment with a new routing protocol (e.g., ICN), using a
              P4 implementation of a router for this protocol.</t>
            </li>
          </ul>
        </section>
        <section anchor="characterization-7" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.3.2">
          <name slugifiedName="name-characterization-9">Characterization</name>
          <t indent="0" pn="section-5.3.2-1">To provide a concrete example of virtual COIN programming, we
          consider a use case using a 5G underlying network, the 5GLAN
          virtualization technology, and the P4 programming language and
          environment.  As an assumption in this use case, some mobile network
          equipment (e.g., User Plane Functions (UPFs)) and devices (e.g.,
          mobile phones or residential gateways) include a network switch
          functionality that is used as a PND.</t>
          <t indent="0" pn="section-5.3.2-2"><xref target="I-D.ravi-icnrg-5gc-icn" sectionFormat="of" section="5.1" format="default" derivedLink="https://datatracker.ietf.org/doc/html/draft-ravi-icnrg-5gc-icn-04#section-5.1" derivedContent="ICN-5GC"/> provides a description of the 5G network functions
          and interfaces relevant to 5GLAN, which are otherwise specified in
          <xref target="TS23.501" format="default" sectionFormat="of" derivedContent="TS23.501"/> and <xref target="TS23.502" format="default" sectionFormat="of" derivedContent="TS23.502"/>.  From the
          5GLAN service customer/tenant standpoint, the 5G network operates as
          a switch.</t>
          <t indent="0" pn="section-5.3.2-3">In the use case depicted in <xref target="figureVN1" format="default" sectionFormat="of" derivedContent="Figure 3"/>, the
          tenant operates a network including a 5GLAN network segment (seen as
          a single logical switch), as well as fixed segments.  The mobile
          devices (or User Equipment nodes) UE1, UE2, UE3, and UE4 are in
          the same 5GLAN, as well as Device1 and Device2 (through UE4).  This
          scenario can take place in a plant or enterprise network, using a 5G
          non-public network, for example.  The tenant uses P4 programs to
          determine the operation of both the fixed and 5GLAN switches.  The
          tenant provisions a 5GLAN P4 program into the mobile network and
          can also operate a controller.</t>
          <figure anchor="figureVN1" align="left" suppress-title="false" pn="figure-3">
            <name slugifiedName="name-5g-virtual-network-programm">5G Virtual Network Programming Overview</name>
            <artwork align="left" pn="section-5.3.2-4.1">
                                     ..... Tenant ........
                          P4 program :                   :
                          deployment :         Operation :
                                     V                   :
  +-----+  air interface +----------------+              :
  | UE1 +----------------+                |              :
  +-----+                |                |              :
                         |                |              :
  +-----+                |                |              V
  | UE2 +----------------+     5GLAN      |      +------------+
  +-----+                |    Logical     +------+ Controller |
                         |     Switch     |  P4  +-------+----+
  +-----+                |                |  runtime     |
  | UE3 +----------------+                |  API         |
  +-----+                |                |              |
                         |                |              |
  +-----+                |                |              |
+-+ UE4 +----------------+                |              |
| +-----+                +----------------+              |
|                                                        |
| Fixed or wireless connection                           |
|                                    P4 runtime API      |
|  +---------+           +-------------------------------+
+--+ Device1 |           |
|  +---------+           |
|                        |
|  +---------+    +------+-----+
`--+ Device2 +----+ P4 Switch  +---&gt;(fixed network)
   +---------+    +------------+
</artwork>
          </figure>
        </section>
        <section anchor="existing-solutions-7" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.3.3">
          <name slugifiedName="name-existing-solutions-9">Existing Solutions</name>
          <t indent="0" pn="section-5.3.3-1">Research has been conducted, for example by <xref target="Stoyanov" format="default" sectionFormat="of" derivedContent="Stoyanov"/>, to enable P4 network programming of individual
          virtual switches.  To our knowledge, no complete solution has been
          developed for deploying virtual COIN programs over mobile or
          data center networks.</t>
        </section>
        <section anchor="opportunities-7" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.3.4">
          <name slugifiedName="name-opportunities-9">Opportunities</name>
          <t indent="0" pn="section-5.3.4-1">Virtual network programming by tenants could bring benefits such as:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.3.4-2">
            <li pn="section-5.3.4-2.1">
              <t indent="0" pn="section-5.3.4-2.1.1">A unified programming model, which can facilitate porting
              COIN programs between data centers, 5G networks, and other fixed
              and wireless networks, as well as sharing controllers, code, and
              expertise.</t>
            </li>
            <li pn="section-5.3.4-2.2">
              <t indent="0" pn="section-5.3.4-2.2.1">Increasing the level of customization available to
              customers/tenants of mobile networks or data centers compared to
              typical configuration capabilities.  For example, 5G network
              evolution points to an ever-increasing specialization and
              customization of private mobile networks, which could be handled
              by tenants using a programming model similar to P4.</t>
            </li>
            <li pn="section-5.3.4-2.3">
              <t indent="0" pn="section-5.3.4-2.3.1">Using network programs to influence underlying network
              services (e.g., requesting specific QoS for some flows in 5G or
              data centers) to increase the level of in-depth customization
              available to tenants.</t>
            </li>
          </ul>
        </section>
        <section anchor="research-questions-6" numbered="true" removeInRFC="false" toc="exclude" pn="section-5.3.5">
          <name slugifiedName="name-research-questions-9">Research Questions</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5.3.5-1">
            <li pn="section-5.3.5-1.1">
              <t indent="0" pn="section-5.3.5-1.1.1">RQ 5.3.1: Underlying network awareness</t>
              <t indent="0" pn="section-5.3.5-1.1.2">A virtual COIN program can both influence, and be
	      influenced by, the underling network. Research challenges
	      include defining methods to distribute COIN programs, including
	      in a mobile network context, based on network awareness, since
	      some information and actions may be available on some nodes but
	      not on others.</t>
            </li>
            <li pn="section-5.3.5-1.2">
              <t indent="0" pn="section-5.3.5-1.2.1">RQ 5.3.2: Splitting/distribution</t>
              <t indent="0" pn="section-5.3.5-1.2.2">A virtual COIN program may need to be deployed across
	      multiple computing nodes, leading to research questions around
	      instance placement and distribution. For example, program logic
	      should be applied exactly once or at least once per packet (or
	      at least once for idempotent operations), while allowing an optimal
	      forwarding path by the underlying network. Research challenges
	      include defining manual (by the programmer) or automatic methods
	      to distribute COIN programs that use a low or minimal amount of
	      resources. Distributed P4 programs are studied in <xref target="I-D.hsingh-coinrg-reqs-p4comp" format="default" sectionFormat="of" derivedContent="P4-SPLIT"/> and <xref target="Sultana" format="default" sectionFormat="of" derivedContent="Sultana"/> (based on capability 5.3.2).</t>
            </li>
            <li pn="section-5.3.5-1.3">
              <t indent="0" pn="section-5.3.5-1.3.1">RQ 5.3.3: Multi-tenancy support</t>
              <t indent="0" pn="section-5.3.5-1.3.2">A COIN system supporting virtualization should enable tenants
	      to deploy COIN programs onto their virtual networks, in such a
	      way that multiple virtual COIN program instances can run on the
	      same compute node. While mechanisms were proposed for P4
	      multi-tenancy in a switch <xref target="Stoyanov" format="default" sectionFormat="of" derivedContent="Stoyanov"/>, research
	      questions remain about isolation between tenants and fair
	      repartition of resources (based on capability 5.3.3).</t>
            </li>
            <li pn="section-5.3.5-1.4">
              <t indent="0" pn="section-5.3.5-1.4.1">RQ 5.3.4: Security</t>
              <t indent="0" pn="section-5.3.5-1.4.2">How can tenants and underlying networks
              be protected against security risks, including overuse or misuse
              of network resources, injection of traffic, or access to
              unauthorized traffic?</t>
            </li>
            <li pn="section-5.3.5-1.5">
              <t indent="0" pn="section-5.3.5-1.5.1">RQ 5.3.5: Higher layer processing</t>
              <t indent="0" pn="section-5.3.5-1.5.2">Can a virtual network model facilitate the deployment of COIN
	      programs acting on application-layer data? This is an open
	      question, since this section focuses on packet/flow
	      processing.</t>
            </li>
          </ul>
        </section>
      </section>
    </section>
    <section anchor="newCapabilities" numbered="true" removeInRFC="false" toc="include" pn="section-6">
      <name slugifiedName="name-enabling-new-coin-capabilit">Enabling New COIN Capabilities</name>
      <section anchor="distributedAI" numbered="true" removeInRFC="false" toc="include" pn="section-6.1">
        <name slugifiedName="name-distributed-ai-training">Distributed AI Training</name>
        <section anchor="description-8" numbered="true" removeInRFC="false" toc="exclude" pn="section-6.1.1">
          <name slugifiedName="name-description-10">Description</name>
          <t indent="0" pn="section-6.1.1-1">There is a growing range of use cases demanding the realization
          of AI training capabilities among distributed endpoints.  One such
          use case is to distribute large-scale model training across more
          than one data center (e.g., when facing energy issues at a single
          site or when simply reaching the scale of training capabilities at
          one site, thus wanting to complement training with the capabilities of
          another or possibly many sites).  From a COIN perspective, those
          capabilities may be realized as COIN programs and executed
          throughout a COIN system, including in PNDs.</t>
        </section>
        <section anchor="characterization-8" numbered="true" removeInRFC="false" toc="exclude" pn="section-6.1.2">
          <name slugifiedName="name-characterization-10">Characterization</name>
          <t indent="0" pn="section-6.1.2-1">Some solutions may desire the localization of reasoning logic
          (e.g., for deriving attributes that better preserve privacy of the
          utilized raw input data).  Quickly establishing COIN program
          instances in nearby compute resources, including PNDs, may even
          satisfy such localization demands on the fly (e.g., when a
          particular use is being realized, then terminated after a given
          time).</t>
          <t indent="0" pn="section-6.1.2-2">Individual training "sites" may not be a data center, but may instead
          consist of powerful, yet stand-along devices that federate
          computing power towards training a model, captured as "federated
          training" and provided through platforms such as <xref target="FLOWER" format="default" sectionFormat="of" derivedContent="FLOWER"/>.  Use cases here may be that of distributed
          training on (user) image data, the training over federated social
          media sites <xref target="MASTODON" format="default" sectionFormat="of" derivedContent="MASTODON"/>, or others.</t>
          <t indent="0" pn="section-6.1.2-3">Apart from the distribution of compute power, the distribution of
          data may be a driver for distributed AI training use cases, such as
          in the Mastodon federated social media sites <xref target="MASTODON" format="default" sectionFormat="of" derivedContent="MASTODON"/> or training over locally governed patient data
          or others.</t>
        </section>
        <section anchor="existing-solutions-8" numbered="true" removeInRFC="false" toc="exclude" pn="section-6.1.3">
          <name slugifiedName="name-existing-solutions-10">Existing Solutions</name>
          <t indent="0" pn="section-6.1.3-1">Reasoning frameworks, such as TensorFlow, may be utilized for the
          realization of the (distributed) AI training logic, building on
          remote service invocation through protocols such as gRPC <xref target="GRPC" format="default" sectionFormat="of" derivedContent="GRPC"/> or the Message Passing Interface (MPI) <xref target="MPI" format="default" sectionFormat="of" derivedContent="MPI"/> with the intention of providing an on-chip Neural
          Processor Unit (NPU) like abstraction to the AI framework.</t>
          <t indent="0" pn="section-6.1.3-2">A number of activities on distributed AI training exist in the
          area of developing the 5th and 6th generation mobile network, with
          various activities in the 3GPP Standards Development Organization
          (SDO) as well as use cases developed for the ETSI MEC initiative
          mentioned in previous use cases.</t>
        </section>
        <section anchor="opportunities-8" numbered="true" removeInRFC="false" toc="exclude" pn="section-6.1.4">
          <name slugifiedName="name-opportunities-10">Opportunities</name>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-6.1.4-1">
            <li pn="section-6.1.4-1.1">
              <t indent="0" pn="section-6.1.4-1.1.1">Supporting service-level routing of training requests (such as service
                 routing in [APPCENTRES]) with AI services being exposed to the
                 network, and where COIN program instances may support the selection
                 of the most suitable service instance based on control plane
                 information (e.g., on AI worker compute capabilities being
                 distributed across COIN program instances).</t>
            </li>
            <li pn="section-6.1.4-1.2">
              <t indent="0" pn="section-6.1.4-1.2.1">Supporting the collective communication primitives, such as all-
                 to-all and scatter-gather, utilized by the (distributed) AI
                 workers may increase the overall network efficiency (e.g.,
                 through avoiding endpoint-based replication or even directly
                 performing collective primitive operations in COIN
                 program instances placed in topologically advantageous places).</t>
            </li>
            <li pn="section-6.1.4-1.3">
              <t indent="0" pn="section-6.1.4-1.3.1">Supporting collective communication between multiple
              instances of AI services (i.e., COIN program instances) may
              positively impact network but also compute utilization by moving
              from unicast replication to network-assisted multicast
              operation.</t>
            </li>
          </ul>
        </section>
        <section anchor="research-questions-7" numbered="true" removeInRFC="false" toc="exclude" pn="section-6.1.5">
          <name slugifiedName="name-research-questions-10">Research Questions</name>
          <t indent="0" pn="section-6.1.5-1">In addition to the research questions in <xref target="mobileOffloadRQ" format="default" sectionFormat="of" derivedContent="Section 3.1.5"/>:</t>
          <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-6.1.5-2">
            <li pn="section-6.1.5-2.1">
              <t indent="0" pn="section-6.1.5-2.1.1">RQ 6.1.1: What are the communication patterns that may be
              supported by collective communication solutions, where those
              solutions directly utilize COIN program instance capabilities
              within the network (e.g., perform Reduce options in a central COIN program
              instance)?</t>
            </li>
            <li pn="section-6.1.5-2.2">
              <t indent="0" pn="section-6.1.5-2.2.1">RQ 6.1.2: How to achieve scalable collective communication
              primitives with rapidly changing receiver sets (e.g., where
              training workers may be dynamically selected based on energy
              efficiency constraints <xref target="GREENAI" format="default" sectionFormat="of" derivedContent="GREENAI"/>)?</t>
            </li>
            <li pn="section-6.1.5-2.3">
              <t indent="0" pn="section-6.1.5-2.3.1">RQ 6.1.3: What COIN capabilities may support the collective
              communication patterns found in distributed AI problems?</t>
            </li>
            <li pn="section-6.1.5-2.4">
              <t indent="0" pn="section-6.1.5-2.4.1">RQ 6.1.4: How to support AI-specific invocation protocols,
              such as MPI or Remote Direct Memory Access (RDMA)?</t>
            </li>
            <li pn="section-6.1.5-2.5">
              <t indent="0" pn="section-6.1.5-2.5.1">RQ 6.1.5: What are the constraints for placing (AI) execution
              logic in the form of COIN programs in certain logical
              execution points (and their associated physical locations),
              including PNDs, and how to signal and act upon them?</t>
            </li>
          </ul>
        </section>
      </section>
    </section>
    <section anchor="preliminary-categorization-of-the-research-questions" numbered="true" removeInRFC="false" toc="include" pn="section-7">
      <name slugifiedName="name-preliminary-categorization-">Preliminary Categorization of the Research Questions</name>
      <t indent="0" pn="section-7-1">This section describes a preliminary categorization of the research
      questions illustrated in <xref target="figureRQCategories" format="default" sectionFormat="of" derivedContent="Figure 4"/>.  A more
      comprehensive analysis has been initiated by members of the COINRG
      community in <xref target="I-D.irtf-coinrg-use-case-analysis" format="default" sectionFormat="of" derivedContent="USE-CASE-AN"/> but has
      not been completed at the time of writing this memo.</t>
      <figure anchor="figureRQCategories" align="left" suppress-title="false" pn="figure-4">
        <name slugifiedName="name-research-questions-categori">Research Questions Categories</name>
        <artwork align="left" pn="section-7-2.1">
   +--------------------------------------------------------------+
   +                       Applicability Areas                    +
   + .............................................................+
   + Transport |   App  |    Data    |  Routing &amp;  | (Industrial) +
   +           | Design | Processing | Forwarding  |    Control   +
   +--------------------------------------------------------------+

   +--------------------------------------------------------------+
   +    Distributed Computing Frameworks and Languages to COIN    +
   +--------------------------------------------------------------+

   +--------------------------------------------------------------+
   +                Enabling Technologies for COIN                +
   +--------------------------------------------------------------+

   +--------------------------------------------------------------+
   +                      Vision(s) for COIN                      +
   +--------------------------------------------------------------+
</artwork>
      </figure>
      <t indent="0" pn="section-7-3">The "Vision(s) for COIN" category is about defining and shaping the
      exact scope of COIN.  In contrast to the "Enabling Technologies" category,
      these research questions look at the problem from a more philosophical
      perspective.  In particular, the questions center around where to
      perform computations, which tasks are suitable for COIN, for which tasks
      COIN is suitable, and which forms of deploying COIN might be desirable.
      This category includes the research questions 3.1.8, 3.2.1, 3.3.5,
      3.3.6, 3.3.7, 5.3.3, 6.1.1, and 6.1.3.</t>
      <t indent="0" pn="section-7-4">The "Enabling Technologies for COIN" category digs into what
      technologies are needed to enable COIN, which of the existing
      technologies can be reused for COIN, and what might be needed to make
      the "Vision(s) for COIN" a reality.  In contrast to the "Vision(s) for COIN", these
      research questions look at the problem from a practical perspective
      (e.g., by considering how COIN can be incorporated in existing systems or
      how the interoperability of COIN execution environments can be enhanced).
      This category includes the research questions 3.1.7, 3.1.8, 3.2.3,
      4.2.7, 5.1.1, 5.1.2, 5.1.6, 5.3.1, 6.1.2, and 6.1.3.</t>
      <t indent="0" pn="section-7-5">The "Distributed Computing Frameworks and Languages to COIN" category
      focuses on how COIN programs can be deployed and orchestrated.  Central
      questions arise regarding the composition of COIN programs, the
      placement of COIN functions, the (dynamic) operation and integration of
      COIN systems as well as additional COIN system properties.  Notably,
      COIN diversifies general distributed computing platforms such that many
      COIN-related research questions could also apply to general distributed
      computing frameworks.  This category includes the research questions
      3.1.1, 3.2.4, 3.3.1, 3.3.2, 3.3.3, 3.3.5, 4.1.1, 4.1.4, 4.1.5, 4.1.8,
      4.2.1, 4.2.4, 4.2.5, 4.2.6, 4.3.3, 5.2.1, 5.2.2, 5.2.3, 5.2.5, 5.3.1,
      5.3.2, 5.3.3, 5.3.4, 5.3.5, and 6.1.5.</t>
      <t indent="0" pn="section-7-6">In addition to these core categories, there are use case specific
      research questions that are heavily influenced by the specific
      constraints and objectives of the respective use cases.  This
      "Applicability Areas" category can be further refined into the following
      subgroups:</t>
      <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-7-7">
        <li pn="section-7-7.1">
          <t indent="0" pn="section-7-7.1.1">The "Transport" subgroup addresses the need to adapt transport
          protocols to handle dynamic deployment locations effectively.  This
          subgroup includes the research question 3.1.2.</t>
        </li>
        <li pn="section-7-7.2">
          <t indent="0" pn="section-7-7.2.1">The "App Design" subgroup relates to the design principles and
          considerations when developing COIN applications.  This subgroup
          includes the research questions 4.1.2, 4.1.3, 4.1.7, 4.2.6, 5.1.1,
          5.1.3, and 5.1.5.</t>
        </li>
        <li pn="section-7-7.3">
          <t indent="0" pn="section-7-7.3.1">The "Data Processing" subgroup relates to the handling, storage,
          analysis, and processing of data in COIN environments.  This
          subgroup includes the research questions 3.2.4, 3.2.6, 4.2.2, 4.2.3,
          and 4.3.2.</t>
        </li>
        <li pn="section-7-7.4">
          <t indent="0" pn="section-7-7.4.1">The "Routing &amp; Forwarding" subgroup explores efficient
          routing and forwarding mechanisms in COIN, considering factors such
          as network topology, congestion control, and quality of service.
          This subgroup includes the research questions 3.1.2, 3.1.3, 3.1.4,
          3.1.5, 3.1.6, 3.2.6, 5.1.2, 5.1.3, 5.1.4, and 6.1.4.</t>
        </li>
        <li pn="section-7-7.5">
          <t indent="0" pn="section-7-7.5.1">The "(Industrial) Control" subgroup relates to industrial control
          systems, addressing issues like real-time control, automation, and
          fault tolerance.  This subgroup includes the research questions
          3.1.9, 3.2.5, 3.3.1, 3.3.4, 4.1.1, 4.1.6, 4.1.8, 4.2.3, 4.3.1, and
          4.3.4.</t>
        </li>
      </ul>
    </section>
    <section anchor="sec_considerations" numbered="true" removeInRFC="false" toc="include" pn="section-8">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-8-1">COIN systems, like any other system using "middleboxes", can have
      different security and privacy implications that strongly depend on the
      used platforms, the provided functionality, and the deployment domain,
      with most if not all considerations for general middleboxes also
      applying to COIN systems.</t>
      <t indent="0" pn="section-8-2">One critical aspect for early COIN systems is the use of early
      generation PNDs, many of which do not have cryptography support and only
      have limited computational capabilities.  Hence, PND-based COIN systems
      typically work on unencrypted data and often customize packet payload,
      while concepts such as homomorphic encryption could serve as
      workarounds, allowing PNDs to perform simple operations on the encrypted
      data without having access to it.  All these approaches introduce the
      same or very similar security implications as any middlebox operating on
      unencrypted traffic or having access to encryption: a middlebox can
      itself have malicious intentions (e.g., because it got compromised or
      the deployment of functionality offers new attack vectors to
      outsiders).</t>
      <t indent="0" pn="section-8-3">However, similar to middlebox deployments, risks for privacy and the risk of data
      exposure have to be carefully considered in the context of the concrete
      deployment.  For example, exposing data to an external operator for
      mobile application offloading leads to a significant privacy loss of the
      user in any case.  In contrast, such privacy considerations are not as
      relevant for COIN systems where all involved entities are under the same
      control, such as in an industrial context.  Here, exposed data and
      functionality can instead lead to stolen business secrets or the
      enabling of DoS attacks, for example.  Hence, even in fully controlled
      scenarios, COIN intermediaries, and middleboxes in general, are ideally
      operated in a least-privilege mode, where they have exactly those
      permissions to read and alter payload that are necessary to fulfill their
      purpose.</t>
      <t indent="0" pn="section-8-4">Research on granting middleboxes access to secured traffic is only in
      its infancy, and a variety of different approaches are proposed and
      analyzed <xref target="TLSSURVEY" format="default" sectionFormat="of" derivedContent="TLSSURVEY"/>.  In a SplitTLS <xref target="SPLITTLS" format="default" sectionFormat="of" derivedContent="SPLITTLS"/> deployment, for example, middleboxes have different
      incoming and outgoing TLS channels, such that they have full read and
      write access to all intercepted traffic.  More restrictive approaches
      for deploying middleboxes rely on searchable encryption or
      zero-knowledge proofs to expose less data to intermediaries, but those
      only offer limited functionality.  MADTLS <xref target="MADTLS" format="default" sectionFormat="of" derivedContent="MADTLS"/> is
      tailored to the industrial domain and offers bit-level read and write
      access to intermediaries with low latency and bandwidth overhead, at the
      cost of more complex key management.  Overall, different proposals offer
      different advantages and disadvantages that must be carefully considered
      in the context of concrete deployments.  Further research could pave the
      way for a more unified and configurable solution that is easier to
      maintain and deploy.</t>
      <t indent="0" pn="section-8-5">Finally, COIN systems and other middlebox deployments can also lead
      to security risks even if the attack stems from an outsider without
      direct access to any devices.  As such, metadata about the entailed
      processing (processing times or changes in incoming and outgoing data) can
      allow an attacker to extract valuable information about the process.
      Moreover, such deployments can become central entities that, if
      paralyzed (e.g., through extensive requests), can be responsible for
      large-scale outages.  In particular, some deployments could be used to
      amplify DoS attacks.  Similar to other middlebox deployments, these
      potential risks must be considered when deploying COIN functionality and
      may influence the selection of suitable security protocols.</t>
      <t indent="0" pn="section-8-6">Additional system-level security considerations may arise from
      regulatory requirements imposed on COIN systems overall, stemming from
      regulation regarding lawful interception, data localization, or
      AI use, for example.  These requirements may impact, for example, the manner in which COIN
      programs may be placed or executed in the overall system, who can invoke
      certain COIN programs in what PND or COIN device, and what type of
      COIN program can be run.  These considerations will impact the design
      of the possible implementing protocols but also the policies that govern
      the execution of COIN programs.</t>
    </section>
    <section anchor="iana-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-9">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-9-1">This document has no IANA actions.</t>
    </section>
    <section anchor="conclusion" numbered="true" removeInRFC="false" toc="include" pn="section-10">
      <name slugifiedName="name-conclusion">Conclusion</name>
      <t indent="0" pn="section-10-1">This document presents use cases gathered from several application
      domains that can and could profit from capabilities that are provided by
      in-network and, more generally, distributed compute platforms.  We
      distinguish between use cases in which COIN may enable new experiences
      (<xref target="newExperiences" format="default" sectionFormat="of" derivedContent="Section 3"/>), expose new features (<xref target="newCapabilities" format="default" sectionFormat="of" derivedContent="Section 6"/>), or improve on existing system capabilities
      (<xref target="existingCapabilities" format="default" sectionFormat="of" derivedContent="Section 5"/>), and other use cases where COIN
      capabilities enable totally new applications, for example, in industrial
      networking (<xref target="newEnvironments" format="default" sectionFormat="of" derivedContent="Section 4"/>).</t>
      <t indent="0" pn="section-10-2">Beyond the mere description and characterization of those use cases,
      we identify opportunities arising from utilizing COIN capabilities and
      formulate corresponding research questions that may need to be
      addressed before being able to reap those opportunities.</t>
      <t indent="0" pn="section-10-3">We acknowledge that this work offers no comprehensive overview of
      possible use cases and is thus only a snapshot of what may be possible
      if COIN capabilities existed.  In fact, the decomposition of many
      current client-server applications into node-by-node transit could
      identify other opportunities for adding computing to forwarding, notably
      in the supply chain, health care, intelligent cities and transportation,
      and even financial services (among others).  The presented use cases
      are selected based on the expertise of the contributing community
      members at the time of writing and are intended to cover a diverse range,
      from immersive and interactive media, industrial networks, to AI with
      varying characteristics, thus, providing the basis for a thorough
      subsequent analysis.</t>
    </section>
  </middle>
  <back>
    <displayreference target="I-D.trossen-icnrg-internet-icn-5glan" to="ICN-5GLAN"/>
    <displayreference target="I-D.sarathchandra-coin-appcentres" to="APPCENTRES"/>
    <displayreference target="I-D.irtf-coinrg-use-case-analysis" to="USE-CASE-AN"/>
    <displayreference target="I-D.hsingh-coinrg-reqs-p4comp" to="P4-SPLIT"/>
    <displayreference target="I-D.ravi-icnrg-5gc-icn" to="ICN-5GC"/>
    <references pn="section-11">
      <name slugifiedName="name-informative-references">Informative References</name>
      <reference anchor="I-D.sarathchandra-coin-appcentres" target="https://datatracker.ietf.org/doc/html/draft-sarathchandra-coin-appcentres-04" quoteTitle="true" derivedAnchor="APPCENTRES">
        <front>
          <title>In-Network Computing for App-Centric Micro-Services</title>
          <author fullname="Dirk Trossen" initials="D." surname="Trossen">
            <organization showOnFrontPage="true">Huawei</organization>
          </author>
          <author fullname="Chathura Sarathchandra" initials="C." surname="Sarathchandra">
            <organization showOnFrontPage="true">InterDigital Inc.</organization>
          </author>
          <author fullname="Michael Boniface" initials="M." surname="Boniface">
            <organization showOnFrontPage="true">University of Southampton</organization>
          </author>
          <date day="26" month="January" year="2021"/>
          <abstract>
            <t indent="0">The application-centric deployment of 'Internet' services has increased over the past ten years with many millions of applications providing user-centric services, executed on increasingly more powerful smartphones that are supported by Internet-based cloud services in distributed data centres, the latter mainly provided by large scale players such as Google, Amazon and alike. This draft outlines a vision for evolving those data centres towards executing app-centric micro-services; we dub this evolved data centre as an AppCentre. Complemented with the proliferation of such AppCentres at the edge of the network, they will allow for such micro-services to be distributed across many places of execution, including mobile terminals themselves, while specific micro-service chains equal today's applications in existing smartphones. We outline the key enabling technologies that needs to be provided for such evolution to be realized, including references to ongoing standardization efforts in key areas.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-sarathchandra-coin-appcentres-04"/>
        <refcontent>Work in Progress</refcontent>
      </reference>
      <reference anchor="CompNet2021" quoteTitle="true" target="https://doi.org/10.1016/j.comnet.2021.108186" derivedAnchor="CompNet2021">
        <front>
          <title>Edge intelligence computing for mobile augmented reality with deep reinforcement learning approach</title>
          <author fullname="Miaojiang Chen" initials="M." surname="Chen">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Wei Liu" initials="W." surname="Liu">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Tian Wang" initials="T." surname="Wang">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Anfeng Liu" initials="A." surname="Liu">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Zhiwen Zeng" initials="Z." surname="Zeng">
            <organization showOnFrontPage="true"/>
          </author>
          <date month="August" year="2021"/>
        </front>
        <seriesInfo name="DOI" value="10.1016/j.comnet.2021.108186"/>
        <refcontent>Computer Networks, vol. 195, p. 108186</refcontent>
      </reference>
      <reference anchor="eCAR" quoteTitle="true" target="https://doi.org/10.48550/ARXIV.2405.06872" derivedAnchor="eCAR">
        <front>
          <title>eCAR: edge-assisted Collaborative Augmented Reality Framework</title>
          <author fullname="Jinwoo Jeon" initials="J." surname="Jeon">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Woontack Woo" initials="W." surname="Woo">
            <organization showOnFrontPage="true"/>
          </author>
          <date year="2024"/>
        </front>
        <refcontent>arXiv:2405.06872</refcontent>
        <seriesInfo name="DOI" value="10.48550/ARXIV.2405.06872"/>
      </reference>
      <reference anchor="ETSI" target="https://www.etsi.org/technologies/multi-access-edge-computing" quoteTitle="true" derivedAnchor="ETSI">
        <front>
          <title>Multi-access Edge Computing (MEC)</title>
          <author initials="" surname="ETSI" fullname="ETSI">
            <organization showOnFrontPage="true"/>
          </author>
        </front>
      </reference>
      <reference anchor="FCDN" target="https://arxiv.org/pdf/1803.00876.pdf" quoteTitle="true" derivedAnchor="FCDN">
        <front>
          <title>fCDN: A Flexible and Efficient CDN Infrastructure without DNS Redirection of Content Reflection</title>
          <author initials="M." surname="Al-Naday">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="M. J." surname="Reed">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="J." surname="Riihijarvi">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="D." surname="Trossen">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="N." surname="Thomos">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="M." surname="Al-Khalidi">
            <organization showOnFrontPage="true"/>
          </author>
          <date/>
        </front>
        <refcontent>arXiv:1803.00876v2</refcontent>
      </reference>
      <reference anchor="FLOWER" target="https://flower.ai/" quoteTitle="true" derivedAnchor="FLOWER">
        <front>
          <title>A Friendly Federated AI Framework</title>
          <author initials="" surname="Flower Labs GmbH">
            <organization showOnFrontPage="true"/>
          </author>
        </front>
      </reference>
      <reference anchor="GLEBKE" quoteTitle="true" target="https://doi.org/10.24251/hicss.2019.871" derivedAnchor="GLEBKE">
        <front>
          <title>A Case for Integrated Data Processing in Large-Scale Cyber-Physical Systems</title>
          <author fullname="Rene Glebke" initials="R." surname="Glebke">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Martin Henze" initials="M." surname="Henze">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Klaus Wehrle" initials="K." surname="Wehrle">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Philipp Niemietz" initials="P." surname="Niemietz">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Daniel Trauth" initials="D." surname="Trauth">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Patrick Mattfeld" initials="P." surname="Mattfeld">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Thomas Bergs" initials="T." surname="Bergs">
            <organization showOnFrontPage="true"/>
          </author>
          <date year="2019"/>
        </front>
        <refcontent>Proceedings of the Annual Hawaii International Conference on System Sciences</refcontent>
        <seriesInfo name="DOI" value="10.24251/hicss.2019.871"/>
      </reference>
      <reference anchor="GREENAI" quoteTitle="true" target="https://doi.org/10.1109/pimrc56721.2023.10293863" derivedAnchor="GREENAI">
        <front>
          <title>A Safe Genetic Algorithm Approach for Energy Efficient Federated Learning in Wireless Communication Networks</title>
          <author fullname="Lina Magoula" initials="L." surname="Magoula">
            <organization showOnFrontPage="true">National and Kapodistrian University of Athens,Dept. of Informatics and Telecommunications,Greece</organization>
          </author>
          <author fullname="Nikolaos Koursioumpas" initials="N." surname="Koursioumpas">
            <organization showOnFrontPage="true">National and Kapodistrian University of Athens,Dept. of Informatics and Telecommunications,Greece</organization>
          </author>
          <author fullname="Alexandros-Ioannis Thanopoulos" initials="A." surname="Thanopoulos">
            <organization showOnFrontPage="true">National and Kapodistrian University of Athens,Dept. of Informatics and Telecommunications,Greece</organization>
          </author>
          <author fullname="Theodora Panagea" initials="T." surname="Panagea">
            <organization showOnFrontPage="true">National and Kapodistrian University of Athens,Dept. of Informatics and Telecommunications,Greece</organization>
          </author>
          <author fullname="Nikolaos Petropouleas" initials="N." surname="Petropouleas">
            <organization showOnFrontPage="true">National and Kapodistrian University of Athens,Dept. of Informatics and Telecommunications,Greece</organization>
          </author>
          <author fullname="M. A. Gutierrez-Estevez" initials="M." surname="Gutierrez-Estevez">
            <organization showOnFrontPage="true">Huawei Technologies Duesseldorf GmbH,Munich Research Center,Munich,Germany</organization>
          </author>
          <author fullname="Ramin Khalili" initials="R." surname="Khalili">
            <organization showOnFrontPage="true">Huawei Technologies Duesseldorf GmbH,Munich Research Center,Munich,Germany</organization>
          </author>
          <date month="September" year="2023"/>
        </front>
        <refcontent>2023 IEEE 34th Annual International Symposium on Personal, Indoor and Mobile Radio Communications (PIMRC), pp. 1-6</refcontent>
        <seriesInfo name="DOI" value="10.1109/pimrc56721.2023.10293863"/>
      </reference>
      <reference anchor="GRPC" target="https://grpc.io/" quoteTitle="true" derivedAnchor="GRPC">
        <front>
          <title>High performance, open source universal RPC framework</title>
          <author>
            <organization showOnFrontPage="true"/>
          </author>
          <date/>
        </front>
      </reference>
      <reference anchor="GSLB" target="https://www.cloudflare.com/learning/cdn/glossary/global-server-load-balancing-gslb/" quoteTitle="true" derivedAnchor="GSLB">
        <front>
          <title>What is global server load balancing (GSLB)?</title>
          <author>
            <organization showOnFrontPage="true">Cloudflare</organization>
          </author>
        </front>
      </reference>
      <reference anchor="I-D.ravi-icnrg-5gc-icn" target="https://datatracker.ietf.org/doc/html/draft-ravi-icnrg-5gc-icn-04" quoteTitle="true" derivedAnchor="ICN-5GC">
        <front>
          <title>Enabling ICN in 3GPP's 5G NextGen Core Architecture</title>
          <author fullname="Ravi Ravindran" initials="R." surname="Ravindran">
            <organization showOnFrontPage="true">Futurewei Technologies</organization>
          </author>
          <author fullname="Prakash Suthar" initials="P." surname="Suthar">
            <organization showOnFrontPage="true">Cisco Systems</organization>
          </author>
          <author fullname="Dirk Trossen" initials="D." surname="Trossen">
            <organization showOnFrontPage="true">InterDigital Inc.</organization>
          </author>
          <author fullname="Chonggang Wang" initials="C." surname="Wang">
            <organization showOnFrontPage="true">InterDigital Inc.</organization>
          </author>
          <author fullname="Greg White" initials="G." surname="White">
            <organization showOnFrontPage="true">CableLabs</organization>
          </author>
          <date day="31" month="May" year="2019"/>
          <abstract>
            <t indent="0">The proposed 3GPP's 5G core nextgen architecture (5GC) offers flexibility to introduce new user and control plane function, considering the support for network slicing functions, that allows greater flexibility to handle heterogeneous devices and applications. In this draft, we provide a short description of the proposed 5GC architecture, including recent efforts to provide cellular Local Area Network (LAN) connectivity, followed by extensions to 5GC's control and user plane to support Packet Data Unit (PDU) sessions from Information-Centric Networks (ICN). In addition, ICN over 5GLAN is also described.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ravi-icnrg-5gc-icn-04"/>
        <refcontent>Work in Progress</refcontent>
      </reference>
      <reference anchor="I-D.trossen-icnrg-internet-icn-5glan" target="https://datatracker.ietf.org/doc/html/draft-trossen-icnrg-internet-icn-5glan-04" quoteTitle="true" derivedAnchor="ICN-5GLAN">
        <front>
          <title>Internet Services over ICN in 5G LAN Environments</title>
          <author fullname="Dirk Trossen" initials="D." surname="Trossen">
            <organization showOnFrontPage="true">Huawei Technologies Duesseldorf GmbH</organization>
          </author>
          <author fullname="Sebastian Robitzsch" initials="S." surname="Robitzsch">
            <organization showOnFrontPage="true">InterDigital Inc.</organization>
          </author>
          <author fullname="University Essex" initials="U." surname="Essex">
            <organization showOnFrontPage="true">Essex University</organization>
          </author>
          <author fullname="Mays AL-Naday" initials="M." surname="AL-Naday">
            <organization showOnFrontPage="true">Essex University</organization>
          </author>
          <author fullname="Janne Riihijarvi" initials="J." surname="Riihijarvi">
            <organization showOnFrontPage="true">RWTH Aachen</organization>
          </author>
          <date day="1" month="October" year="2020"/>
          <abstract>
            <t indent="0">In this draft, we provide architecture and operations for enabling Internet services over ICN over (5G-enabled) LAN environments. Operations include ICN API to upper layers, HTTP over ICN, Service Proxy Operations, ICN Flow Management, Name Resolution, Mobility Handling, and Dual Stack Device Support.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-trossen-icnrg-internet-icn-5glan-04"/>
        <refcontent>Work in Progress</refcontent>
      </reference>
      <reference anchor="KUNZE-APPLICABILITY" quoteTitle="true" target="https://doi.org/10.1109/icps49255.2021.9468247" derivedAnchor="KUNZE-APPLICABILITY">
        <front>
          <title>Investigating the Applicability of In-Network Computing to Industrial Scenarios</title>
          <author fullname="Ike Kunze" initials="I." surname="Kunze">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Rene Glebke" initials="R." surname="Glebke">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Jan Scheiper" initials="J." surname="Scheiper">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Matthias Bodenbenner" initials="M." surname="Bodenbenner">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Robert H. Schmitt" initials="R." surname="Schmitt">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Klaus Wehrle" initials="K." surname="Wehrle">
            <organization showOnFrontPage="true"/>
          </author>
          <date month="May" year="2021"/>
        </front>
        <refcontent>2021 4th IEEE International Conference on Industrial Cyber-Physical Systems (ICPS), pp. 334-340</refcontent>
        <seriesInfo name="DOI" value="10.1109/icps49255.2021.9468247"/>
      </reference>
      <reference anchor="KUNZE-SIGNAL" quoteTitle="true" target="https://doi.org/10.1109/isie45552.2021.9576221" derivedAnchor="KUNZE-SIGNAL">
        <front>
          <title>Detecting Out-Of-Control Sensor Signals in Sheet Metal Forming using In-Network Computing</title>
          <author fullname="Ike Kunze" initials="I." surname="Kunze">
            <organization showOnFrontPage="true">Communication and Distributed Systems</organization>
          </author>
          <author fullname="Philipp Niemietz" initials="P." surname="Niemietz">
            <organization showOnFrontPage="true">Laboratory for Machine Tools and Production Engineering (WZL)</organization>
          </author>
          <author fullname="Liam Tirpitz" initials="L." surname="Tirpitz">
            <organization showOnFrontPage="true">Communication and Distributed Systems</organization>
          </author>
          <author fullname="Rene Glebke" initials="R." surname="Glebke">
            <organization showOnFrontPage="true">Communication and Distributed Systems</organization>
          </author>
          <author fullname="Daniel Trauth" initials="D." surname="Trauth">
            <organization showOnFrontPage="true">Laboratory for Machine Tools and Production Engineering (WZL)</organization>
          </author>
          <author fullname="Thomas Bergs" initials="T." surname="Bergs">
            <organization showOnFrontPage="true">Laboratory for Machine Tools and Production Engineering (WZL)</organization>
          </author>
          <author fullname="Klaus Wehrle" initials="K." surname="Wehrle">
            <organization showOnFrontPage="true">Communication and Distributed Systems</organization>
          </author>
          <date month="June" year="2021"/>
        </front>
        <refcontent>2021 IEEE 30th International Symposium on Industrial Electronics (ISIE), pp. 1-6</refcontent>
        <seriesInfo name="DOI" value="10.1109/isie45552.2021.9576221"/>
      </reference>
      <reference anchor="L2Virt" target="https://blogs.oracle.com/cloud-infrastructure/post/first-principles-l2-network-virtualization-for-lift-and-shift" quoteTitle="true" derivedAnchor="L2Virt">
        <front>
          <title>First principles: L2 network virtualization for lift and shift</title>
          <author initials="L." surname="Kreger-Stickles">
            <organization showOnFrontPage="true"/>
          </author>
          <date day="9" month="February" year="2021"/>
        </front>
        <refcontent>Oracle Cloud Infrastructure Blog</refcontent>
      </reference>
      <reference anchor="MADTLS" quoteTitle="true" target="https://doi.org/10.48550/ARXIV.2312.09650" derivedAnchor="MADTLS">
        <front>
          <title>Madtls: Fine-grained Middlebox-aware End-to-end Security for Industrial Communication</title>
          <author fullname="Eric Wagner" initials="E." surname="Wagner">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="David Heye" initials="D." surname="Heye">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Martin Serror" initials="M." surname="Serror">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Ike Kunze" initials="I." surname="Kunze">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Klaus Wehrle" initials="K." surname="Wehrle">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Martin Henze" initials="M." surname="Henze">
            <organization showOnFrontPage="true"/>
          </author>
          <date year="2023"/>
        </front>
        <seriesInfo name="DOI" value="10.48550/ARXIV.2312.09650"/>
        <refcontent>arXiv:2312.09650</refcontent>
      </reference>
      <reference anchor="MASTODON" quoteTitle="true" target="https://doi.org/10.1145/3355369.3355572" derivedAnchor="MASTODON">
        <front>
          <title>Challenges in the Decentralised Web: The Mastodon Case</title>
          <author fullname="Aravindh Raman" initials="A." surname="Raman">
            <organization showOnFrontPage="true">King's College London</organization>
          </author>
          <author fullname="Sagar Joglekar" initials="S." surname="Joglekar">
            <organization showOnFrontPage="true">King's College London</organization>
          </author>
          <author fullname="Emiliano De Cristofaro" initials="E." surname="Cristofaro">
            <organization showOnFrontPage="true">University College London</organization>
          </author>
          <author fullname="Nishanth Sastry" initials="N." surname="Sastry">
            <organization showOnFrontPage="true">King's College London</organization>
          </author>
          <author fullname="Gareth Tyson" initials="G." surname="Tyson">
            <organization showOnFrontPage="true">Queen Mary University of London</organization>
          </author>
          <date month="October" year="2019"/>
        </front>
        <refcontent>Proceedings of the Internet Measurement Conference, pp. 217-229</refcontent>
        <seriesInfo name="DOI" value="10.1145/3355369.3355572"/>
      </reference>
      <reference anchor="Microservices" target="https://microservices.io/" quoteTitle="true" derivedAnchor="Microservices">
        <front>
          <title>What are microservices?</title>
          <author initials="C." surname="Richardson">
            <organization showOnFrontPage="true"/>
          </author>
        </front>
      </reference>
      <reference anchor="MPI" target="https://arxiv.org/pdf/1603.02339.pdf" quoteTitle="true" derivedAnchor="MPI">
        <front>
          <title>Scaling Distributed Machine Learning with In-Network Aggregation</title>
          <author initials="A." surname="Vishnu">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="C." surname="Siegel">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="J." surname="Daily">
            <organization showOnFrontPage="true"/>
          </author>
          <date month="August" year="2017"/>
        </front>
        <refcontent>arXiv:1603.02339v2</refcontent>
      </reference>
      <reference anchor="Multi2020" quoteTitle="true" target="https://doi.org/10.1145/3387514.3405864" derivedAnchor="Multi2020">
        <front>
          <title>Routing on Multiple Optimality Criteria</title>
          <author fullname="João Luís Sobrinho" initials="J." surname="Sobrinho">
            <organization showOnFrontPage="true">Instituto de Telecomunicações, Instituto Superior Tecnico, Universidade de Lisboa</organization>
          </author>
          <author fullname="Miguel Alves Ferreira" initials="M." surname="Ferreira">
            <organization showOnFrontPage="true">Instituto de Telecomunicações, Instituto Superior Tecnico, Universidade de Lisboa</organization>
          </author>
          <date month="July" year="2020"/>
        </front>
        <refcontent>Proceedings of the Annual conference of the ACM Special Interest Group on Data Communication on the applications, technologies, architectures, and protocols for computer communication, pp. 211-225</refcontent>
        <seriesInfo name="DOI" value="10.1145/3387514.3405864"/>
      </reference>
      <reference anchor="NetworkedVR" quoteTitle="true" target="https://doi.org/10.3390/electronics10020166" derivedAnchor="NetworkedVR">
        <front>
          <title>Networked VR: State of the Art, Solutions, and Challenges</title>
          <author fullname="Jinjia Ruan" initials="J." surname="Ruan">
            <organization showOnFrontPage="true">State Key Laboratory of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876, China</organization>
          </author>
          <author fullname="Dongliang Xie" initials="D." surname="Xie">
            <organization showOnFrontPage="true">State Key Laboratory of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876, China</organization>
          </author>
          <date month="January" year="2021"/>
        </front>
        <refcontent>Electronics, vol. 10, no. 2, p. 166</refcontent>
        <seriesInfo name="DOI" value="10.3390/electronics10020166"/>
      </reference>
      <reference anchor="P4" quoteTitle="true" target="https://doi.org/10.1145/2656877.2656890" derivedAnchor="P4">
        <front>
          <title>P4: programming protocol-independent packet processors</title>
          <author fullname="Pat Bosshart" initials="P." surname="Bosshart">
            <organization showOnFrontPage="true">Barefoot Networks, Palo Alto, CA, USA</organization>
          </author>
          <author fullname="Dan Daly" initials="D." surname="Daly">
            <organization showOnFrontPage="true">Intel, Ann Arbor, MI, USA</organization>
          </author>
          <author fullname="Glen Gibb" initials="G." surname="Gibb">
            <organization showOnFrontPage="true">Barefoot Networks, Palo Alto, CA, USA</organization>
          </author>
          <author fullname="Martin Izzard" initials="M." surname="Izzard">
            <organization showOnFrontPage="true">Barefoot Networks, Palo Alto, CA, USA</organization>
          </author>
          <author fullname="Nick McKeown" initials="N." surname="McKeown">
            <organization showOnFrontPage="true">Stanford University, Stanford, CA, USA</organization>
          </author>
          <author fullname="Jennifer Rexford" initials="J." surname="Rexford">
            <organization showOnFrontPage="true">Princeton University, Princeton, NJ, USA</organization>
          </author>
          <author fullname="Cole Schlesinger" initials="C." surname="Schlesinger">
            <organization showOnFrontPage="true">Princeton University, Princeton, NJ, USA</organization>
          </author>
          <author fullname="Dan Talayco" initials="D." surname="Talayco">
            <organization showOnFrontPage="true">Barefoot Networks, Palo Alto, CA, USA</organization>
          </author>
          <author fullname="Amin Vahdat" initials="A." surname="Vahdat">
            <organization showOnFrontPage="true">Google, Mountain View, CA, USA</organization>
          </author>
          <author fullname="George Varghese" initials="G." surname="Varghese">
            <organization showOnFrontPage="true">Microsoft Research, Mountain View, CA, USA</organization>
          </author>
          <author fullname="David Walker" initials="D." surname="Walker">
            <organization showOnFrontPage="true">Princeton University, Princeton, NJ, USA</organization>
          </author>
          <date month="July" year="2014"/>
        </front>
        <refcontent>ACM SIGCOMM Computer Communication Review, vol. 44, no. 3, pp. 87-95</refcontent>
        <seriesInfo name="DOI" value="10.1145/2656877.2656890"/>
      </reference>
      <reference anchor="I-D.hsingh-coinrg-reqs-p4comp" target="https://datatracker.ietf.org/doc/html/draft-hsingh-coinrg-reqs-p4comp-03" quoteTitle="true" derivedAnchor="P4-SPLIT">
        <front>
          <title>Requirements for P4 Program Splitting for Heterogeneous Network Nodes</title>
          <author fullname="Hemant Singh" initials="H." surname="Singh">
            <organization showOnFrontPage="true">MNK Labs and Consulting</organization>
          </author>
          <author fullname="Marie-Jose Montpetit" initials="M." surname="Montpetit">
            <organization showOnFrontPage="true">Concordia Univeristy</organization>
          </author>
          <date day="18" month="February" year="2021"/>
          <abstract>
            <t indent="0">For distributed computing, the P4 research community has published a paper to show how to split a P4 program into sub-programs which run on heterogeneous network nodes in a network. Examples of nodes are a network switch, a smartNIC, or a host machine. The paper has developed artifacts to split program based on latency, data rate, cost, etc. However, the paper does not mention any requirements. To provide guidance, this document covers requirements for splitting P4 programs for heterogeneous network nodes.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-hsingh-coinrg-reqs-p4comp-03"/>
        <refcontent>Work in Progress</refcontent>
      </reference>
      <reference anchor="RFC7272" target="https://www.rfc-editor.org/info/rfc7272" quoteTitle="true" derivedAnchor="RFC7272">
        <front>
          <title>Inter-Destination Media Synchronization (IDMS) Using the RTP Control Protocol (RTCP)</title>
          <author fullname="R. van Brandenburg" initials="R." surname="van Brandenburg"/>
          <author fullname="H. Stokking" initials="H." surname="Stokking"/>
          <author fullname="O. van Deventer" initials="O." surname="van Deventer"/>
          <author fullname="F. Boronat" initials="F." surname="Boronat"/>
          <author fullname="M. Montagud" initials="M." surname="Montagud"/>
          <author fullname="K. Gross" initials="K." surname="Gross"/>
          <date month="June" year="2014"/>
          <abstract>
            <t indent="0">This document defines a new RTP Control Protocol (RTCP) Packet Type and an RTCP Extended Report (XR) Block Type to be used for achieving Inter-Destination Media Synchronization (IDMS). IDMS is the process of synchronizing playout across multiple media receivers. Using the RTCP XR IDMS Report Block defined in this document, media playout information from participants in a synchronization group can be collected. Based on the collected information, an RTCP IDMS Settings Packet can then be sent to distribute a common target playout point to which all the distributed receivers, sharing a media experience, can synchronize.</t>
            <t indent="0">Typical use cases in which IDMS is useful are social TV, shared service control (i.e., applications where two or more geographically separated users are watching a media stream together), distance learning, networked video walls, networked loudspeakers, etc.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7272"/>
        <seriesInfo name="DOI" value="10.17487/RFC7272"/>
      </reference>
      <reference anchor="RFC8039" target="https://www.rfc-editor.org/info/rfc8039" quoteTitle="true" derivedAnchor="RFC8039">
        <front>
          <title>Multipath Time Synchronization</title>
          <author fullname="A. Shpiner" initials="A." surname="Shpiner"/>
          <author fullname="R. Tse" initials="R." surname="Tse"/>
          <author fullname="C. Schelp" initials="C." surname="Schelp"/>
          <author fullname="T. Mizrahi" initials="T." surname="Mizrahi"/>
          <date month="December" year="2016"/>
          <abstract>
            <t indent="0">Clock synchronization protocols are very widely used in IP-based networks. The Network Time Protocol (NTP) has been commonly deployed for many years, and the last few years have seen an increasingly rapid deployment of the Precision Time Protocol (PTP). As time-sensitive applications evolve, clock accuracy requirements are becoming increasingly stringent, requiring the time synchronization protocols to provide high accuracy. This memo describes a multipath approach to PTP and NTP over IP networks, allowing the protocols to run concurrently over multiple communication paths between the master and slave clocks, without modifying these protocols. The multipath approach can significantly contribute to clock accuracy, security, and fault tolerance. The multipath approach that is presented in this document enables backward compatibility with nodes that do not support the multipath functionality.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8039"/>
        <seriesInfo name="DOI" value="10.17487/RFC8039"/>
      </reference>
      <reference anchor="RÜTH" quoteTitle="true" target="https://doi.org/10.1145/3229591.3229592" derivedAnchor="RÜTH">
        <front>
          <title>Towards In-Network Industrial Feedback Control</title>
          <author fullname="Jan Rüth" initials="J." surname="Rüth">
            <organization showOnFrontPage="true">RWTH Aachen University</organization>
          </author>
          <author fullname="René Glebke" initials="R." surname="Glebke">
            <organization showOnFrontPage="true">RWTH Aachen University</organization>
          </author>
          <author fullname="Klaus Wehrle" initials="K." surname="Wehrle">
            <organization showOnFrontPage="true">RWTH Aachen University</organization>
          </author>
          <author fullname="Vedad Causevic" initials="V." surname="Causevic">
            <organization showOnFrontPage="true">Technical University of Munich</organization>
          </author>
          <author fullname="Sandra Hirche" initials="S." surname="Hirche">
            <organization showOnFrontPage="true">Technical University of Munich</organization>
          </author>
          <date month="August" year="2018"/>
        </front>
        <refcontent>Proceedings of the 2018 Morning Workshop on In-Network Computing, pp. 14-19</refcontent>
        <seriesInfo name="DOI" value="10.1145/3229591.3229592"/>
      </reference>
      <reference anchor="SA2-5GLAN" target="https://www.3gpp.org/ftp/tsg_sa/TSG_SA/TSGS_82/Docs/SP-181120.zip" quoteTitle="true" derivedAnchor="SA2-5GLAN">
        <front>
          <title>SP-181129, Work Item Description, Vertical_LAN(SA2), 5GS Enhanced Support of Vertical and LAN Services</title>
          <author initials="" surname="3GPP-5glan" fullname="3GPP-5glan">
            <organization showOnFrontPage="true"/>
          </author>
          <date year="2021"/>
        </front>
        <seriesInfo name="3GPP" value=""/>
      </reference>
      <reference anchor="SarNet2021" quoteTitle="true" target="https://doi.org/10.1109/hpsr52026.2021.9481814" derivedAnchor="SarNet2021">
        <front>
          <title>Service-based Forwarding via Programmable Dataplanes</title>
          <author fullname="Rene Glebke" initials="R." surname="Glebke">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Dirk Trossen" initials="D." surname="Trossen">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Ike Kunze" initials="I." surname="Kunze">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="David Lou" initials="D." surname="Lou">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Jan Ruth" initials="J." surname="Ruth">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Mirko Stoffers" initials="M." surname="Stoffers">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Klaus Wehrle" initials="K." surname="Wehrle">
            <organization showOnFrontPage="true"/>
          </author>
          <date month="June" year="2021"/>
        </front>
        <refcontent>2021 IEEE 22nd International Conference on High Performance Switching and Routing (HPSR), pp. 1-8</refcontent>
        <seriesInfo name="DOI" value="10.1109/hpsr52026.2021.9481814"/>
      </reference>
      <reference anchor="SILKROAD" quoteTitle="true" target="https://doi.org/10.1145/3098822.3098824" derivedAnchor="SILKROAD">
        <front>
          <title>SilkRoad: Making Stateful Layer-4 Load Balancing Fast and Cheap Using Switching ASICs</title>
          <author fullname="Rui Miao" initials="R." surname="Miao">
            <organization showOnFrontPage="true">University of Southern California</organization>
          </author>
          <author fullname="Hongyi Zeng" initials="H." surname="Zeng">
            <organization showOnFrontPage="true">Facebook</organization>
          </author>
          <author fullname="Changhoon Kim" initials="C." surname="Kim">
            <organization showOnFrontPage="true">Barefoot Networks</organization>
          </author>
          <author fullname="Jeongkeun Lee" initials="J." surname="Lee">
            <organization showOnFrontPage="true">Barefoot Networks</organization>
          </author>
          <author fullname="Minlan Yu" initials="M." surname="Yu">
            <organization showOnFrontPage="true">Yale University</organization>
          </author>
          <date month="August" year="2017"/>
        </front>
        <refcontent>Proceedings of the Conference of the ACM Special Interest Group on Data Communication, pp. 15-28</refcontent>
        <seriesInfo name="DOI" value="10.1145/3098822.3098824"/>
      </reference>
      <reference anchor="SPLITTLS" quoteTitle="true" target="https://doi.org/10.1145/2829988.2787482" derivedAnchor="SPLITTLS">
        <front>
          <title>Multi-Context TLS (mcTLS): Enabling Secure In-Network Functionality in TLS</title>
          <author fullname="David Naylor" initials="D." surname="Naylor">
            <organization showOnFrontPage="true">Carnegie Mellon University, Pittsburgh, PA, USA</organization>
          </author>
          <author fullname="Kyle Schomp" initials="K." surname="Schomp">
            <organization showOnFrontPage="true">Case Western Reserve University, Cleveland, OH, USA</organization>
          </author>
          <author fullname="Matteo Varvello" initials="M." surname="Varvello">
            <organization showOnFrontPage="true">Telefonica Research, Barcelona, Spain</organization>
          </author>
          <author fullname="Ilias Leontiadis" initials="I." surname="Leontiadis">
            <organization showOnFrontPage="true">Telefonica Research, Barcelona, Spain</organization>
          </author>
          <author fullname="Jeremy Blackburn" initials="J." surname="Blackburn">
            <organization showOnFrontPage="true">Telefonica Research, Barcelona, USA</organization>
          </author>
          <author fullname="Diego R. Lopez" initials="D." surname="Lopez">
            <organization showOnFrontPage="true">Telefonica, Barcelona, Spain</organization>
          </author>
          <author fullname="Konstantina Papagiannaki" initials="K." surname="Papagiannaki">
            <organization showOnFrontPage="true">Telefonica Research, Barcelona, Spain</organization>
          </author>
          <author fullname="Pablo Rodriguez Rodriguez" initials="P." surname="Rodriguez Rodriguez">
            <organization showOnFrontPage="true">Telefonica Research, Barcelona, Spain</organization>
          </author>
          <author fullname="Peter Steenkiste" initials="P." surname="Steenkiste">
            <organization showOnFrontPage="true">Carnegie Mellon University, Pittsburgh, PA, USA</organization>
          </author>
          <date month="August" year="2015"/>
        </front>
        <refcontent>ACM SIGCOMM Computer Communication Review, vol. 45, no. 4, pp. 199-212</refcontent>
        <seriesInfo name="DOI" value="10.1145/2829988.2787482"/>
      </reference>
      <reference anchor="Stoyanov" target="https://dl.acm.org/doi/10.1145/3426744.3431329" quoteTitle="true" derivedAnchor="Stoyanov">
        <front>
          <title>MTPSA: Multi-Tenant Programmable Switches</title>
          <author initials="R." surname="Stoyanov">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="N." surname="Zilberman">
            <organization showOnFrontPage="true"/>
          </author>
          <date month="December" year="2020"/>
        </front>
        <seriesInfo name="DOI" value="10.1145/3426744.3431329"/>
        <refcontent>Proceedings of the 3rd P4 Workshop in Europe, pp. 43-48</refcontent>
      </reference>
      <reference anchor="Sultana" target="https://flightplan.cis.upenn.edu/flightplan.pdf" quoteTitle="true" derivedAnchor="Sultana">
        <front>
          <title>Flightplan: Dataplane Disaggregation and Placement for P4 Programs</title>
          <author initials="N." surname="Sultana">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="J." surname="Sonchack">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="H." surname="Giesen">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="I." surname="Pedisich">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="Z." surname="Han">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="N." surname="Shyamkumar">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="S." surname="Burad">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="A." surname="DeHon">
            <organization showOnFrontPage="true"/>
          </author>
          <author initials="B. T." surname="Loo">
            <organization showOnFrontPage="true"/>
          </author>
        </front>
      </reference>
      <reference anchor="TIRPITZ-REDUCIO" quoteTitle="true" target="https://doi.org/10.1145/3701717.3730547" derivedAnchor="TIRPITZ-REDUCIO">
        <front>
          <title>Reducio: Data Aggregation and Stability Detection for Industrial Processes Using In-Network Computing</title>
          <author fullname="Liam Tirpitz" initials="L." surname="Tirpitz"/>
          <author fullname="Ike Kunze" initials="I." surname="Kunze"/>
          <author fullname="Philipp Niemietz" initials="P." surname="Niemietz"/>
          <author fullname="Anna Kathrin Gerhardus" initials="A. K." surname="Gerhardus"/>
          <author fullname="Thomas Bergs" initials="T." surname="Bergs"/>
          <author fullname="Klaus Wehrle" initials="K." surname="Wehrle"/>
          <author fullname="Sandra Geisler" initials="S." surname="Geisler"/>
          <date month="June" year="2025"/>
        </front>
        <refcontent>DEBS '25: Proceedings of the 19th ACM International Conference on Distributed and Event-based Systems, pp. 98-109</refcontent>
        <seriesInfo name="DOI" value="10.1145/3701717.3730547"/>
      </reference>
      <reference anchor="TLSSURVEY" quoteTitle="true" target="https://doi.org/10.1145/3580522" derivedAnchor="TLSSURVEY">
        <front>
          <title>A Survey and Analysis of TLS Interception Mechanisms and Motivations: Exploring how end-to-end TLS is made 'end-to-me' for web traffic</title>
          <author fullname="Xavier de Carné de Carnavalet" initials="X." surname="de Carné de Carnavalet">
            <organization showOnFrontPage="true">The Hong Kong Polytechnic University, Hong Kong SAR</organization>
          </author>
          <author fullname="Paul C. van Oorschot" initials="P." surname="van Oorschot">
            <organization showOnFrontPage="true">Carleton University, Ontario, Canada</organization>
          </author>
          <date month="July" year="2023"/>
        </front>
        <refcontent>ACM Computing Surveys, vol. 55, no. 13s, pp. 1-40</refcontent>
        <seriesInfo name="DOI" value="10.1145/3580522"/>
      </reference>
      <reference anchor="TOSCA" target="https://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.3/os/TOSCA-Simple-Profile-YAML-v1.3-os.pdf" quoteTitle="true" derivedAnchor="TOSCA">
        <front>
          <title>TOSCA Simple Profile in YAML Version 1.3</title>
          <author fullname="Matt Rutkowski" role="editor"/>
          <author fullname="Chris Lauwers" role="editor"/>
          <author fullname="Claude Noshpitz" role="editor"/>
          <author fullname="Calin Curescu" role="editor"/>
          <date month="February" year="2020"/>
        </front>
        <refcontent>OASIS Standard</refcontent>
      </reference>
      <reference anchor="TS23.501" target="https://www.3gpp.org/DynaReport/23501.htm" quoteTitle="true" derivedAnchor="TS23.501">
        <front>
          <title>System Architecture for the 5G System; Stage 2 (Rel.17)</title>
          <author>
            <organization showOnFrontPage="true">3GPP</organization>
          </author>
          <date year="2021"/>
        </front>
        <seriesInfo name="3GPP" value="TS 23.501"/>
      </reference>
      <reference anchor="TS23.502" target="https://www.3gpp.org/DynaReport/23502.htm" quoteTitle="true" derivedAnchor="TS23.502">
        <front>
          <title>Procedures for the 5G System; Stage 2 (Rel.17)</title>
          <author>
            <organization showOnFrontPage="true">3GPP</organization>
          </author>
          <date year="2021"/>
        </front>
        <seriesInfo name="3GPP" value="TS 23.502"/>
      </reference>
      <reference anchor="I-D.irtf-coinrg-use-case-analysis" target="https://datatracker.ietf.org/doc/html/draft-irtf-coinrg-use-case-analysis-02" quoteTitle="true" derivedAnchor="USE-CASE-AN">
        <front>
          <title>Use Case Analysis for Computing in the Network</title>
          <author fullname="Ike Kunze" initials="I." surname="Kunze">
            <organization showOnFrontPage="true">RWTH Aachen University</organization>
          </author>
          <author fullname="Jungha Hong" initials="J." surname="Hong">
            <organization showOnFrontPage="true">ETRI</organization>
          </author>
          <author fullname="Klaus Wehrle" initials="K." surname="Wehrle">
            <organization showOnFrontPage="true">RWTH Aachen University</organization>
          </author>
          <author fullname="Dirk Trossen" initials="D." surname="Trossen">
            <organization showOnFrontPage="true">Huawei Technologies Duesseldorf GmbH</organization>
          </author>
          <author fullname="Marie-Jose Montpetit" initials="M." surname="Montpetit">
            <organization showOnFrontPage="true">Concordia University</organization>
          </author>
          <author fullname="Xavier de Foy" initials="X." surname="de Foy">
            <organization showOnFrontPage="true">InterDigital Communications, LLC</organization>
          </author>
          <author fullname="David Griffin" initials="D." surname="Griffin">
            <organization showOnFrontPage="true">University College London</organization>
          </author>
          <author fullname="Miguel Rio" initials="M." surname="Rio">
            <organization showOnFrontPage="true">University College London</organization>
          </author>
          <date day="4" month="December" year="2024"/>
          <abstract>
            <t indent="0">Computing in the Network (COIN) has the potential to enable a wide variety of use cases. The diversity in use cases makes challenges in defining general considerations. This document analyzes the use cases described in a COINRG companion document and potentially explores additional settings, to identify general aspects of interest across all use cases. The insights gained from this analysis will guide future COIN discussions.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-irtf-coinrg-use-case-analysis-02"/>
        <refcontent>Work in Progress</refcontent>
      </reference>
      <reference anchor="VESTIN" quoteTitle="true" target="https://doi.org/10.1109/etfa.2018.8502456" derivedAnchor="VESTIN">
        <front>
          <title>FastReact: In-Network Control and Caching for Industrial Control Networks using Programmable Data Planes</title>
          <author fullname="Jonathan Vestin" initials="J." surname="Vestin">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Andreas Kassler" initials="A." surname="Kassler">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Johan Akerberg" initials="J." surname="Akerberg">
            <organization showOnFrontPage="true"/>
          </author>
          <date month="September" year="2018"/>
        </front>
        <refcontent>2018 IEEE 23rd International Conference on Emerging Technologies and Factory Automation (ETFA), pp. 219-226</refcontent>
        <seriesInfo name="DOI" value="10.1109/etfa.2018.8502456"/>
      </reference>
      <reference anchor="WirelessNet2024" quoteTitle="true" target="https://doi.org/10.1007/s11276-024-03706-4" derivedAnchor="WirelessNet2024">
        <front>
          <title>Online delay optimization for MEC and RIS-assisted wireless VR networks</title>
          <author fullname="Jie Jia" initials="J." surname="Jia">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Leyou Yang" initials="L." surname="Yang">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Jian Chen" initials="J." surname="Chen">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Lidao Ma" initials="L." surname="Ma">
            <organization showOnFrontPage="true"/>
          </author>
          <author fullname="Xingwei Wang" initials="X." surname="Wang">
            <organization showOnFrontPage="true"/>
          </author>
          <date month="March" year="2024"/>
        </front>
        <refcontent>Wireless Networks, vol. 30, no. 4, pp. 2939-2959</refcontent>
        <seriesInfo name="DOI" value="10.1007/s11276-024-03706-4"/>
      </reference>
    </references>
    <section anchor="acknowledgements" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t indent="0" pn="section-appendix.a-1">The authors would like to thank <contact fullname="Eric Wagner"/> for
      providing text on the security considerations and <contact fullname="Jungha Hong"/> for her efforts in continuing the work on the
      use case analysis document that has largely sourced the preliminary
      categorization section of this document.</t>
      <t indent="0" pn="section-appendix.a-2">The authors would further like to thank <contact fullname="Chathura       Sarathchandra"/>, <contact fullname="David Oran"/>, <contact fullname="Phil Eardley"/>, <contact fullname="Stuart Card"/>, <contact fullname="Jeffrey He"/>, <contact fullname="Toerless Eckert"/>, and
      <contact fullname="Jon Crowcroft"/> for reviewing earlier versions of
      the document, <contact fullname="Colin Perkins"/> for his IRTF chair
      review, and <contact fullname="Jerome Francois"/> for his thorough IRSG
      review.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author initials="I." surname="Kunze" fullname="Ike Kunze">
        <organization abbrev="RWTH Aachen" showOnFrontPage="true">RWTH Aachen University</organization>
        <address>
          <postal>
            <street>Ahornstr. 55</street>
            <city>Aachen</city>
            <code>D-52074</code>
            <country>Germany</country>
          </postal>
          <email>kunze@comsys.rwth-aachen.de</email>
        </address>
      </author>
      <author initials="K." surname="Wehrle" fullname="Klaus Wehrle">
        <organization abbrev="RWTH Aachen" showOnFrontPage="true">RWTH Aachen University</organization>
        <address>
          <postal>
            <street>Ahornstr. 55</street>
            <city>Aachen</city>
            <code>D-52074</code>
            <country>Germany</country>
          </postal>
          <email>wehrle@comsys.rwth-aachen.de</email>
        </address>
      </author>
      <author initials="D." surname="Trossen" fullname="Dirk Trossen">
        <organization abbrev="DaPaDOT Tech" showOnFrontPage="true">DaPaDOT Tech UG (haftungsbeschränkt)</organization>
        <address>
          <postal>
            <street>Palestrinastr. 7A</street>
            <city>Munich</city>
            <code>D-80639</code>
            <country>Germany</country>
          </postal>
          <email>dirk@dapadot-tech.eu</email>
        </address>
      </author>
      <author initials="M-J." surname="Montpetit" fullname="Marie-Jose Montpetit">
        <organization abbrev="SLICES-RI" showOnFrontPage="true">SLICES-RI</organization>
        <address>
          <postal>
            <street>.</street>
            <city>Paris</city>
            <code/>
            <country>France</country>
          </postal>
          <email>marie-jose.montpetit@slices-ri.eu</email>
        </address>
      </author>
      <author initials="X." surname="de Foy" fullname="Xavier de Foy">
        <organization showOnFrontPage="true">InterDigital Communications, LLC</organization>
        <address>
          <postal>
            <street>1000 Sherbrooke West</street>
            <city>Montreal</city>
            <code>H3A 3G4</code>
            <country>Canada</country>
          </postal>
          <email>xavier.defoy@interdigital.com</email>
        </address>
      </author>
      <author initials="D." surname="Griffin" fullname="David Griffin">
        <organization abbrev="UCL" showOnFrontPage="true">University College London</organization>
        <address>
          <postal>
            <street>Gower St</street>
            <city>London</city>
            <code>WC1E 6BT</code>
            <country>United Kingdom</country>
          </postal>
          <email>d.griffin@ucl.ac.uk</email>
        </address>
      </author>
      <author initials="M." surname="Rio" fullname="Miguel Rio">
        <organization abbrev="UCL" showOnFrontPage="true">University College London</organization>
        <address>
          <postal>
            <street>Gower St</street>
            <city>London</city>
            <code>WC1E 6BT</code>
            <country>United Kingdom</country>
          </postal>
          <email>miguel.rio@ucl.ac.uk</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
