<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.34 (Ruby 3.2.2) -->
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-gruessing-moq-requirements-05" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.1 -->
  <front>
    <title abbrev="MoQ Use Cases and Requirements">Media Over QUIC - Use Cases and Requirements for Media Transport Protocol Design</title>
    <seriesInfo name="Internet-Draft" value="draft-gruessing-moq-requirements-05"/>
    <author initials="J." surname="Gruessing" fullname="James Gruessing">
      <organization>Nederlandse Publieke Omroep</organization>
      <address>
        <postal>
          <country>Netherlands</country>
        </postal>
        <email>james.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="S." surname="Dawkins" fullname="Spencer Dawkins">
      <organization>Tencent America LLC</organization>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>spencerdawkins.ietf@gmail.com</email>
      </address>
    </author>
    <date year="2023" month="May" day="31"/>
    <area>applications</area>
    <workgroup>MOQ Mailing List</workgroup>
    <keyword>Internet-Draft QUIC</keyword>
    <abstract>
      <?line 72?>

<t>This document describes use cases and requirements that guide the specification of a simple, low-latency media delivery solution for ingest and distribution, using either the QUIC protocol or WebTransport.</t>
    </abstract>
    <note>
      <name>Note to Readers</name>
      <?line 76?>

<t><em>RFC Editor: please remove this section before publication</em></t>
      <t>Source code and issues for this draft can be found at
<eref target="https://github.com/fiestajetsam/draft-gruessing-moq-requirements">https://github.com/fiestajetsam/draft-gruessing-moq-requirements</eref>.</t>
      <t>Discussion of this draft should take place on the IETF Media Over QUIC (MoQ)
mailing list, at <eref target="https://www.ietf.org/mailman/listinfo/moq">https://www.ietf.org/mailman/listinfo/moq</eref>.</t>
    </note>
  </front>
  <middle>
    <?line 86?>

<section anchor="intro">
      <name>Introduction</name>
      <t>This document describes use cases and requirements that guide the specification of a simple, low-latency media delivery solution for ingest and distribution <xref target="MOQ-charter"/>, using either the QUIC protocol <xref target="RFC9000"/> or WebTransport <xref target="WebTrans-charter"/> as transport protocols.</t>
      <section anchor="note-for-moq-working-group-participants">
        <name>Note for MOQ Working Group participants</name>
        <t>When adopted, this document is intended to capture use cases that are in scope for work on the MOQ protocol <xref target="MOQ-charter"/>, and requirements that arise from these use cases.</t>
        <t>As of this writing, the authors have not planned to request publication on this document, based on our understanding of the IESG's statement on "Support Documents in IETF Working Groups" <xref target="IESG-sdwg"/>, which says (among other things):</t>
        <ul empty="true">
          <li>
            <t>While writing down such things as requirements and use cases help to get a common understanding (and often common language) between participants in the working group, support documentation doesn’t always have a high archival value. Under most circumstances, the IESG encourages the community to consider alternate mechanisms for publishing this content, such as on a working group wiki, in an informational appendix of a solution document, or simply as an expired draft.</t>
          </li>
        </ul>
        <t>It seems reasonable for the working group to improve this document, and then consider whether the result justifies publication as a part of the RFC archival document series.</t>
      </section>
    </section>
    <section anchor="term">
      <name>Terminology</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<section anchor="distinguishing-between-interactive-and-live-streaming-use-cases">
        <name>Distinguishing between Interactive and Live Streaming Use Cases</name>
        <t>The MOQ charter <xref target="MOQ-charter"/> lists three use cases as being in scope of the MOQ protocol</t>
        <ul empty="true">
          <li>
            <t>use cases including live streaming, gaming, and media conferencing</t>
          </li>
        </ul>
        <t>but does not include (directly or by reference) a definition of "live streaming" or "interactive" (a term that has been used to describe gaming and media conferencing, as distinct from "live streaming"). It seems useful to describe these two terms, as classes of use cases, before we describe individual use cases in more detail.</t>
        <t>MOQ participants have discussed making this distinction based on quantitative measures such as latency, but since MOQ use cases can include an arbitrary number of relays, we offer a distinction that is based on how users experience that distinction. If two users are able to interact in the way that seems interactive, as described in the proposed definitions, the use case is interactive; if two users are unable to interact in that way, the use case is live streaming.</t>
        <t>We propose these definitions:</t>
        <dl>
          <dt><strong>Interactive</strong>:</dt>
          <dd>
            <t>a use case with coupled bidirectional media flows</t>
          </dd>
        </dl>
        <t>Interactive use cases have bidirectional media flows sufficiently coupled with each other, that media from one sender can cause the receiver to reply by sending its own media back to the original sender.</t>
        <t>For instance, a speaker in a conferencing application might make a statement, and then ask, "but what do you folks think?" If one of the listeners is able to answer in a timeframe that seems natural, without without waiting for the current speaker to explicitly "hand over" control of the conversation, this would qualify as "Interactive".</t>
        <dl>
          <dt><strong>Live Streaming</strong>:</dt>
          <dd>
            <t>a use case with unidirectional media flows, or uncoupled bidirectional flows</t>
          </dd>
        </dl>
        <t>Live Streaming use cases allow consumers of media to "watch together", without having a sense that one consumer is experiencing the media before another consumer. This does not require the delivery of live media to be strictly synchronized between media consumers, but only that from the viewpoint of individual consumers, media delivery <strong>appears to be</strong> synchronized.</t>
        <t>It is common for live streaming use cases to send media in one direction, and "something else" in the other direction - for instance, a video receiver might be returning requests that the sender change the media encoding or media rate in use, or reorgient a camera. This type of feedback doesn't qualify as "bidirectional media".</t>
        <t>If two sender/receivers are each sending media to the other, but what's being carried in one direction has no relationship with what's being carried in the other direction, this would not qualify as "Interactive".</t>
        <t><strong>Note: these descriptions are a starting point. Feedback and pushback are both welcomed.</strong></t>
      </section>
    </section>
    <section anchor="overallusecases">
      <name>Use Cases Informing This Proposal</name>
      <t>Our goal in this section is to understand the range of use cases that are in scope for "Media Over QUIC" <xref target="MOQ-charter"/>.</t>
      <t>For each use case in this section, we also describe</t>
      <ul spacing="compact">
        <li>the number of senders or receiver in a given session transmitting distinct streams,</li>
        <li>whether a session has bi-directional flows of media from senders and receivers, which may also include timely non-media such as haptics or timed events.</li>
      </ul>
      <t>It is likely that we should add other characteristics, as we come to understand them.</t>
      <section anchor="interact">
        <name>Interactive Media</name>
        <t>The use cases described in this section have one particular attribute in common - the target the lowest possible latency as can be achieved at the trade off of data loss and complexity. For example,</t>
        <ul spacing="compact">
          <li>It may make sense to use FEC <xref target="RFC6363"/> and codec-level packet loss concealment <xref target="RFC6716"/>, rather than selectively retransmitting only lost packets. These mechanisms use more bytes, but do not require multiple round trips in order to recover from packet loss.</li>
          <li>It's generally infeasible to use congestion control schemes like BBR <xref target="I-D.draft-cardwell-iccrg-bbr-congestion-control"/> in many deployments, since BBR has probing mechanisms that rely on temporarily inducing delay, but these mechanisms can then amortize the consequences of induced delay over multiple RTTs.</li>
        </ul>
        <t>This may help to explain why interactive use cases have typically relied on protocols such as RTP <xref target="RFC3550"/>, which provide low-level control of packetization and transmission, with addtional support for retransmission as an optional extension.</t>
        <section anchor="gaming">
          <name>Gaming</name>
          <table>
            <thead>
              <tr>
                <th align="left">Attribute</th>
                <th align="left">Value</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <strong>Senders/Receivers</strong></td>
                <td align="left">One to One</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Bi-directional</strong></td>
                <td align="left">Yes</td>
              </tr>
            </tbody>
          </table>
          <t>In this use case the computation for running a video game (single or
multiplayer) is performed externally on a hosted service, with user inputs from
input devices sent to the server, and media, usually video and audio of gameplay
returned. This may also include the client receiving other types of signaling,
such as triggers for haptic feedback, as well as the client sending media such
as microphone audio for in-game chat with other players. Latency may be
considerably important in this use case as updates to video occur in response
user input, with certain genres of games having high requirements in
responsiveness and/or a high frequency of user input.</t>
        </section>
        <section anchor="remdesk">
          <name>Remote Desktop</name>
          <table>
            <thead>
              <tr>
                <th align="left">Attribute</th>
                <th align="left">Value</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <strong>Senders/Receivers</strong></td>
                <td align="left">One to Many</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Bi-directional</strong></td>
                <td align="left">Yes</td>
              </tr>
            </tbody>
          </table>
          <t>Similar to the gaming use case in many requirements, but where a user wishes to
observe or control the graphical user interface of another computer through
local user interfaces.  Latency requirements with this use case are marginally
different than the gaming use case as greater input latency may be more
tolerated by users. This use case may also include a need to support signalling
and/or transmitting of files or devices connected to the user's computer.</t>
        </section>
        <section anchor="vidconf">
          <name>Video Conferencing/Telephony</name>
          <table>
            <thead>
              <tr>
                <th align="left">Attribute</th>
                <th align="left">Value</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <strong>Senders/Receivers</strong></td>
                <td align="left">Many to Many</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Bi-directional</strong></td>
                <td align="left">Yes</td>
              </tr>
            </tbody>
          </table>
          <t>Where media is both sent and received; This may include audio from both
microphone(s) and/or cameras, or may include "screen sharing" or inclusion of
other content such as slide, document, or video presentation. This may be done
as client/server, or peer to peer with a many to many relationship of both
senders and receivers. The target for latency may be as large as 200ms or more for
some media types such as audio, but other media types in this use case have much
more stringent latency targets.</t>
        </section>
      </section>
      <section anchor="hybrid-interactive-and-live-media">
        <name>Hybrid Interactive and Live Media</name>
        <t>For the video conferencing/telephony use case, there can be additional scenarios
where the audience greatly outnumbers the concurrent active participants, but
any member of the audience could participate. As this has a much larger total
number of participants - as many as Live Media Streaming <xref target="lmstream"/>, but with
the bi-directionality of conferencing, this should be considered a "hybrid". There can be additional functionality as well that overlap between the two, such as "live rewind", or recording abilities.</t>
        <t>Another consideration is the limits of "human bandwidth" - as the number of
sources are included into a given session increase, the amount of media that can
usefully understood by a single person diminishes. To put it more simply - too
many people talking at once is much more difficult to understand than one person
speaking at a time, and this varies on the audience and circumstance.
Subsequently this will define some limitations in the number of potential
concurrent or semi-concurrent, bidirectional communications that occur.</t>
      </section>
      <section anchor="lm-media">
        <name>Live Media</name>
        <t>The use cases in this section like those in <xref target="interact"/> do set some expectations to minimise high and/or highly variable latency, however their key difference is that are seldom bi-directional as their basis is on mass-consumption of media or the contribution of it into a platform to syndicate, or distribute. Latency is less noticeable over loss, and may be more accepting of having slightly more latency to increase guarantee of delivery.</t>
        <section anchor="lmingest">
          <name>Live Media Ingest</name>
          <table>
            <thead>
              <tr>
                <th align="left">Attribute</th>
                <th align="left">Value</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <strong>Senders/Receivers</strong></td>
                <td align="left">One to One</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Bi-directional</strong></td>
                <td align="left">No</td>
              </tr>
            </tbody>
          </table>
          <t>Where media is received from a source for onwards handling into a distribution
platform. The media may comprise of multiple audio and/or video sources.
Bitrates may either be static or set dynamically by signaling of connection
information (bandwidth, latency) based on data sent by the receiver, and the
media may go through additional steps of transcoding or transformation before
being distributed.</t>
        </section>
        <section anchor="lmsynd">
          <name>Live Media Syndication</name>
          <table>
            <thead>
              <tr>
                <th align="left">Attribute</th>
                <th align="left">Value</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <strong>Senders/Receivers</strong></td>
                <td align="left">One to One</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Bi-directional</strong></td>
                <td align="left">No</td>
              </tr>
            </tbody>
          </table>
          <t>Where media is sent onwards to another platform for further distribution and not
directly used for presentation to an audience, however may be monitored by
operational systems and/or people. The media may be compressed down to a bitrate
lower than source, but larger than final distribution output. Streams may be
redundant with failover mechanisms in place.</t>
        </section>
        <section anchor="lmstream">
          <name>Live Media Streaming</name>
          <table>
            <thead>
              <tr>
                <th align="left">Attribute</th>
                <th align="left">Value</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <strong>Senders/Receivers</strong></td>
                <td align="left">One to Many</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Bi-directional</strong></td>
                <td align="left">No</td>
              </tr>
            </tbody>
          </table>
          <t>Where media is received from a live broadcast or stream either as a broadcast
with fixed duration or as ongoing 24/7 output. The number of receivers may vary
depending on the type of content; breaking news events may see sharp, sudden
spikes, whereas sporting and entertainment events may see a more gradual ramp
up with a higher sustained peak with some changes based on match breaks or
interludes.</t>
          <t>Such broadcasts may comprise of multiple audio or video outputs with different
codecs or bitrates, and may also include other types of media essence such as
subtitles or timing signalling information (e.g. markers to indicate change of
behaviour in client such as advertisement breaks). The use of "live rewind"
where a window of media between the live edge and trailing edge can be made
available for clients to playback, either because the local player falls behind
edge or because the viewer wishes to play back from a point in the past.</t>
        </section>
      </section>
    </section>
    <section anchor="req-sec">
      <name>Requirements for Protocol Work</name>
      <t>Our goal in this section is to understand the requirements that result from the use cases described in <xref target="overallusecases"/>.</t>
      <section anchor="notes-to-the-reader">
        <name>Notes to the Reader</name>
        <ul spacing="compact">
          <li>Note: the intention for the requirements in this document is that they are useful for MOQ working group participants, to recognize constraints, and useful for readers outside the MOQ working group to understand the high-level functionality of the MOQ protocol, as they consider implementation and deployment of systems that rely on the MOQ protocol.</li>
        </ul>
      </section>
      <section anchor="proto-cons">
        <name>Specific Protocol Considerations</name>
        <t>In order to support the various topologies and patterns of media flows with the protocol, the protocol <bcp14>MUST</bcp14> support both sending and receiving of media streams, as separate actions or concurrently in a given connection.</t>
        <section anchor="delivery-assurance-vs-delay">
          <name>Delivery Assurance vs. Delay</name>
          <t>Different use cases have varying requirements with respect to the tradeoffs associated in having guarantee of delivery vs delay - in some (such as telephony) it may be acceptable to drop some or all of the media as a result of changes in network connectivity, throughput, or congestion whereas in other scenarios all media must arrive at the receiving end even if delayed. There <bcp14>SHOULD</bcp14> be support for some means for a connection to signal which media may be abandoned, and behaviours of both senders receivers defined when delay or loss occurs. Where multiple variants of media are sent, this <bcp14>SHOULD</bcp14> be done so in a way that provides pipelining so each media stream may be processed in parallel.</t>
        </section>
        <section anchor="support-webtransportraw-quic-as-media-transport">
          <name>Support Webtransport/Raw QUIC as media transport</name>
          <t>There should be a degree of decoupling from the underlying transport protocols and MoQ itself despite the "Q" in the name, in particular to provide future agility and prevent any potential ossification being tied to specific version(s) of dependant protocols.</t>
          <t>Many of the use cases will be deployed in contexts where web browsers are the common application runtime; thus the use of existing protocols and APIs is desireable for implementations. Support for WebTransport <xref target="I-D.draft-ietf-webtrans-overview"/> will be defined, although implementations or deployments running outside browsers will not need to use WebTransport, thus support for the protocol running directly atop QUIC should be provided.</t>
          <t>Considerations should be made clear with respect to modes where WebTransport "falls back" to using HTTP/2 or other future non-QUIC based protocol.</t>
        </section>
        <section anchor="MOQ-negotiation">
          <name>Media Negotiation &amp; Agility</name>
          <t>All entities which directly process media will have support for a variety of media codecs, both codecs which exist now and codecs that will be defined in the future. Consequently the protocol will provide the capability for sender and receiver to negotiate which media codecs will be used in a given session.</t>
          <t>The protocol <bcp14>SHOULD</bcp14> remain codec agnostic as much as possible, and should allow for new media formats and codecs to be supported without change in specification.</t>
          <t>The working group should consider if a minimum, suggestive set of codecs should be supported for the purposes of interop, however this <bcp14>SHOULD</bcp14> avoid being strict to simplify use cases and deployments that don't require certain capability e.g. telephony which may not require video codecs.</t>
        </section>
      </section>
      <section anchor="media-data-model">
        <name>Media Data Model</name>
        <t>As the protocol will handle many different types of media, classifications, and variations when all entities describe the media a model should be defined which represents this, with a clear addressing scheme. This should factor in at least, but not limited to allow future types:</t>
        <dl>
          <dt>Media Types</dt>
          <dd>
            <t>Video, audio, subtitles, ancillary data</t>
          </dd>
          <dt>Classifications</dt>
          <dd>
            <t>Codec, language, layers</t>
          </dd>
          <dt>Variations</dt>
          <dd>
            <t>For each stream, the resolution(s), bitrate(s). Each variant should be uniquely identifiable and addressable.</t>
          </dd>
        </dl>
        <t>Considerations should be made to addressing of individual audio/video frames as opposed to groups, in addition to how the model incorporates signalling of prioritisation, media dependency, and cacheability to all entities.</t>
      </section>
      <section anchor="pub-media">
        <name>Publishing Media</name>
        <t>Many of the use cases have bi-directional flows of media, with clients both sending and receiving media concurrently, thus the protocol should have a unified approach in connection negotiation and signalling to send and received media both at the start and ongoing in the lifetime of a session including describing when flow of media is unsupported (e.g. a live media server signalling it does not support receiving from a given client).</t>
        <t>In the initiation of a session both client and server must perform negotiation in order to agree upon a variety of details before media can move in any direction:</t>
        <ul spacing="compact">
          <li>Is the client authenticated and subsequently authorised to initiate a connection?</li>
          <li>What media is available, and for each what are the parameters such as codec, bitrate, and resolution etc?</li>
          <li>Can media move bi-directionally, or is it unidirectional only?</li>
        </ul>
      </section>
      <section anchor="naming">
        <name>Naming and Addressing Media Resources</name>
        <t>As multiple streams of media may be available for concurrent sending such as multiple camera views or audio tracks, a means of both identifying the technical properties of each resource (codec, bitrate, etc) as well as a useful identification for playback should be part of the protocol. A base level of optional metadata e.g. the known language of an audio track or name of participant's camera should be supported, but further extended metadata of the contents of the media or its ontology should not be supported.</t>
        <section anchor="scoped-to-an-origindomain-application-specific">
          <name>Scoped to an Origin/Domain, Application specific.</name>
        </section>
        <section anchor="allows-subscribing-or-requesting-for-the-data-matching-the-name-by-the-consumers">
          <name>Allows subscribing or requesting for the data matching the name by the consumers</name>
        </section>
      </section>
      <section anchor="Packaging">
        <name>Packaging Media</name>
        <t>Packaging of media describes how raw media will be encapsulated. There are at a high level two approaches to this:</t>
        <ul spacing="compact">
          <li>Within the protocol itself, where the protocol defines the ancillary data required to decode each media type the protocol supports.</li>
          <li>A common encapsulation format such as there are advantages to using an existing generic media packaging format (such as CMAF <xref target="CMAF"/> or other ISOBMFF <xref target="ISOBMFF"/> subsets) which define a generic method for all media and handles ancillary decode information.</li>
        </ul>
        <t>The working group must agree on which approach should be taken to the packaging of media, taking into consideration the various technical trade offs that each approach provides.</t>
        <ul spacing="compact">
          <li>If the working group decides to describe media encapsulation as part of the MOQ protocol, this will require a new version of the MOQ protocol in order to signal the receiver that a new media encapsulation format may be present.</li>
          <li>If the working group decides to use a common encapsulation format, the mechanisms within the protocol <bcp14>SHOULD</bcp14> allow for new encapsulation formats to be used. Without encapsulation agility, adding or changing the way media is encapsulated will also require a new version of the MOQ protocol, to signal the receiver that a new media encapsulation format may be present.</li>
        </ul>
        <t>MOQ protocol specifications will provide details on the supported media encapsulation(s).</t>
      </section>
      <section anchor="med-consumption">
        <name>Media Consumption</name>
        <t>Receivers <bcp14>SHOULD</bcp14> be able to as part of negotiation of a session <xref target="MOQ-negotiation"/> specify which media to receive, not just with respect to the media format and codec, but also the varient thereof such as resolution or bitrate.</t>
      </section>
      <section anchor="MOQ-network-entities">
        <name>Relays, Caches, and other MOQ Network Elements</name>
        <section anchor="pull-push">
          <name>Pull &amp; Push</name>
          <t>To enable use cases where receivers may wish to address a particular time of media in addition to having the most recently produced media available, both "pull" and "push" of media <bcp14>SHOULD</bcp14> be supported, with consideration that producers and intermediates <bcp14>SHOULD</bcp14> also signal what media is available (commonly referred to as a "DVR window"). Behaviours around cache durations for each MoQ entity should be defined.</t>
        </section>
      </section>
      <section anchor="MOQ-security">
        <name>Security</name>
        <section anchor="authentication-authorisation">
          <name>Authentication &amp; Authorisation</name>
          <t>Whilst QUIC and conversely TLS supports the ability for mutual authentication through client and server presenting certificates and performing validation, this is infeasible in many use cases where provisioning of client TLS certificates is unsupported or infeasible. Thus, support for a primitive method of authentication between MoQ entities <bcp14>SHOULD</bcp14> be included to authenticate entities between one another, noting that implementations and deployments should determine which authorisation model if any is applicable.</t>
        </section>
        <section anchor="MOQ-media-encryption">
          <name>Media Encryption</name>
          <t>End-to-end security describes the use of encryption of the media stream(s) to provide confidentiality in the presence of unauthorized intermediates or observers and prevent or restrict ability to decrypt the media without authorization. Generally, there are three aspects of end-to-end media security:</t>
          <ul spacing="compact">
            <li>Digital Rights Management, which refers to the authorization of receivers to decode a media stream.</li>
            <li>Sender-to-Receiver Media Security, which refers to the ability of media senders and receivers to transfer media while protected from authorized intermediates and observers, and</li>
            <li>Node-to-node Media Security, which refers to security when authorized intermediaries are needed to transform media into a form acceptable to authorized receivers. For example, this might refer to a video transcoder between the media sender and receiver.</li>
          </ul>
          <t>**Note: "Node-to-node" refers to a path segment connecting two MOQ nodes, that makes up part of the end-to-end path between the MOQ sender and ultimate MOQ receiver.</t>
          <t>Support for encrypted media <bcp14>SHOULD</bcp14> be available in the protocol to support the above use cases, with key exchange and decryption authorisation handled externally. The protocol <bcp14>SHOULD</bcp14> provide metadata for entities which process media to perform key exchange and decrypt.</t>
        </section>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document makes no requests of IANA.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>As this document is intended to guide discussion and consensus, it introduces
no security considerations of its own.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner">
              <organization/>
            </author>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba">
              <organization/>
            </author>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC3550">
          <front>
            <title>RTP: A Transport Protocol for Real-Time Applications</title>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne">
              <organization/>
            </author>
            <author fullname="S. Casner" initials="S." surname="Casner">
              <organization/>
            </author>
            <author fullname="R. Frederick" initials="R." surname="Frederick">
              <organization/>
            </author>
            <author fullname="V. Jacobson" initials="V." surname="Jacobson">
              <organization/>
            </author>
            <date month="July" year="2003"/>
            <abstract>
              <t>This memorandum describes RTP, the real-time transport protocol.  RTP provides end-to-end network transport functions suitable for applications transmitting real-time data, such as audio, video or simulation data, over multicast or unicast network services.  RTP does not address resource reservation and does not guarantee quality-of- service for real-time services.  The data transport is augmented by a control protocol (RTCP) to allow monitoring of the data delivery in a manner scalable to large multicast networks, and to provide minimal control and identification functionality.  RTP and RTCP are designed to be independent of the underlying transport and network layers.  The protocol supports the use of RTP-level translators and mixers. Most of the text in this memorandum is identical to RFC 1889 which it obsoletes.  There are no changes in the packet formats on the wire, only changes to the rules and algorithms governing how the protocol is used. The biggest change is an enhancement to the scalable timer algorithm for calculating when to send RTCP packets in order to minimize transmission in excess of the intended rate when many participants join a session simultaneously.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="64"/>
          <seriesInfo name="RFC" value="3550"/>
          <seriesInfo name="DOI" value="10.17487/RFC3550"/>
        </reference>
        <reference anchor="RFC6363">
          <front>
            <title>Forward Error Correction (FEC) Framework</title>
            <author fullname="M. Watson" initials="M." surname="Watson">
              <organization/>
            </author>
            <author fullname="A. Begen" initials="A." surname="Begen">
              <organization/>
            </author>
            <author fullname="V. Roca" initials="V." surname="Roca">
              <organization/>
            </author>
            <date month="October" year="2011"/>
            <abstract>
              <t>This document describes a framework for using Forward Error Correction (FEC) codes with applications in public and private IP networks to provide protection against packet loss.  The framework supports applying FEC to arbitrary packet flows over unreliable transport and is primarily intended for real-time, or streaming, media.  This framework can be used to define Content Delivery Protocols that provide FEC for streaming media delivery or other packet flows.  Content Delivery Protocols defined using this framework can support any FEC scheme (and associated FEC codes) that is compliant with various requirements defined in this document. Thus, Content Delivery Protocols can be defined that are not specific to a particular FEC scheme, and FEC schemes can be defined that are not specific to a particular Content Delivery Protocol.   [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6363"/>
          <seriesInfo name="DOI" value="10.17487/RFC6363"/>
        </reference>
        <reference anchor="RFC6716">
          <front>
            <title>Definition of the Opus Audio Codec</title>
            <author fullname="JM. Valin" initials="JM." surname="Valin">
              <organization/>
            </author>
            <author fullname="K. Vos" initials="K." surname="Vos">
              <organization/>
            </author>
            <author fullname="T. Terriberry" initials="T." surname="Terriberry">
              <organization/>
            </author>
            <date month="September" year="2012"/>
            <abstract>
              <t>This document defines the Opus interactive speech and audio codec. Opus is designed to handle a wide range of interactive audio applications, including Voice over IP, videoconferencing, in-game chat, and even live, distributed music performances.  It scales from low bitrate narrowband speech at 6 kbit/s to very high quality stereo music at 510 kbit/s.  Opus uses both Linear Prediction (LP) and the Modified Discrete Cosine Transform (MDCT) to achieve good compression of both speech and music.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6716"/>
          <seriesInfo name="DOI" value="10.17487/RFC6716"/>
        </reference>
        <reference anchor="RFC9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar">
              <organization/>
            </author>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson">
              <organization/>
            </author>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol.  QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances.  Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
        <reference anchor="I-D.draft-cardwell-iccrg-bbr-congestion-control">
          <front>
            <title>BBR Congestion Control</title>
            <author fullname="Neal Cardwell" initials="N." surname="Cardwell">
              <organization>Google</organization>
            </author>
            <author fullname="Yuchung Cheng" initials="Y." surname="Cheng">
              <organization>Google</organization>
            </author>
            <author fullname="Soheil Hassas Yeganeh" initials="S. H." surname="Yeganeh">
              <organization>Google</organization>
            </author>
            <author fullname="Ian Swett" initials="I." surname="Swett">
              <organization>Google</organization>
            </author>
            <author fullname="Van Jacobson" initials="V." surname="Jacobson">
              <organization>Google</organization>
            </author>
            <date day="7" month="March" year="2022"/>
            <abstract>
              <t>   This document specifies the BBR congestion control algorithm.  BBR
   ("Bottleneck Bandwidth and Round-trip propagation time") uses recent
   measurements of a transport connection's delivery rate, round-trip
   time, and packet loss rate to build an explicit model of the network
   path.  BBR then uses this model to control both how fast it sends
   data and the maximum volume of data it allows in flight in the
   network at any time.  Relative to loss-based congestion control
   algorithms such as Reno [RFC5681] or CUBIC [RFC8312], BBR offers
   substantially higher throughput for bottlenecks with shallow buffers
   or random losses, and substantially lower queueing delays for
   bottlenecks with deep buffers (avoiding "bufferbloat").  BBR can be
   implemented in any transport protocol that supports packet-delivery
   acknowledgment.  Thus far, open source implementations are available
   for TCP [RFC793] and QUIC [RFC9000].  This document specifies version
   2 of the BBR algorithm, also sometimes referred to as BBRv2 or bbr2.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-cardwell-iccrg-bbr-congestion-control-02"/>
        </reference>
        <reference anchor="I-D.draft-kpugin-rush">
          <front>
            <title>RUSH - Reliable (unreliable) streaming protocol</title>
            <author fullname="Kirill Pugin" initials="K." surname="Pugin">
              <organization>Facebook</organization>
            </author>
            <author fullname="Alan Frindell" initials="A." surname="Frindell">
              <organization>Facebook</organization>
            </author>
            <author fullname="Jorge Cenzano Ferret" initials="J. C." surname="Ferret">
              <organization>Facebook</organization>
            </author>
            <author fullname="Jake Weissman" initials="J." surname="Weissman">
              <organization>Facebook</organization>
            </author>
            <date day="10" month="May" year="2023"/>
            <abstract>
              <t>   RUSH is an application-level protocol for ingesting live video.  This
   document describes the protocol and how it maps onto QUIC.

Discussion Venues

   This note is to be removed before publishing as an RFC.

   Discussion of this document takes place on the mailing list (), which
   is archived at .

   Source for this draft and an issue tracker can be found at
   https://github.com/afrind/draft-rush.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-kpugin-rush-02"/>
        </reference>
        <reference anchor="I-D.draft-lcurley-warp">
          <front>
            <title>Warp - Live Media Transport over QUIC</title>
            <author fullname="Luke Curley" initials="L." surname="Curley">
              <organization>Twitch</organization>
            </author>
            <author fullname="Kirill Pugin" initials="K." surname="Pugin">
              <organization>Meta</organization>
            </author>
            <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
              <organization>Cisco</organization>
            </author>
            <author fullname="Victor Vasiliev" initials="V." surname="Vasiliev">
              <organization>Google</organization>
            </author>
            <date day="13" month="March" year="2023"/>
            <abstract>
              <t>   This document defines the core behavior for Warp, a live media
   transport protocol over QUIC.  Media is split into objects based on
   the underlying media encoding and transmitted independently over QUIC
   streams.  QUIC streams are prioritized based on the delivery order,
   allowing less important objects to be starved or dropped during
   congestion.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-lcurley-warp-04"/>
        </reference>
        <reference anchor="I-D.draft-jennings-moq-quicr-arch">
          <front>
            <title>QuicR - Media Delivery Protocol over QUIC</title>
            <author fullname="Cullen Fluffy Jennings" initials="C. F." surname="Jennings">
              <organization>cisco</organization>
            </author>
            <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
              <organization>Cisco</organization>
            </author>
            <date day="11" month="July" year="2022"/>
            <abstract>
              <t>   This specification outlines the design for a media delivery protocol
   over QUIC.  It aims at supporting multiple application classes with
   varying latency requirements including ultra low latency applications
   such as interactive communication and gaming.  It is based on a
   publish/subscribe metaphor where entities publish and subscribe to
   data that is sent through, and received from, relays in the cloud.
   The information subscribed to is named such that this forms an
   overlay information centric network.  The relays allow for efficient
   large scale deployments.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-jennings-moq-quicr-arch-01"/>
        </reference>
        <reference anchor="I-D.draft-jennings-moq-quicr-proto">
          <front>
            <title>QuicR - Media Delivery Protocol over QUIC</title>
            <author fullname="Cullen Fluffy Jennings" initials="C. F." surname="Jennings">
              <organization>cisco</organization>
            </author>
            <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
              <organization>Cisco</organization>
            </author>
            <author fullname="Christian Huitema" initials="C." surname="Huitema">
              <organization>Private Octopus Inc.</organization>
            </author>
            <date day="11" month="July" year="2022"/>
            <abstract>
              <t>   Recently new use cases have emerged requiring higher scalability of
   media delivery for interactive realtime applications and much lower
   latency for streaming applications and a combination thereof.

   draft-jennings-moq-arch specifies architectural aspects of QuicR, a
   media delivery protocol based on publish/subscribe metaphor and Relay
   based delivery tree, that enables a wide range of realtime
   applications with different resiliency and latency needs.

   This specification defines the protocol aspects of the QuicR media
   delivery architecture.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-jennings-moq-quicr-proto-01"/>
        </reference>
        <reference anchor="I-D.draft-ietf-webtrans-overview">
          <front>
            <title>The WebTransport Protocol Framework</title>
            <author fullname="Victor Vasiliev" initials="V." surname="Vasiliev">
              <organization>Google</organization>
            </author>
            <date day="24" month="January" year="2023"/>
            <abstract>
              <t>   The WebTransport Protocol Framework enables clients constrained by
   the Web security model to communicate with a remote server using a
   secure multiplexed transport.  It consists of a set of individual
   protocols that are safe to expose to untrusted applications, combined
   with a model that allows them to be used interchangeably.

   This document defines the overall requirements on the protocols used
   in WebTransport, as well as the common features of the protocols,
   support for some of which may be optional.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-webtrans-overview-05"/>
        </reference>
        <reference anchor="CMAF">
          <front>
            <title>Information technology — Multimedia application format (MPEG-A) — Part 19: Common media application format (CMAF) for segmented media</title>
            <author>
              <organization/>
            </author>
            <date year="2020"/>
          </front>
        </reference>
        <reference anchor="ISOBMFF">
          <front>
            <title>Information Technology - Coding Of Audio-Visual Objects - Part 12: ISO Base Media File Format</title>
            <author>
              <organization/>
            </author>
            <date year="2022"/>
          </front>
        </reference>
        <reference anchor="IESG-sdwg" target="https://www.ietf.org/about/groups/iesg/statements/support-documents/">
          <front>
            <title>Support Documents in IETF Working Groups</title>
            <author>
              <organization/>
            </author>
            <date year="2016" month="November"/>
          </front>
        </reference>
        <reference anchor="MOQ-charter" target="https://datatracker.ietf.org/wg/moq/about/">
          <front>
            <title>Media Over QUIC (moq)</title>
            <author>
              <organization/>
            </author>
            <date year="2022" month="September"/>
          </front>
        </reference>
        <reference anchor="WebTrans-charter" target="https://datatracker.ietf.org/wg/webtrans/about/">
          <front>
            <title>WebTransport (webtrans)</title>
            <author>
              <organization/>
            </author>
            <date year="2021" month="March"/>
          </front>
        </reference>
        <reference anchor="Prog-MOQ" target="https://datatracker.ietf.org/meeting/interim-2022-moq-01/materials/slides-interim-2022-moq-01-sessa-moq-use-cases-and-requirements-individual-draft-working-group-draft-00">
          <front>
            <title>Progressing MOQ</title>
            <author>
              <organization/>
            </author>
            <date year="2022" month="October"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 406?>

<section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors would like to thank several authors of individual drafts that fed into the "Media Over QUIC" charter process:</t>
      <ul spacing="compact">
        <li>Kirill Pugin, Alan Frindell, Jordi Cenzano, and Jake Weissman (<xref target="I-D.draft-kpugin-rush"/>,</li>
        <li>Luke Curley (<xref target="I-D.draft-lcurley-warp"/>), and</li>
        <li>Cullen Jennings and Suhas Nandakumar (<xref target="I-D.draft-jennings-moq-quicr-arch"/>), together with Christian Huitema (<xref target="I-D.draft-jennings-moq-quicr-proto"/>).</li>
      </ul>
      <t>We would also like to thank Suhas Nandakumar for his presentation, "Progressing MOQ" <xref target="Prog-MOQ"/>, at the October 2022 MOQ virtual interim meeting. We used his outline as a starting point for the Requirements section (<xref target="req-sec"/>).</t>
      <t>We would also like to thank Cullen Jennings for suggesting that we distinguish
between interactive and live streaming use cases based on the users' perception,
rather than quantitative measurements. In addition we would also like to thank
Lucas Pardue, Alan Frindell, and Bernard Aboba for their reviews of the
document.</t>
      <t>James Gruessing would also like to thank Francesco Illy and Nicholas Book for
their part in providing the needed motivation.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA81d65LbRnb+j6foUFWxNCFnRtpd7+7slp3RjGTL0W01slVb
qdQWCDTJ9oAAjQaG4o5VtQ+RP/mXZ8mj7JPkfOecbjQ4lOVNbSVxlT0kATRO
nz6X71y6PZvNss51lT0zL2zpcvPqxrbmD98+uzAz86235iL31pu8Ls0b+0Pv
Wru2defNomn1gbdtXvtN03bmddt0TdFU5tJ6t6yzfD5v7Q0N3PzhJ4bKyqao
8zURULb5opst29567+rlbN38MGuTO2env8qKvLPLpt2dGVcvmsx3rc3XZ+bZ
k7dPs5KunWWZ27Rnpmt73z06Pf3t6aMsp3vOTL7ZVI4ed03ts23TXi/bpt8Q
da/+YF7krqI3mufOd9m13dHlkgatO9vWtptdgjBmCr2Q6P9TXjU1EbyzPtu4
M/OvNO2pof+4uiRCp8YTO1q78PRpt9YPXesKulQ0602OD76fx8/0gWc4pVkR
Ifbfsizvu1XTnmXGzOhfQxf8mfnm2HwV2MO/CuO+of/6vStNu8xr92ee75l5
aUvbVkQ6LcPrfl45e23Nq3Xb2A3fXTR93YGrL2230jv5gl0Ta87M93jDsbPd
4p+X+OWYKB6TdnVsLvPtNX1OCLva2LogeUqvjAl7ixvqzpyvLfEnN8+fX4wJ
+rZ2nS3NVUeL602zCHem1Hl5TSlv2Sczg6S0a3rhDcTDmDdPL37xq1+dnsnH
z3/x+S/Cx18//Fw//vb09JRvfja7PBbBLPK23NqqmrmiaJczEu5Z0dRL6zET
fOzapjobPXK96ZeunpEsrsYXqqJvK7ubbfN2M77yva1rWkPP0k+yX7SzvC1W
n7xpA+Ub3wU+zLZ23kFDZw0p9o2zW57VxYvzp2fMQlX+ybPApKY2nS1WdVM1
y53561/+3bzoq86tWdkTJTJyv7n/4vWTr2bnD/jW1znZgYe/PTMXJNF0z8ef
AgUP2Ix4u4Tw0yLz3RMmi3XZPDp9dMqLcPXq8YunP0Hx24HiGb27hDK/Ilnp
S9fMvnO+zyvzav69Lch0zZTKR2cY1zwmq6Sm7KmrrHnKg+5R8YipeHL11cyX
26XSkbdL252ZVddt/NnJyXa7ZdE7Jgk/yedN352wifEnzvrliYcEs5af+H4D
gzkjy9fLL6OJXcllcxkuk4axhTPvyGxhal/xuCmND39hXjY3ROrDz0EqGbVZ
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
UwPQZAAA

-->

</rfc>
