<?xml version='1.0' encoding='utf-8'?> 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.15 (Ruby 3.1.2) -->
<?rfc docmapping="yes"?>

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-mops-streaming-opcons-12" category="info" number="9317" submissionType="IETF" category="info" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" updates="" obsoletes="" xml:lang="en" version="3">

  <!-- xml2rfc v2v3 conversion 3.13.1 -->
  <front>
    <title abbrev="Media Streaming Ops">Operational Operations">Operational Considerations for Streaming Media</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-mops-streaming-opcons-12"/> name="RFC" value="9317"/>
    <author initials="J." surname="Holland" fullname="Jake Holland">
      <organization>Akamai Technologies, Inc.</organization>
      <address>
        <postal>
          <street>150 Broadway</street>
          <city>Cambridge, MA 02144</city>
          <city>Cambridge</city>
	  <region>MA</region>
          <code>02144</code>
          <country>United States of America</country>
        </postal>
        <email>jakeholland.net@gmail.com</email>
      </address>
    </author>
    <author initials="A." surname="Begen" fullname="Ali Begen">
      <organization>Networked Media</organization>
      <address>
        <postal>
          <country>Turkey</country>
        </postal>
        <email>ali.begen@networked.media</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="2022" month="August" day="08"/>
    <area>OPS</area>
    <workgroup>MOPS</workgroup>
    <keyword>Internet-Draft</keyword> month="October"/>
    <area>ops</area>
    <workgroup>mops</workgroup>
    <keyword>DASH</keyword>
    <keyword>HLS</keyword>
    <keyword>ABR</keyword>
    <keyword>adaptive streaming</keyword>
    <keyword>live streaming</keyword>
    <keyword>live latency</keyword>
    <keyword>media transport</keyword>
    <abstract>
      <t>This document provides an overview of operational networking and transport protocol issues that pertain to the quality of experience (QoE) when streaming video and other high-bitrate media over the Internet.</t>
      <t>This document is intended to explain explains the characteristics of streaming
   media delivery that have surprised network designers or transport experts who lack specific media expertise, since streaming media highlights key differences between common assumptions in existing networking practices and observations of media delivery issues encountered when streaming media over those existing networks.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="intro">
      <name>Introduction</name>
      <t>This document provides an overview of operational networking and transport protocol issues that pertain to the quality of experience (QoE) when streaming video and other high-bitrate media over the Internet.</t>
      <t>This document is intended to explain the characteristics of streaming media delivery that have surprised network designers or transport experts who lack specific media expertise, since streaming media highlights key differences between common assumptions in existing networking practices and observations of media delivery issues encountered when streaming media over those existing networks.</t>
      <section anchor="key-def">
        <name>Key Definitions</name>
        <t>This document defines "high-bitrate streaming media over the Internet" as follows:</t>
        <ul spacing="normal">
          <li>"High-bitrate" is a context-sensitive term broadly intended to capture rates that can be sustained over some but not all of the target audience's network connections. A snapshot of values commonly qualifying as high-bitrate on today's Internet is given by the higher-value entries in <xref target="bvr"/>.</li>
          <li>
            <t>"Streaming" means the continuous transmission of media segments from a server to a client and its simultaneous consumption by the client.
            </t>
            <ul spacing="normal">
              <li>The term "simultaneous" is critical, as media segment transmission is not considered "streaming" if one downloads a media file and plays it after the download is completed. Instead, this would be called "download and play".</li>
              <li>This has two implications. First, the sending rate for media segments must match the client's consumption rate (whether loosely or tightly) to provide uninterrupted playback. That is, the client must not run out of media segments (buffer underrun), underrun) and must not accept more media segments than it can buffer before playback (buffer overrun).</li>
              <li>Second, the client's media segment consumption rate is limited not only by the path's available bandwidth but also by media segment availability. The client cannot fetch media segments that a media server cannot provide (yet).</li>
            </ul>
          </li>
          <li>"Media" refers to any type of media and associated streams streams, such as video, audio, metadata, etc.</li>
          <li>"Over the Internet" means that a single operator does not have control of the entire path between media servers and media clients, so it is not a "walled garden".</li>
        </ul>
        <t>This document uses these terms, terms to describe the streaming media ecosystem:</t>
        <dl>
          <dt>Streaming Media Operator:</dt>
          <dd>
            <t>An
            <t>an entity that provides streaming media servers</t>
          </dd>
          <dt>Media Server:</dt>
          <dd>
            <t>A
            <t>a server that provides streaming media to a media player</t>
          </dd>
          <dt/>
          <dd>
            <t>Also refered player, which is
            also referred to as a streaming media server, or simply a server</t>
          </dd>
          <dt>Intermediary:</dt>
          <dd>
            <t>An
            <t>an entity that is on-path, between the streaming media operator and the ultimate media consumer, and that is media-aware</t>
          </dd>
          <dt/>
          <dd> media aware</t>
            <t>When the streaming media is encrypted, an intermediary must have credentials that allow the intermediary to decrypt the media in order to be media-aware</t>
          </dd>
          <dt/>
          <dd> media aware.</t>
            <t>An intermediary can be one of many specialized subtypes that meet this definition</t> definition.</t>
          </dd>
          <dt>Media Player:</dt>
          <dd>
            <t>An
            <t>an endpoint that requests streaming media from a media player server for an ultimate media consumer</t>
          </dd>
          <dt/>
          <dd>
            <t>Also consumer, which is also referred to as a streaming media client, or simply a client</t>
          </dd>
          <dt>Ultimate Media Consumer:</dt>
          <dd>
            <t>A
            <t>a human or machine using a media player</t>
          </dd>
        </dl>
      </section>
      <section anchor="document-scope">
        <name>Document Scope</name>
        <t>A full review of all streaming media considerations for all types of media over all types of network paths is too broad a topic to cover comprehensively in a single document.</t>
        <t>This document focuses chiefly on the large-scale delivery of streaming high-bitrate media to end users.
It is primarily intended for those controlling endpoints involved in delivering streaming media traffic.
This can include origin servers publishing content, intermediaries like content delivery networks (CDNs), and providers for client devices and media players.</t>
        <t>Most of the considerations covered in this document apply both to both "live media" (created and streamed as an event is in progress) and "media on demand" (previously recorded media that is streamed from storage), except where noted.</t>
        <t>Most of the considerations covered in this document apply both to both media that is consumed by a media player, for viewing by a human, and media that is consumed by a machine, such as a media recorder that is executing an ABR adaptive bitrate (ABR) streaming algorithm, except where noted.</t>
        <t>This document contains</t>
        <ul spacing="normal">
          <li>A
          <li>a short description of streaming video characteristics in <xref target="sd"/>, target="sd"/> to set the stage for the rest of the document,</li>
          <li>General
          <li>general guidance on bandwidth provisioning (<xref target="bwprov"/>) and latency considerations (<xref target="latency-cons"/>) for streaming media delivery,</li>
          <li>A
          <li>a description of adaptive encoding and adaptive delivery techniques in common use for streaming video, along with a description of the challenges media senders face in detecting the bitrate available between the media sender and media receiver, and a collection of measurements by a third party for use in analytics (<xref target="sec-abr"/>),</li>
          <li>A
          <li>a description of existing transport protocols used for media streaming and the issues encountered when using those protocols, along with a description of the QUIC transport protocol <xref target="RFC9000"/> more recently used for streaming media (<xref target="sec-trans"/>),</li>
          <li>A
          <li>a description of implications when streaming encrypted media (<xref target="stream-encrypt-media"/>), and</li>
          <li>Several pointers
          <li>a pointer to additional resources for further reading on this rapidly changing subject (<xref target="further"/>).</li>
        </ul>
        <t>Topics outside this scope include:</t> include the following:</t>
        <ul spacing="normal">
          <li>in-depth
          <li>an in-depth examination of real-time real-time, two-way interactive media, such as videoconferencing; although this document touches lightly on topics related to this space, the intent is to let readers know that for more in-depth coverage, coverage they should look to other documents, since the techniques and issues for interactive real-time real-time, two-way media differ so dramatically from those in large-scale large-scale, one-way delivery of streaming media.</li>
          <li>specific recommendations on operational practices to mitigate issues described in this document; although some known mitigations are mentioned in passing, the primary intent is to provide a point of reference for future solution proposals to describe how new technologies address or avoid existing problems.</li>
          <li>generalized network performance techniques; while considerations considerations, such as datacenter data center design, transit network design, and "walled garden" optimizations optimizations, can be crucial components of a performant streaming media service, these are considered independent topics that are better addressed by other documents.</li>
          <li>transparent tunnels; while tunnels can have an impact on streaming media via issues like the round-trip time and the maximum transmission unit (MTU) of packets carried over tunnels, for the purposes of this document, these issues are considered as part of the set of network path properties.</li>
        </ul>
        <t>It is worth pointing out explicitly because questions
        <t>Questions about whether this document also covers "Web Real-Time Communication (WebRTC)" has have come up often, that RTP, WebRTC's often. It does not. WebRTC’s  principal media transport protocol (<xref target="RFC8834"/>, <xref target="RFC8835"/>), target="RFC8834"/> <xref target="RFC8835"/>, the Real-time Transport Protocol (RTP), is mentioned in this document. However, (as as noted in <xref target="sd"/>) target="sd"/>, it is difficult to give general guidance for unreliable media transport protocols used to carry interactive real-time media.</t>
      </section>
      <section anchor="notes-for-contributors-and-reviewers">
        <name>Notes for Contributors and Reviewers</name>
        <t>Note to RFC Editor: Please remove this section and its subsections
before publication.</t>
        <t>This section is to provide references to make it easier to review the
development and discussion on the draft so far.</t>
        <section anchor="venue">
          <name>Venues for Contribution and Discussion</name>
          <t>This document is in the GitHub repository at:</t>
          <t><eref target="https://github.com/ietf-wg-mops/draft-ietf-mops-streaming-opcons">https://github.com/ietf-wg-mops/draft-ietf-mops-streaming-opcons</eref></t>
          <t>Readers are welcome to open issues and send pull requests for this document.</t>
          <t>Substantial discussion of this document should take place on the MOPS working group mailing list (mops@ietf.org).</t>
          <ul spacing="normal">
            <li>Join: <eref target="https://www.ietf.org/mailman/listinfo/mops">https://www.ietf.org/mailman/listinfo/mops</eref></li>
            <li>Search: <eref target="https://mailarchive.ietf.org/arch/browse/mops/">https://mailarchive.ietf.org/arch/browse/mops/</eref></li>
          </ul>
        </section>
      </section>
    </section>
    <section anchor="sd">
      <name>Our Focus on Streaming Video</name>
      <t>As the Internet has grown, an increasingly large share of the traffic delivered to end users has become video.
      The most recent available estimates found that 75% of the total traffic to end users was video in 2019 (as described in <xref target="RFC8404"/>, such traffic surveys have since become impossible to conduct due to ubiquitous encryption).
At that time, the share of video traffic had been growing for years and was projected to continue growing (Appendix D of <xref target="CVNI"/>).</t>
      <t>A substantial part of this growth is due to the increased use of streaming video. However, video traffic in real-time communications (for example, online videoconferencing) has also grown significantly.
While both streaming video and videoconferencing have real-time delivery and latency requirements, these requirements vary from one application to another.
For additional discussion of latency requirements, see <xref target="latency-cons"/>.</t>
      <t>In many contexts, media traffic can be handled transparently as
generic application-level traffic.  However, as the volume of
media traffic continues to grow, it is becoming increasingly
important to consider the effects of network design decisions
on application-level performance, with considerations for
the impact on media delivery.</t>
      <t>Much of the focus of this document is on media streaming over HTTP. HTTP is widely used for media streaming because</t>
      <ul spacing="normal">
        <li>support for HTTP is widely available in a wide range of operating systems,</li>
        <li>HTTP is also used in a wide variety of other applications,</li>
        <li>HTTP has been demonstrated to provide acceptable performance over the open Internet,</li>
        <li>HTTP includes state-of-the-art standardized security mechanisms, and</li>
        <li>HTTP can use already-deployed caching infrastructure infrastructure, such as content delivery networks (CDN), CDNs, local proxies, and browser caches.</li>
      </ul>
      <t>Various HTTP versions have been used for media delivery. HTTP/1.0, HTTP/1.1 HTTP/1.1, and HTTP/2 are carried over TCP <xref target="I-D.ietf-tcpm-rfc793bis"/>, target="RFC9293"/>, and TCP's transport behavior is described in <xref target="reliable-behavior"/>. HTTP/3 is carried over QUIC, and QUIC's transport behavior is described in <xref target="quic-behavior"/>.</t>
      <t>Unreliable media delivery using RTP and other UDP-based protocols is also discussed in Sections <xref target="ultralow"/>, target="ultralow" format="counter"/>, <xref target="unreliable-behavior"/>, target="unreliable-behavior" format="counter"/>, and <xref target="hop-by-hop-encrypt"/>, target="hop-by-hop-encrypt" format="counter"/>, but it is difficult to give general guidance for these applications. For instance, when packet loss occurs, the most appropriate response may depend on the type of codec being used.</t>
    </section>
    <section anchor="bwprov">
      <name>Bandwidth Provisioning</name>
      <section anchor="scaling">
        <name>Scaling Requirements for Media Delivery</name>
        <section anchor="bvr">
          <name>Video Bitrates</name>
          <t>Video bitrate selection depends on many variables including the resolution (height and width), frame rate, color depth, codec, encoding parameters, scene complexity complexity, and amount of motion. Generally speaking, as the resolution, frame rate, color depth, scene complexity complexity, and amount of motion increase, the encoding bitrate increases. As newer codecs with better compression tools are used, the encoding bitrate decreases. Similarly, a multi-pass encoding generally produces better quality output compared to single-pass encoding at the same bitrate or delivers the same quality at a lower bitrate.</t>
          <t>Here are a few common resolutions used for video content, with typical ranges of bitrates for the two most popular video codecs <xref target="Encodings"/>.</t>
          <table>
	    <name>Typical Resolutions and Bitrate Ranges Used for Video Encoding</name>
            <thead>
              <tr>
                <th align="left">Name</th>
                <th align="left">Width x Height</th>
                <th align="left">H.264</th>
                <th align="left">H.265</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">DVD</td>
                <td align="left">720 x 480</td>
                <td align="left">1.0 Mbps</td>
                <td align="left">0.5 Mbps</td>
              </tr>
              <tr>
                <td align="left">720p (1K)</td>
                <td align="left">1280 x 720</td>
                <td align="left">3-4.5 Mbps</td>
                <td align="left">2-4 Mbps</td>
              </tr>
              <tr>
                <td align="left">1080p (2K)</td>
                <td align="left">1920 x 1080</td>
                <td align="left">6-8 Mbps</td>
                <td align="left">4.5-7 Mbps</td>
              </tr>
              <tr>
                <td align="left">2160p (4k)</td>
                <td align="left">3840 x 2160</td>
                <td align="left">N/A</td>
                <td align="left">10-20 Mbps</td>
              </tr>
            </tbody>
          </table>
          <ul spacing="normal">
            <li>Note that these codecs do not take the actual "available bandwidth" between streaming video media servers and streaming video receivers media players into account when encoding because the codec does not have any idea what network paths and network path conditions will carry the encoded video at some point in the future. It is common for codecs to offer a small number of resource variants, differing only in the bandwidth each variant targets.</li>
            <li>Note that video receivers media players attempting to receive encoded video across a network path with insufficient available path bandwidth might request the video media server to provide video encoded for lower bitrates, at the cost of lower video quality, as described in <xref target="adapt-deliver"/>.</li>
            <li>In order to provide multiple encodings for video resources, the codec must produce multiple versions variants (also called renditions) of the video resource encoded at various bitrates, as described in <xref target="adapt-encode"/>.</li>
          </ul>
        </section>
        <section anchor="virtual-reality-bitrates">
          <name>Virtual Reality Bitrates</name>
          <t>The bitrates given in <xref target="bvr"/> describe video streams that provide the user with a single, fixed point of view - so, -- therefore, the user has no "degrees of freedom," freedom", and the user sees all of the video image that is available.</t>
          <t>Even basic virtual reality (360-degree) videos that allow users to look around freely (referred to as "three degrees of freedom" or 3DoF) require substantially larger bitrates when they are captured and encoded encoded, as such videos require multiple fields of view of the scene. Yet, due to smart delivery methods methods, such as viewport-based or tile-based streaming, there is no need to send the whole scene to the user. Instead, the user needs only the portion corresponding to its viewpoint at any given time (<xref target="Survey360o"/>).</t> <xref target="Survey360"/>.</t>
          <t>In more immersive applications, where limited user movement ("three degrees of freedom plus" or 3DoF+) or full user movement ("six degrees of freedom" or 6DoF) is allowed, the required bitrate grows even further. In this case, immersive content is typically referred to as volumetric media. One way to represent the volumetric media is to use point clouds, where streaming a single object may easily require a bitrate of 30 Mbps or higher. Refer to <xref target="MPEGI"/> and <xref target="PCC"/> for more details.</t>
        </section>
      </section>
      <section anchor="sec-band-constraints">
        <name>Path Bottlenecks and Constraints</name>
        <t>Even when the bandwidth requirements for media streams along a path are well understood, additional analysis is required to understand the constraints on bandwidth at various points along the path between media servers and media players. Media streams can encounter bottlenecks at many points along a path, whether the bottleneck happens at a node or at a path segment along the path, and these bottlenecks may involve a lack of processing power, buffering capacity, link speed, or any other exhaustible resource.</t>
        <t>Media servers may react to bandwidth constraints using two independent feedback loops:</t>
        <ul spacing="normal">
          <li>Media servers often respond to application-level feedback from the media player that indicates a bottleneck somewhere along the path by adjusting the number of media segments that the media server will send to the media player in sending a given timeframe. different media bitrate. This is described in greater detail in <xref target="sec-abr"/>.</li>
          <li>Media servers also typically rely on transport protocols with capacity-seeking congestion controllers that probe for available path bandwidth and adjust the media segment sending rate based on transport mechanisms. This is described in greater detail in <xref target="sec-trans"/>.</li>
        </ul>
        <t>The result is that these two (potentially competing) "helpful" mechanisms each respond to the same bottleneck with no coordination between themselves, so that each is unaware of actions taken by the other, and this can result in QoE for users that is significantly lower than what could have been achieved.</t>
        <t>One might wonder why media servers and transport protocols are each unaware of what the other is doing, and there are multiple reasons for that. One reason is that media servers are often implemented as applications executing in user space, relying on a general-purpose operating system that typically has its transport protocols implemented in the operating system kernel, making decisions that the media server never knows about.</t>
        <t>In
        <t>As one example, if a media server overestimates the available bandwidth to the media player,</t>
        <ul spacing="normal">
          <li>the transport protocol may detect loss due to congestion and reduce its sending window size per round trip,</li>
          <li>the media server adapts to application-level feedback from the media player and reduces its own sending rate,</li> rate, and/or</li>
          <li>the transport protocol sends media segments at the new, lower rate and confirms that this new, lower rate is "safe" because no transport-level loss is occurring, but</li>
          <li>because occurring.</li>
        </ul>
	<t>However, because the media server continues to send at the new, lower rate,
   the transport protocol's maximum sending rate is now limited by the amount
   of information the media server queues for transmission, so</li>
          <li>the transmission. Therefore, the
   transport protocol cannot probe for available path bandwidth by sending
   at a higher rate until the media receiver player requests segments that buffer
   enough data for the transport to perform the probing.</li>
        </ul> probing.</t>
        <t>To avoid these types of situations, which can potentially affect all the users whose streaming media segments traverse a bottleneck path segment, there are several possible mitigations that streaming operators can use. However, the first step toward mitigating a problem is knowing that a problem is occurring.</t>
        <section anchor="sec-know-your-traffic">
          <name>Recognizing Changes from a Baseline</name>
          <t>There are many reasons why path characteristics might change in normal operation, for operation. For example:</t>
          <ul spacing="normal">
            <li>If the path topology changes. For example, routing changes, which can happen in normal operation, may result in traffic being carried over a new path topology that that is partially or entirely disjoint disjointed from the previous path, especially if the new path topology includes one or more path segments that are more heavily loaded, offer lower total bandwidth, change the overall Path MTU size, or simply cover more distance between the path endpoints.</li>
            <li>If cross traffic that also traverses part or all of the same path topology increases or decreases, especially if this new cross traffic is "inelastic," "inelastic" and does not respond to indications of path congestion.</li>
            <li>Wireless links (Wi-Fi, 5G, LTE, etc.) may see rapid changes to capacity from changes in radio interference and signal strength as endpoints move.</li>
          </ul>
          <t>To recognize that a path carrying streaming media segments has experienced a change, maintaining a baseline that captures its prior properties is fundamental.
Analytics that aid in that recognition can be more or less sophisticated and can usefully operate on several different time scales, from milliseconds to hours or days.</t>
          <t>Useful properties to monitor for changes can include:</t> include the following:</t>
          <ul spacing="normal">
            <li>round-trip times</li>
            <li>loss rate (and explicit congestion notification (ECN) (<xref <xref target="RFC3168"/> when in use)</li>
            <li>out-of-order packet rate</li>
            <li>packet and byte receive rate</li>
            <li>application level
            <li>application-level goodput</li>
            <li>properties of other connections carrying competing traffic, in addition to the connections carrying the streaming media segments</li> media</li>
            <li>externally provided measurements, for example, from network cards or metrics collected by the operating system</li>
          </ul>
        </section>
      </section>
      <section anchor="pathreq">
        <name>Path Requirements</name>
        <t>The bitrate requirements in <xref target="scaling"/> are per end user actively
consuming a media feed, so in the worst case, the bitrate demands
can be multiplied by the number of simultaneous users to find the bandwidth
requirements for a delivery path with that
number of users downstream. For example, at a node with 10,000
downstream users simultaneously consuming video streams,
approximately 80 Gbps might be necessary for all of them
to get typical content at 1080p resolution.</t>
        <t>However, when there is some overlap in the feeds being consumed by
end users, it is sometimes possible to reduce the bandwidth
provisioning requirements for the network by performing some kind
of replication within the network.  This can be achieved via object
caching with the delivery of replicated objects over individual
connections and/or by packet-level replication using multicast.</t>
        <t>To the extent that replication of popular content can be performed,
bandwidth requirements at peering or ingest points can be reduced to
as low as a per-feed requirement instead of a per-user requirement.</t>
      </section>
      <section anchor="caching">
        <name>Caching Systems</name>
        <t>When demand for content is relatively predictable, and especially when that content is relatively static, caching content close to requesters and pre-loading preloading caches to respond quickly to initial requests is are often useful (for example, HTTP/1.1 caching is described in <xref target="RFC9111"/>). This is subject to the usual considerations for caching - -- for example, how much data must be cached to make a significant difference to the requester and how the benefit of caching and pre-loading caches preloading cache balances against the costs of tracking stale content in caches and refreshing that content.</t>
        <t>It is worth noting that not all high-demand content is "live" content. One relevant example is when popular streaming content can be staged close to a significant number of requesters, as can happen when a new episode of a popular show is released. This content may be largely stable, so stable and is therefore low-cost to maintain in multiple places throughout the Internet. This can reduce demands for high end-to-end bandwidth without having to use mechanisms like multicast.</t>
        <t>Caching and pre-loading preloading can also reduce exposure to peering point congestion, since less traffic crosses the peering point exchanges if the caches are placed in peer networks. This is especially true when the content can be pre-loaded preloaded during off-peak hours, hours and if the transfer can make use of "Lower-Effort "A Lower-Effort Per-Hop Behavior (LE PHB) for Differentiated Services" <xref target="RFC8622"/>, "Low Extra Delay Background Transport (LEDBAT)" <xref target="RFC6817"/>, or similar mechanisms.</t>
        <t>All of this depends, of course, on the ability of a streaming media operator  to predict usage and provision bandwidth, caching, and other mechanisms to meet the needs of users. In some cases (<xref target="sec-predict"/>), this is relatively routine, but in other cases, it is more difficult (<xref target="sec-unpredict"/>).</t>
        <t>With the emergence of ultra-low-latency streaming, responses have to start streaming to the end user while still being transmitted to the cache, cache and while the cache does not yet know the size of the object.  Some of the popular caching systems were designed around a cache footprint and had deeply ingrained assumptions about knowing the size of objects that are being stored, so the change in design requirements in long-established systems caused some errors in production.  Incidents occurred where a transmission error in the connection from the upstream source to the cache could result in the cache holding a truncated segment and transmitting it to the end user's device. In this case, players rendering the stream often had a playback freeze until the player was reset.  In some cases, the truncated object was even cached that way and served later to other players as well, causing continued stalls at the same spot in the media for all players playing the segment delivered from that cache node.</t>
      </section>
      <section anchor="sec-predict">
        <name>Predictable Usage Profiles</name>
        <t>Historical data shows that users consume more videos videos, and these videos are encoded at a bitrate higher than they were in the past. Improvements in the codecs that help reduce the encoding bitrates with better compression algorithms have not offset the increase in the demand for the higher quality video (higher resolution, higher frame rate, better color gamut, better dynamic range, etc.). In particular, mobile data usage in cellular access networks has shown a large jump over the years due to increased consumption of entertainment and conversational video.</t>
      </section>
      <section anchor="sec-unpredict">
        <name>Unpredictable Usage Profiles</name>
        <t>It is also possible for usage profiles to change significantly and suddenly. These changes are more difficult to plan for, but at a minimum, recognizing that sudden changes are happening is critical.</t>
        <t>Two
        <t>The two examples that follow are instructive.</t>
        <section anchor="p2p">
          <name>Peer-to-peer
          <name>Peer-to-Peer Applications</name>
          <t>In the first example, described in "Report from the IETF Workshop on Peer-to-Peer (P2P) Infrastructure, May 28, 2008" (<xref target="RFC5594"/>), <xref target="RFC5594"/>, when the BitTorrent filesharing file sharing application came into widespread use in 2005, sudden and unexpected growth in peer-to-peer traffic led to complaints from ISP customers about the performance of delay-sensitive traffic (VoIP (Voice over IP (VoIP) and gaming). These performance issues resulted from at least two causes:</t>
          <ul spacing="normal">
            <li>Many access networks for end users used underlying technologies that are inherently asymmetric, favoring downstream bandwidth (e.g., ADSL, cellular technologies, and most IEEE 802.11 variants), assuming that most users will need more downstream bandwidth than upstream bandwidth. This is a good assumption for client-server applications applications, such as streaming media or software downloads, but BitTorrent rewarded peers that uploaded as much as they downloaded, so BitTorrent users had much more symmetric usage profiles, which interacted badly with these asymetric asymmetric access network technologies.</li>
            <li>BitTorrent
            <li>Some P2P systems also used distributed hash tables to organize peers into a ring topology, where each peer knew its "next peer" and "previous peer." peer". There was no connection between the application-level ring topology and the lower-level network topology, so a peer's "next peer" might be anywhere on the reachable Internet. Traffic models that expected most communication to take place with a relatively small number of servers were unable to cope with peer-to-peer traffic that was much less predictable.</li>
          </ul>
          <t>Especially,
          <t>Especially as end users increase the use of video-based social networking applications, it will be helpful for access network providers to watch for increasing numbers of end users uploading significant amounts of content.</t>
        </section>
        <section anchor="impact-of-global-pandemic">
          <name>Impact of Global Pandemic</name>
          <t>Early in 2020, the COVID-19 pandemic and resulting quarantines and shutdowns led to significant changes in traffic patterns due to a large number of people who suddenly started working and attending school remotely and using more interactive applications (videoconferencing, in addition to (e.g., videoconferencing and streaming media). Subsequently, the Internet Architecture Board (IAB) held a COVID-19 Network Impacts Workshop <xref target="RFC9075"/> in November 2020. The following observations from the workshop report are worth considering.</t>
          <ul spacing="normal">
            <li>Participants describing different types of networks reported different kinds of impacts, but all types of networks saw impacts.</li>
            <li>Mobile networks saw traffic reductions reductions, and residential networks saw significant increases.</li>
            <li>Reported traffic increases from ISPs and Internet Exchange Points (IXP) (IXPs) over just a few weeks were as big as the traffic growth over the course of a typical year, representing a 15-20% surge in growth to land at a new normal that was much higher than anticipated.</li>
            <li>At DE-CIX Deutscher Commercial Internet Exchange (DE-CIX) Frankfurt, the world's largest IXP in terms of data throughput, the year 2020 has seen the largest increase in peak traffic within a single year since the IXP was founded in 1995.</li>
            <li>The usage pattern changed significantly as work-from-home and videoconferencing usage peaked during normal work hours, which would have typically been off-peak hours with adults at work and children at school. One might expect that the peak would have had more impact on networks if it had happened during typical evening peak hours for streaming applications.</li>
            <li>The increase in daytime bandwidth consumption reflected both significant increases in essential applications applications, such as videoconferencing and virtual private networks (VPN), (VPNs), and entertainment applications as people watched videos or played games.</li>
            <li>At the IXP level, it was observed that physical link utilization increased. This phenomenon could probably be explained by a higher level of uncacheable traffic traffic, such as videoconferencing and VPNs VPNs, from residential users as they stopped commuting and switched to work-at-home.</li> working at home.</li>
          </ul>
          <t>Again, it will be helpful for streaming operators to monitor traffic as described in <xref target="measure-coll"/>, watching for sudden changes in performance.</t>
        </section>
      </section>
    </section>
    <section anchor="latency-cons">
      <name>Latency Considerations</name>
      <t>Streaming media latency refers to the "glass-to-glass" time duration, which is the delay between the real-life occurrence of an event and the streamed media being appropriately displayed played on an end user's device.  Note that this is different from the network latency (defined as the time for a packet to cross a network from one end to another end) because it includes media encoding/decoding and buffering time, and time and, for most cases cases, also the ingest to an intermediate service service, such as a CDN or other media distribution service, rather than a direct connection to an end user.</t>
      <t>The team working on this document found these rough categories to be useful when considering a streaming media application's latency requirements:</t>
      <ul spacing="normal">
        <li>ultra-low-latency    (less than 1 second)</li>
        <li>low-latency live     (less than 10 seconds)</li>
        <li>non-low-latency live (10 seconds to a few minutes)</li>
        <li>on-demand            (hours or more)</li>
      </ul>
      <section anchor="ultralow">
        <name>Ultra-Low-Latency</name>
        <t>Ultra-low-latency delivery of media is defined here as having a glass-to-glass delay target under one 1 second.</t>
        <t>Some media content providers aim to achieve this level of latency for live media events. This introduces new challenges when compared to the other latency categories described in <xref target="latency-cons"/>, because ultra-low-latency is on the same scale as commonly observed end-to-end network latency variation, often due to bufferbloat (<xref target="CoDel"/>), <xref target="CoDel"/>, Wi-Fi error correction, or packet reordering. These effects can make it difficult to achieve ultra-low-latency for many users, users and may require accepting relatively frequent user-visible media artifacts. However, for controlled environments that provide mitigations against such effects, ultra-low-latency is potentially achievable with the right provisioning and the right media transport technologies.</t>
        <t>Most applications operating over IP networks and requiring latency this low use the Real-time Transport Protocol (RTP) <xref target="RFC3550"/> or WebRTC <xref target="RFC8825"/>, which uses RTP as its Media Transport Protocol, media transport protocol, along with several other protocols necessary for safe operation in browsers.</t>
        <t>Worth noting
        <t>It is worth noting that many applications for ultra-low-latency delivery do not need to scale to as many users as applications for low-latency and non-low-latency live delivery, which simplifies many delivery considerations.</t>
        <t>Recommended reading for applications adopting an RTP-based approach also includes <xref target="RFC7656"/>. For increasing the robustness of the playback by implementing adaptive playout methods, refer to <xref target="RFC4733"/> and <xref target="RFC6843"/>.</t>
        <section anchor="near-realtime-latency">
          <name>Near-Realtime
          <name>Near-Real-Time Latency</name>
          <t>Some Internet applications that incorporate media streaming have specific interactivity or control-feedback requirements that drive much lower glass-to-glass media latency targets than one 1 second.
These include videoconferencing or voice calls, calls; remote video gameplay, gameplay; remote control of hardware platforms like drones, vehicles, or surgical robots robots; and many other envisioned or deployed interactive applications.</t>
          <t>Applications with latency targets in these regimes are out of scope for this document.</t>
        </section>
      </section>
      <section anchor="low-latency-live">
        <name>Low-Latency Live</name>
        <t>Low-latency live delivery of media is defined here as having a glass-to-glass delay target under 10 seconds.</t>
        <t>This level of latency is targeted to have a user experience similar to broadcast TV delivery.  A frequently cited problem with failing to achieve this level of latency for live sporting events is the user experience failure from having crowds within earshot of one another who react audibly to an important play, play or from users who learn of an event in the match via some other channel, for example, social media, before it has happened on the screen showing the sporting event.</t>
        <t>Applications requiring low-latency live media delivery are generally feasible at scale with some restrictions.  This typically requires the use of a premium service dedicated to the delivery of live media, and some tradeoffs trade-offs may be necessary relative to what is feasible in a higher latency higher-latency service. The tradeoffs trade-offs may include higher costs, delivering a lower quality media, reduced flexibility for adaptive bitrates bitrates, or reduced flexibility for available resolutions so that fewer devices can receive an encoding tuned for their display. Low-latency live delivery is also more susceptible to user-visible disruptions due to transient network conditions than higher latency higher-latency services.</t>
        <t>Implementation of a low-latency live media service can be achieved with the use of "HTTP HTTP Live Streaming (HLS)" (HLS) <xref target="RFC8216"/> by using its low-latency extension (called LL-HLS) <xref target="I-D.draft-pantos-hls-rfc8216bis"/> target="HLS-RFC8216BIS"/> or with "Dynamic Dynamic Adaptive Streaming over HTTP (DASH)" (DASH) <xref target="MPEG-DASH"/> by using its low-latency extension (called LL-DASH) <xref target="LL-DASH"/>. These extensions use the Common Media Application Format (CMAF) standard <xref target="MPEG-CMAF"/> that allows the media to be packaged into and transmitted in units smaller than segments, which are called chunks "chunks" in CMAF language. This way, the latency can be decoupled from the duration of the media segments. Without a CMAF-like packaging, lower latencies can only be achieved by using very short segment durations. However, using shorter segments means using more frequent intra-coded frames frames, and that is detrimental to video encoding quality. The CMAF standard allows us to still use longer segments (improving encoding quality) without penalizing latency.</t>
        <t>While an LL-HLS client retrieves each chunk with a separate HTTP GET request, an LL-DASH client uses the chunked transfer encoding feature of the HTTP <xref target="CMAF-CTE"/>, which allows the LL-DASH client to fetch all the chunks belonging to a segment with a single GET request. An HTTP server can transmit the CMAF chunks to the LL-DASH client as they arrive from the encoder/packager. A detailed comparison of LL-HLS and LL-DASH is given in <xref target="MMSP20"/>.</t>
      </section>
      <section anchor="non-low-latency-live">
        <name>Non-Low-Latency Live</name>
        <t>Non-low-latency live delivery of media is defined here as a livestream live stream that does not have a latency target shorter than 10 seconds.</t>
        <t>This level of latency is the historically common case for segmented media delivery using HLS and DASH. This level of latency is often considered adequate for content like news.  This level of latency is also sometimes achieved as a fallback state when some part of the delivery system or the client-side players do not have the necessary support for the features necessary to support low-latency live streaming.</t>
        <t>This level of latency can typically be achieved at scale with commodity CDN services for HTTP(s) delivery, and in some cases, the increased time window can allow for the production of a wider range of encoding options relative to the requirements for a lower latency lower-latency service without the need for increasing the hardware footprint, which can allow for wider device interoperability.</t>
      </section>
      <section anchor="on-demand">
        <name>On-Demand</name>
        <t>On-demand media streaming refers to the playback of pre-recorded media based on a user's action.  In some cases, on-demand media is produced as a by-product of a live media production, using the same segments as the live event, event but freezing the manifest that describes the media available from the media server after the live event has finished.  In other cases, on-demand media is constructed out of pre-recorded assets with no streaming necessarily involved during the production of the on-demand content.</t>
        <t>On-demand media generally is not subject to latency concerns, but other timing-related considerations can still be as important or even more important to the user experience than the same considerations with live events.  These considerations include the startup time, the stability of the media stream's playback quality, and avoidance of stalls and other media artifacts during the playback under all but the most severe network conditions.</t>
        <t>In some applications, optimizations are available to on-demand media that but are not always available to live events, such as pre-loading preloading the first segment for a startup time that does not have to wait for a network download to begin.</t>
      </section>
    </section>
    <section anchor="sec-abr">
      <name>Adaptive Encoding, Adaptive Delivery, and Measurement Collection</name>
      <t>This section describes one of the best-known ways to provide a good user experience over a given network path, but one thing to keep in mind is that application-level mechanisms cannot provide a better experience than the underlying network path can support.</t>
      <section anchor="abr-overview">
        <name>Overview</name>
        <t>A simple model of media playback can be described as a media stream consumer, a buffer, and a transport mechanism that fills the buffer.
The consumption rate is fairly static and is represented by the content bitrate.
The size of the buffer is also commonly a fixed size.
The buffer fill process needs to be at least fast enough to ensure that the buffer is never empty, empty; however, it also can have significant complexity when things like personalization or advertising insertion workflows are introduced.</t>
        <t>The challenges in filling the buffer in a timely way fall into two broad categories:</t>
        <ul spacing="normal">
          <li>Content selection comprises all of the steps needed to determine which content variation to offer the client.</li>
          <li>Content variation (also sometimes called a “bitrate ladder”) is the number set of content options renditions that exist are available at any given selection point.</li>
          <li>Content selection comprises all of the steps a client uses to determine which content rendition to play.</li>
        </ul>
        <t>The mechanism used to select the bitrate is part of the content selection, and the content variation are is all of the different bitrate renditions.</t>
        <t>Adaptive bitrate streaming ("ABR streaming", streaming" or simply "ABR") is a
   commonly used technique for dynamically adjusting the compression level and media quality of a stream to match bandwidth availability. When this goal is achieved, the media server will tend to send enough
   media that the media player does not "stall", without sending so much media that the media player cannot accept it without exhausting all available receive buffers.</t> it.</t>
        <t>ABR uses an application-level response strategy in which the streaming client attempts to detect the available bandwidth of the network path by first observing the successful application-layer download speed, and speed; then, given the available bandwidth, the client chooses a bitrate for each of the video, audio, subtitles subtitles, and metadata (among a limited number of available options for each type of media) that fits within that bandwidth, typically adjusting as changes in available bandwidth occur in the network or changes in capabilities occur during the playback (such as available memory, CPU, display size, etc.).</t>
      </section>
      <section anchor="adapt-encode">
        <name>Adaptive Encoding</name>
        <t>Media servers can provide media streams at various bitrates because the media has been encoded at various bitrates. This is a so-called "ladder" of bitrates that can be offered to media players as part of the manifest, manifest so that the media player can select among the available bitrate choices.</t>
        <t>The media server may also choose to alter which bitrates are made available to players by adding or removing bitrate options from the ladder delivered to the player in subsequent manifests built and sent to the player. This way, both the player, through its selection of bitrate to request from the manifest, and the server, through its construction of the bitrates offered in the manifest, are able to affect network utilization.</t>
      </section>
      <section anchor="adapt-deliver">
        <name>Adaptive Segmented Delivery</name>
        <t>Adaptive Segmented Delivery segmented delivery attempts to optimize its own use of the path between a media server and a media client. ABR playback is commonly implemented by streaming clients using HLS <xref target="RFC8216"/> or DASH <xref target="MPEG-DASH"/> to perform a reliable segmented delivery of media over HTTP. Different implementations use different strategies <xref target="ABRSurvey"/>, often relying on proprietary algorithms (called rate adaptation or bitrate selection algorithms) to perform available bandwidth estimation/prediction and the bitrate selection.</t>
        <t>Many systems will do an initial probe or a very simple throughput speed test at the start of media playback. This is done to get a rough sense of the highest (total) media bitrate that the network between the server and player will likely be able to provide under initial network conditions. After the initial testing, clients tend to rely upon passive network observations and will make use of player side statistics player-side statistics, such as buffer fill rates rates, to monitor and respond to changing network conditions.</t>
        <t>The choice of bitrate occurs within the context of optimizing for one or more metrics monitored by the client, such as the highest achievable audiovisual quality or the lowest chances for a rebuffering event (playback stall).</t>
      </section>
      <section anchor="advertising">
        <name>Advertising</name>
        <t>The inclusion of advertising alongside or interspersed with streaming media content is common in today's media landscape.</t>
        <t>Some commonly used forms of advertising can introduce potential user experience issues for a media stream.
This section provides a very brief overview of a complex and rapidly evolving space.</t>
        <t>The same techniques used to allow a media player to switch between renditions of different bitrates at segment or chunk boundaries can also be used to enable the dynamic insertion of advertisements (hereafter referred to as "ads"), but this does not mean that the insertion of ads has no effect on the user's quality of experience.</t>
        <t>Ads may be inserted either with either Client-side Ad Insertion (CSAI) or Server-side Ad Insertion (SSAI).
- In CSAI, the ABR manifest will generally include links to an external ad server for some segments of the media stream, while in SSAI SSAI, the server will remain the same during advertisements, ads but will include media segments that contain the advertising.
- In SSAI, the media segments may or may not be sourced from an external ad server like with CSAI.</t>
        <t>In general, the more targeted the ad request is, the more requests the ad service needs to be able to handle concurrently.
If connectivity is poor to the ad service, this can cause rebuffering even if the underlying media assets (both content and ads) can be accessed quickly.
The less targeted the ad request is, the more likely that ad requests can be consolidated, consolidated and that ads can be cached similarly to the media content.</t>
        <t>In some cases, especially with SSAI, advertising space in a stream is reserved for a specific advertiser and can be integrated with the video so that the segments share the same encoding properties properties, such as bitrate, dynamic range range, and resolution.
However, in many cases, ad servers integrate with a Supply Side Platform (SSP) that offers advertising space in real-time auctions via an Ad Exchange, with bids for the advertising space coming from Demand Side Platforms (DSPs) that collect money from advertisers for delivering the advertisements. ads.
Most such Ad Exchanges use application-level protocol specifications published by the Interactive Advertising Bureau <xref target="IAB-ADS"/>, an industry trade organization.</t>
        <t>This ecosystem balances several competing objectives objectives, and integrating with it naively can produce surprising user experience results.
For example, ad server provisioning and/or the bitrate of the ad segments might be different from that of the main content, and either of these differences can result in playback stalls.
For another example, since the inserted ads are often produced independently, they might have a different base volume level than the main content, which can make for a jarring user experience.</t>
        <t>Another major source of competing objectives comes from user privacy considerations vs. the advertiser's incentives to target ads to user segments based on behavioral data.
Multiple studies, for example, <xref target="BEHAVE"/> and <xref target="BEHAVE2"/>, have reported large improvements in ad effectiveness when using behaviorally targeted ads, relative to untargeted ads.
This provides a strong incentive for advertisers to gain access to the data necessary to perform behavioral targeting, leading some to engage in what is indistinguishable from a pervasive monitoring attack (<xref target="RFC7258"/>) <xref target="RFC7258"/> based on user tracking in order to collect the relevant data, data.
A more complete review of issues in this space is available in <xref target="BALANCING"/>.</t>
        <t>On top of these competing objectives, this market historically has had incidents of misreporting of ad delivery to end users for financial gain <xref target="ADFRAUD"/>.
As a mitigation for concerns driven by those incidents, some SSPs have required the use of specific media players that include features like reporting of ad delivery, delivery or providing additional user information that can be used for tracking.</t>
        <t>In general, this is a rapidly developing space with many considerations, and media streaming operators engaged in advertising may need to research these and other concerns to find solutions that meet their user experience, user privacy, and financial goals.
For further reading on mitigations, <xref target="BAP"/> has published some standards and best practices based on user experience research.</t>
      </section>
      <section anchor="bitrate-detection-challenges">
        <name>Bitrate Detection Challenges</name>
        <t>This kind of bandwidth-measurement system can experience trouble in several ways various
   troubles that are affected by networking and transport protocol
   issues.
Because adaptive application-level response strategies are often using rates as observed by the application layer, there are sometimes inscrutable transport-level protocol behaviors that can produce surprising measurement values when the application-level feedback loop is interacting with a transport-level feedback loop.</t>
        <t>A few specific examples of surprising phenomena that affect bitrate detection measurements are described in the following subsections.
As these examples will demonstrate, it is common to encounter cases that can deliver application-level measurements that are too low, too high, and (possibly) correct but varying that vary more quickly than a lab-tested selection algorithm might expect.</t>
        <t>These effects and others that cause transport behavior to diverge from lab modeling can sometimes have a significant impact on bitrate selection and on user QoE, especially where players use naive measurement strategies and selection algorithms that don't do not account for the likelihood of bandwidth measurements that diverge from the true path capacity.</t>
        <section anchor="idle-time">
          <name>Idle Time between Segments</name>
          <t>When the bitrate selection is chosen substantially below the available capacity of the network path, the response to a segment request will typically complete in much less absolute time than the duration of the requested segment, leaving significant idle time between segment downloads. This can have a few surprising consequences:</t>
          <ul spacing="normal">
            <li>TCP slow-start slow-start, when restarting after idle idle, requires multiple RTTs to re-establish a throughput at the network's available capacity.  When the active transmission time for segments is substantially shorter than the time between segments, leaving an idle gap between segments that triggers a restart of TCP slow-start, the estimate of the successful download speed coming from the application-visible receive rate on the socket can thus end up much lower than the actual available network capacity.  This, in turn, can prevent a shift to the most appropriate bitrate. <xref target="RFC7661"/> provides some mitigations for this effect at the TCP transport layer for senders who anticipate a high incidence of this problem.</li>
            <li>Mobile flow-bandwidth spectrum and timing mapping can be impacted by idle time in some networks. The carrier capacity assigned to a physical or virtual link can vary with activity. Depending on the idle time characteristics, this can result in a lower available bitrate than would be achievable with a steadier transmission in the same network.</li>
          </ul>

          <t>Some receiver-side ABR algorithms algorithms, such as <xref target="ELASTIC"/> target="ELASTIC"/>, are designed to try to avoid this effect.</t>
          <t>Another way to mitigate this effect is by the help of two simultaneous TCP connections, as explained in <xref target="MMSys11"/> for Microsoft Smooth Streaming. In some cases, the system-level TCP slow-start restart can also be disabled, for example, as described in <xref target="OReilly-HPBN"/>.</t>
        </section>
        <section anchor="noisy-measurements">
          <name>Noisy Measurements</name>
          <t>In addition to smoothing over an appropriate time scale to handle network jitter (see <xref target="RFC5481"/>), ABR systems relying on measurements at the application layer also have to account for noise from the in-order data transmission at the transport layer.</t>
          <t>For instance, in the event of a lost packet on a TCP connection with SACK
support (a common case for segmented delivery in practice), loss
of a packet can provide a confusing bandwidth signal to the
receiving application.  Because of the sliding window in TCP,
many packets may be accepted by the receiver without being available
to the application until the missing packet arrives.  Upon the arrival
of the one missing packet after retransmit, the receiver will
suddenly get access to a lot of data at the same time.</t>
          <t>To a receiver measuring bytes received per unit time at the
application layer and interpreting it as an estimate of the
available network bandwidth, this appears as a high jitter in
the goodput measurement, presenting as a stall followed by a sudden leap that can far exceed the actual
capacity of the transport path from the server when the hole in
the received data is filled by a later retransmission.</t>
        </section>
        <section anchor="wide-and-rapid-variation-in-path-capacity">
          <name>Wide and Rapid Variation in Path Capacity</name>
          <t>As many end devices have moved to wireless connections for the final hop (such as Wi-Fi, 5G, LTE, etc.), new problems in bandwidth detection have emerged.</t>
          <t>In most real-world operating environments, wireless links can often experience sudden changes in capacity as the end user device moves from place to place or encounters new sources of interference.
Microwave ovens, for example, can cause a throughput degradation in Wi-Fi of more than a factor of 2 while active <xref target="Micro"/>.</t>
          <t>These swings in actual transport capacity can result in user experience issues when interacting with ABR algorithms that aren't are not tuned to handle the capacity variation gracefully.</t>
        </section>
      </section>
      <section anchor="measure-coll">
        <name>Measurement Collection</name>
        <t>Media players use measurements to guide their segment-by-segment adaptive streaming requests, requests but may also provide measurements to streaming media providers.</t>
        <t>In turn, media providers may base analytics on these measurements to guide decisions decisions, such as whether adaptive encoding bitrates in use are the best ones to provide to media players, players or whether current media content caching is providing the best experience for viewers.</t>
        <t>To that effect, the Consumer Technology Association (CTA), who owns the Web Application Video Ecosystem (WAVE) project, has published two important specifications.</t>
        <ul spacing="normal">
          <li>CTA-2066: Streaming Quality of Experience Events, Properties and Metrics</li>
        </ul>
        <t><xref target="CTA-2066"/> specifies a set of media player events, properties, QoE metrics metrics, and associated terminology for representing streaming media QoE across systems, media players players, and analytics vendors. While all these events, properties, metrics metrics, and associated terminology are used across a number of proprietary analytics and measurement solutions, they were used in slightly (or vastly) different ways that led to interoperability issues. CTA-2066 attempts to address this issue by defining a common terminology as well as and how each metric should be computed for consistent reporting.</t>
        <ul spacing="normal">
          <li>CTA-5004: Web Application Video Ecosystem - Common Media Client Data (CMCD)</li>
        </ul>
        <t>Many assume that the CDNs have a holistic view of the health and performance of the streaming clients. However, this is not the case. The CDNs produce millions of log lines per second across hundreds of thousands of clients clients, and they have no concept of a "session" as a client would have, so CDNs are decoupled from the metrics the clients generate and report. A CDN cannot tell which request belongs to which playback session, the duration of any media object, the bitrate, or whether any of the clients have stalled and are rebuffering or are about to stall and will rebuffer. The consequence of this decoupling is that a CDN cannot prioritize delivery for when the client needs it most, prefetch content, or trigger alerts when the network itself may be underperforming. One approach to couple the CDN to the playback sessions is for the clients to communicate standardized media-relevant information to the CDNs while they are fetching data. <xref target="CTA-5004"/> was developed exactly for this purpose.</t>
      </section>
    </section>
    <section anchor="sec-trans">
      <name>Transport Protocol Behaviors and Their Implications for Media Transport Protocols</name>
      <t>Within this document, the term "Media Transport Protocol" "media transport protocol" is used to describe any protocol that carries media metadata and media segments in its payload, and the term "Transport Protocol" "transport protocol" describes any protocol that carries a Media Transport Protocol, media transport protocol, or another Transport Protocol, transport protocol, in its payload. This is easier to understand if the reader assumes a protocol stack that looks something like this:</t>
      <artwork><![CDATA[
          Media Segments
    ---------------------------
           Media Format
    ---------------------------
      Media Transport Protocol
    ---------------------------
       Transport Protocol(s)
]]></artwork>
      <t>where</t>
      <ul spacing="normal">
        <li>"Media Segments" segments" would be something like the output of a codec, codec or some other source of media segments, such as closed-captioning,</li>
        <li>"Media Format" format" would be something like an RTP payload format <xref target="RFC2736"/> or an ISOBMFF ISO base media file format (ISOBMFF) profile <xref target="ISOBMFF"/> profile,</li> target="ISOBMFF"/>,</li>
        <li>"Media Transport Protocol" transport protocol" would be something like RTP <xref target="RFC3550"/> or DASH <xref target="MPEG-DASH"/>, and</li>
        <li>"Transport Protocol" protocol" would be a protocol that provides appropriate transport services, as described in Section 5 of <xref target="RFC8095"/>.</li> target="RFC8095" sectionFormat="of" section="5"/>.</li>
      </ul>
      <t>Not all possible streaming media applications follow this model, but for the ones that do, it seems useful to distinguish between the protocol layer that is aware it is transporting media segments, segments and underlying protocol layers that are not aware.</t>
      <t>As described in the abstract of <xref target="RFC8095"/> Abstract, target="RFC8095"/>, the IETF has standardized a number of protocols that provide transport services. Although these protocols, taken in total, provide a wide variety of transport services, <xref target="sec-trans"/> will distinguish between two extremes:</t>
      <ul spacing="normal">
        <li>Transport
        <li>transport protocols used to provide reliable, in-order media delivery to an endpoint, typically providing flow control and congestion control (<xref target="reliable-behavior"/>) target="reliable-behavior"/>), and</li>
        <li>Transport
        <li>transport protocols used to provide unreliable, unordered media delivery to an endpoint, without flow control or congestion control (<xref target="unreliable-behavior"/>).</li>
      </ul>
      <t>Because newly standardized transport protocols protocols, such as QUIC <xref target="RFC9000"/> target="RFC9000"/>, that are typically implemented in userspace user space can evolve their transport behavior more rapidly than currently-used currently used transport protocols that are typically implemented in operating system kernel space, this document includes a description of how the path characteristics that streaming media providers may see are likely to evolve in evolve; see <xref target="quic-behavior"/>.</t>
      <t>It is worth noting explicitly that the Transport Protocol transport protocol layer might include more than one protocol. For example, a specific Media Transport Protocol media transport protocol might run over HTTP, or over WebTransport, which in turn runs over HTTP.</t>
      <t>It is worth noting explicitly that more complex network protocol stacks are certainly possible - -- for instance, when packets with this protocol stack are carried in a tunnel or in a VPN, the entire packet  would likely appear in the payload of other protocols. If these environments are present, streaming media operators may need to analyze their effects on applications as well.</t>
      <section anchor="reliable-behavior">
        <name>Media Transport Over over Reliable Transport Protocols</name>
        <t>The HLS <xref target="RFC8216"/> and DASH <xref target="MPEG-DASH"/> media transport protocols are typically carried over HTTP, and HTTP has used TCP as its only standardized transport protocol until HTTP/3 <xref target="RFC9114"/>. These media transport protocols use ABR response strategies as described in <xref target="sec-abr"/> to respond to changing path characteristics, and underlying transport protocols are also attempting to respond to changing path characteristics.</t>
        <t>The past success of the largely TCP-based Internet is evidence that the various flow control and congestion control mechanisms that TCP has used to achieve equilibrium quickly, at a point where TCP senders do not interfere with other TCP senders for sustained periods of time (<xref target="RFC5681"/>), <xref target="RFC5681"/>, have been largely successful. The Internet has continued to work even when the specific TCP mechanisms used to reach equilibrium changed over time (<xref target="RFC7414"/>). <xref target="RFC7414"/>. Because TCP provided a common tool to avoid contention, even when significant TCP-based applications like FTP were largely replaced by other significant TCP-based applications like HTTP, the transport behavior remained safe for the Internet.</t>
        <t>Modern TCP implementations (<xref target="I-D.ietf-tcpm-rfc793bis"/>) <xref target="RFC9293"/> continue to probe for available bandwidth, bandwidth and "back off" when a network path is saturated, saturated but may also work to avoid growing queues along network paths, which can prevent older TCP senders from detecting quickly detecting when a network path is becoming saturated. Congestion control mechanisms mechanisms, such as COPA Copa <xref target="COPA18"/> and BBR Bottleneck Bandwidth and Round-trip propagation time (BBR) <xref target="I-D.cardwell-iccrg-bbr-congestion-control"/> target="I-D.cardwell-iccrg-bbr-congestion-control"/>, make these decisions based on measured path delays, assuming that if the measured path delay is increasing, the sender is injecting packets onto the network path faster than the network can forward them (or the receiver can accept them) them), so the sender should adjust its sending rate accordingly.</t>
        <t>Although common TCP behavior has changed significantly since the days of <xref target="Jacobson-Karels"/> and <xref target="RFC2001"/>, even with adding new congestion controllers such as CUBIC <xref target="RFC8312"/>, the common practice of implementing TCP as part of an operating system kernel has acted to limit how quickly TCP behavior can change. Even with the widespread use of automated operating system update installation on many end-user systems, streaming media providers could have a reasonable expectation that they could understand TCP transport protocol behaviors, behaviors  and that those behaviors would remain relatively stable in the short term.</t>
      </section>
      <section anchor="unreliable-behavior">
        <name>Media Transport Over over Unreliable Transport Protocols</name>
        <t>Because UDP does not provide any feedback mechanism to senders to help limit impacts on other users, UDP-based application-level protocols have been responsible for the decisions that TCP-based applications have delegated to TCP - TCP, i.e., what to send, how much to send, and when to send it. Because UDP itself has no transport-layer feedback mechanisms, UDP-based applications that send and receive substantial amounts of information are expected to provide their own feedback mechanisms, mechanisms and to respond to the feedback the application receives. This expectation is most recently codified as a Best Current Practice <xref target="RFC8085"/>.</t>
        <t>In contrast to adaptive segmented delivery over a reliable transport as described in <xref target="adapt-deliver"/>, some applications deliver streaming media segments using an unreliable transport, transport and rely on a variety of approaches, including:</t>
        <ul spacing="normal">
          <li>raw
          <li>media encapsulated in a raw MPEG Transport Stream ("MPEG-TS")-formatted media (MPEG-TS) <xref target="MPEG-TS"/> over UDP, which makes no attempt to account for reordering or loss in the transport,</li>
          <li>RTP <xref target="RFC3550"/>, which can notice packet loss and repair some limited reordering,</li>
          <li>SCTP
          <li>the Stream Control Transmission Protocol (SCTP) <xref target="RFC9260"/>, which can use partial reliability <xref target="RFC3758"/> to recover from some loss, loss but can abandon recovery to limit head-of-line blocking, and</li>
          <li>SRT
          <li>the Secure Reliable Transport (SRT) <xref target="SRT"/>, which can use forward error correction and time-bound retransmission to recover from loss within certain limits, limits but can abandon recovery to limit head-of-line blocking.</li>
        </ul>
        <t>Under congestion and loss, approaches like the above generally experience transient media artifacts more often and delay of playback effects less often, as compared with reliable segment transport. Often Often, one of the key goals of using a UDP-based transport that allows some unreliability is to reduce latency and better support applications like videoconferencing, videoconferencing or for other live-action video with interactive components, such as some sporting events.</t>
        <t>Congestion avoidance strategies for deployments using unreliable
transport protocols vary widely in practice, ranging from being
	entirely unresponsive to congestion, to responding by using feedback strategies, including:</t>
	<ul>
	  <li>feedback signaling to change encoder settings (as in <xref target="RFC5762"/>), to using fewer target="RFC5762"/>),</li>
	  <li>fewer enhancement layers (as in <xref target="RFC6190"/>), to using proprietary and </li>
	  <li>proprietary methods to detect QoE issues and turn off video to
allow less bandwidth-intensive media media, such as audio audio, to be delivered.</t>
	  delivered.</li>
	</ul>
        <t>RTP relies on RTCP Sender sender and Receiver Reports receiver reports <xref target="RFC3550"/> as its own feedback mechanism, mechanism and even includes Circuit Breakers circuit breakers for Unicast unicast RTP Sessions sessions <xref target="RFC8083"/> for situations when normal RTP congestion control has not been able to react sufficiently to RTP flows sending at rates that result in sustained packet loss.</t>
        <t>The notion of "Circuit Breakers" "circuit breakers" has also been applied to other UDP applications in <xref target="RFC8084"/>, such as tunneling packets over UDP that are potentially not congestion-controlled congestion controlled (for example, "Encapsulating "encapsulating MPLS in UDP," UDP", as described in <xref target="RFC7510"/>). If streaming media segments are carried in tunnels encapsulated in UDP, these media streams may encounter "tripped circuit breakers," breakers", with resulting user-visible impacts.</t>
      </section>
      <section anchor="quic-behavior">
        <name>QUIC and Changing Transport Protocol Behavior</name>
        <t>The QUIC protocol, developed from a proprietary protocol into an IETF standards-track
Standards Track protocol <xref target="RFC9000"/>, turns many of behaves differently than the statements made transport protocols characterized in Sections <xref target="reliable-behavior"/> target="reliable-behavior" format="counter"/> and <xref target="unreliable-behavior"/>  on their heads.</t> target="unreliable-behavior" format="counter"/>.</t>
        <t>Although QUIC provides an alternative to the TCP and UDP transport protocols, QUIC is itself encapsulated in UDP. As noted elsewhere in <xref target="gen-encrypt"/>, the QUIC protocol encrypts almost all of its transport parameters, parameters and all of its payload, so any intermediaries that network operators may be using to troubleshoot HTTP streaming media performance issues, perform analytics, or even intercept exchanges in current applications will not work for QUIC-based applications without making changes to their networks. <xref target="stream-encrypt-media"/> describes the implications of media encryption in more detail.</t>
        <t>While QUIC is designed as a general-purpose transport protocol, protocol and can carry different application-layer protocols, the current standardized mapping is for HTTP/3 <xref target="RFC9114"/>, which describes how QUIC transport services are used for HTTP. The convention is for HTTP/3 to run over UDP port 443 <xref target="Port443"/> target="Port443"/>, but this is not a strict requirement.</t>
        <t>When HTTP/3 is encapsulated in QUIC, which is then encapsulated in UDP, streaming operators (and network operators) might see UDP traffic patterns that are similar to HTTP(S) over TCP. UDP ports may be blocked for any port numbers that are not commonly used, such as UDP 53 for DNS. Even when UDP ports are not blocked and QUIC packets can flow, streaming operators (and network operators) may severely rate-limit this traffic because they do not expect to see legitimate high-bandwidth traffic traffic, such as streaming media over the UDP ports that HTTP/3 is using.</t>
        <t>As noted in <xref target="noisy-measurements"/>, because TCP provides a reliable, in-order delivery service for applications, any packet loss for a TCP connection causes head-of-line blocking, blocking so that no TCP segments arriving after a packet is lost will be delivered to the receiving application until retransmission of the lost packet has been received, allowing in-order delivery to the application to continue. As described in <xref target="RFC9000"/>, QUIC connections can carry multiple streams, and when packet losses do occur, only the streams carried in the lost packet are delayed.</t>
        <t>A QUIC extension currently being specified (<xref target="RFC9221"/>) <xref target="RFC9221"/> adds the capability for "unreliable" delivery, similar to the service provided by UDP, but these datagrams are still subject to the QUIC connection's congestion controller, providing some transport-level congestion avoidance measures, which UDP does not.</t>
        <t>As noted in <xref target="reliable-behavior"/>, there is an increasing interest in congestion control algorithms that respond to delay measurements, measurements instead of responding to packet loss. These algorithms may deliver an improved user experience, but in some cases, they have not responded to sustained packet loss, which exhausts available buffers along the end-to-end path that may affect other users sharing that path. The QUIC protocol provides a set of congestion control hooks that can be used for algorithm agility, and <xref target="RFC9002"/> defines a basic congestion control algorithm that is roughly similar to TCP NewReno <xref target="RFC6582"/>. However, QUIC senders can and do unilaterally choose to use different algorithms algorithms, such as loss-based CUBIC <xref target="RFC8312"/>, delay-based COPA Copa or BBR, or even something completely different.</t>
        <t>The Internet community does have experience with deploying new congestion controllers without causing congestion collapse on the Internet. As noted in <xref target="RFC8312"/>, both the CUBIC congestion controller and its predecessor BIC have significantly different behavior from Reno-style congestion controllers controllers, such as TCP NewReno <xref target="RFC6582"/>, target="RFC6582"/>; both were added to the Linux kernel to allow experimentation and analysis, and both were then selected as the default TCP congestion controllers in Linux, and both were deployed globally.</t>
        <t>The point mentioned in <xref target="reliable-behavior"/> about TCP congestion controllers being implemented in operating system kernels is different with QUIC. Although QUIC can be implemented in operating system kernels, one of the design goals when this work was chartered was "QUIC is expected to support rapid, distributed development and testing of features," and features"; to meet this expectation, many implementers have chosen to implement QUIC in user space, outside the operating system kernel, and to even distribute QUIC libraries with their own applications. It is worth noting that streaming operators using HTTP/3, carried over QUIC, can expect more frequent deployment of new congestion controller behavior than has been the case with HTTP/1 and HTTP/2, carried over TCP.</t>
        <t>It is worth considering that if TCP-based HTTP traffic and UDP-based HTTP/3 traffic are allowed to enter operator networks on roughly equal terms, questions of fairness and contention will be heavily dependent on interactions between the congestion controllers in use for TCP-based HTTP traffic and UDP-based HTTP/3 traffic.</t>
      </section>
    </section>
    <section anchor="stream-encrypt-media">
      <name>Streaming Encrypted Media</name>
      <t>"Encrypted Media" has at least three meanings:</t>
      <ul spacing="normal">
        <li>Media encrypted at the application layer, typically using some sort of Digital Rights Management (DRM) system or other object encryption/security mechanism, mechanism and typically remaining encrypted at rest, rest when senders and receivers store it.</li>
        <li>Media encrypted by the sender at the transport layer, layer and remaining encrypted until it reaches the ultimate media consumer (in this document, it is referred to as end-to-end media encryption).</li>
        <li>Media encrypted by the sender at the transport layer, layer and remaining encrypted until it reaches some intermediary that is <em>not</em> the ultimate media consumer, consumer but has credentials allowing decryption of the media content. This intermediary may examine and even transform the media content in some way, before forwarding re-encrypted media content (in this document document, it is referred to as hop-by-hop media encryption).</li>
      </ul>
      <t>This document focuses on media encrypted at the transport layer, whether encryption is performed hop-by-hop hop by hop or end-to-end. end to end. Because media encrypted at the application layer will only be processed by application-level entities, this encryption does not have transport-layer implications. Of course, both hop-by-hop and end-to-end encrypted transport may carry media that is, in addition, encrypted at the application layer.</t>
      <t>Each of these encryption strategies is intended to achieve a different goal. For instance, application-level encryption may be used for business purposes, such as avoiding piracy or enforcing geographic restrictions on playback, while transport-layer encryption may be used to prevent media stream manipulation or to protect manifests.</t>
      <t>This document does not take a position on whether those goals are "valid" (whatever that might mean).</t> valid.</t>
      <t>Both end-to-end and hop-by-hop media encryption have specific implications for streaming operators. These are described in Sections <xref target="hop-by-hop-encrypt"/> target="hop-by-hop-encrypt" format="counter"/> and <xref target="e2em-encrypt"/>.</t> target="e2em-encrypt" format="counter"/>.</t>
      <section anchor="gen-encrypt">
        <name>General Considerations for Streaming Media Encryption</name>
        <t>The use of strong encryption does provide confidentiality for encrypted streaming media, from the sender to either the ultimate media consumer, consumer or to an intermediary that possesses  credentials allowing decryption. This does prevent Deep Packet Inspection deep packet inspection (DPI) by any on-path intermediary that does not possess credentials allowing decryption. However, even encrypted content streams may be vulnerable to traffic analysis. An on-path observer that can identify that encrypted traffic contains a media stream, stream could "fingerprint" this encrypted media steam, stream and then compare it against "fingerprints" of known content. The protection provided by strong encryption can be further lessened if a streaming media operator is repeatedly encrypting the same content. "Identifying HTTPS-Protected Netflix Videos in Real-Time" (<xref target="CODASPY17"/>) <xref target="CODASPY17"/> is an example of what is possible when identifying HTTPS-protected videos over TCP transport, based either on the length of entire resources being transferred, transferred or on characteristic packet patterns at the beginning of a resource being transferred. If traffic analysis is successful at identifying encrypted content and associating it with specific users, this tells an on-path observer what resource is being streamed, and by who, almost as certainly as examining decrypted traffic.</t>
        <t>Because HTTPS has historically layered HTTP on top of TLS, which is in turn layered on top of TCP, intermediaries have historically had access to unencrypted TCP-level transport information, such as retransmissions, and some carriers exploited this information in attempts to improve transport-layer performance <xref target="RFC3135"/>. The most recent standardized version of HTTPS, HTTP/3 <xref target="RFC9114"/>, uses the QUIC protocol <xref target="RFC9000"/> as its transport layer. QUIC relies on the TLS 1.3 initial handshake <xref target="RFC8446"/> only for key exchange <xref target="RFC9001"/>, target="RFC9001"/> and encrypts almost all transport parameters itself itself, except for a few invariant header fields. In the QUIC short header, the only transport-level parameter which that is sent "in the clear" is the Destination Connection ID <xref target="RFC8999"/>, and even in the QUIC long header, the only transport-level parameters sent "in the clear" are the Version, version, Destination Connection ID, and Source Connection ID. For these reasons, HTTP/3 is significantly more "opaque" than HTTPS with HTTP/1 or HTTP/2.</t>
        <t><xref target="I-D.ietf-quic-manageability"/> target="RFC9312"/> discusses the manageability of the QUIC transport protocol that is used to encapsulate HTTP/3, focusing on the implications of QUIC's design and wire image on network operations involving QUIC traffic. It discusses what network operators can consider in some detail.</t>
        <t>More broadly, RFC 9065 <xref target="RFC9065"/>, "Considerations around Transport Header Confidentiality, Network Operations, and the Evolution of Internet Transport Protocols" <xref target="RFC9065"/> describes the impact of increased encryption of transport headers in general terms.</t>
        <t>It is also worth noting that considerations for heavily-encrypted heavily encrypted transport protocols also come into play when streaming media is carried over IP-level VPNs and tunnels, with the additional consideration that an intermediary that does not possess credentials allowing decryption will not have visibility to the source and destination IP addresses of the packets being carried inside the tunnel.</t>
      </section>
      <section anchor="hop-by-hop-encrypt">
        <name>Considerations for Hop-by-Hop Media Encryption</name>
        <t>Hop-by-hop media encryption offers the benefits described in <xref target="gen-encrypt"/> between the streaming media operator and authorized intermediaries, among authorized intermediaries, and between authorized intermediaries and the ultimate media consumer, but consumer; however, it does not provide these benefits end-to-end. end to end. The streaming media operator and ultimate media consumer must trust the authorized intermediaries, and if these intermediaries cannot be trusted, the benefits of encryption are lost.</t>
        <t>Although the IETF has put considerable emphasis on end-to-end streaming media encryption, there are still important use cases that require the insertion of intermediaries.</t>
        <t>There are a variety of ways to involve intermediaries, and some are much more intrusive than others.</t>
        <t>From a streaming media operator's perspective, a number of considerations are in play. The first question is likely whether the streaming media operator intends that intermediaries are explicitly addressed from endpoints, endpoints or whether the streaming media operator  is willing to allow intermediaries to "intercept" streaming content transparently, with no awareness or permission from either endpoint.</t>
        <t>If a streaming media operator does not actively work to avoid interception by on-path intermediaries, the effect will be indistinguishable from "impersonation attacks," attacks", and endpoints cannot be assured of any level of confidentiality, confidentiality and cannot trust that the content received came from the expected sender.</t>
        <t>Assuming that a streaming media operator does intend to allow intermediaries to participate in content streaming and does intend to provide some level of privacy for endpoints, there are a number of possible tools, either already available or still being specified. These include</t>
        <ul include the following:</t>
        <dl newline="true" spacing="normal">
          <li>Server And
          <dt>Server and Network assisted Assisted DASH <xref target="MPEG-DASH-SAND"/> - this target="MPEG-DASH-SAND"/>:</dt>
	  <dd>This specification introduces explicit messaging between DASH clients and DASH-aware network elements or among various DASH-aware network elements, elements for the purpose of improving the efficiency of streaming sessions by providing information about real-time operational characteristics of networks, servers, proxies, caches, CDNs, as well as a DASH client's performance and status.</li>
          <li>"Double status.</dd>
          <dt>"Double Encryption Procedures for the Secure Real-Time Transport Protocol (SRTP)" <xref target="RFC8723"/> - this target="RFC8723"/>:</dt>
	  <dd>This specification provides a cryptographic transform for the Secure Real-time Transport Protocol SRTP that provides both hop-by-hop and end-to-end security guarantees.</li>
          <li>Secure Media guarantees.</dd>
          <dt>Secure Frames <xref target="SFRAME"/> - <xref target="SFRAME"/>:</dt>
	  <dd><xref target="RFC8723"/> is closely tied to SRTP, and this close association impeded widespread deployment, because it could not be used for the most common media content delivery mechanisms. A more recent proposal, Secure Media Frames <xref target="SFRAME"/>, also provides both hop-by-hop and end-to-end security guarantees, guarantees but can be used with other media transport protocols beyond SRTP.</li>
        </ul> SRTP.</dd>
        </dl>
        <t>A streaming media operator's choice of whether to involve intermediaries requires careful consideration. As an example, when ABR manifests were commonly sent unencrypted, some access network operators would modify manifests during peak hours by removing high-bitrate renditions to prevent players from choosing those renditions, thus reducing the overall bandwidth consumed for delivering these media streams and thereby improving reducing the network load and improving the average user experience for their customers.
Now that ubiquitous encryption typically prevents this kind of modification, a streaming media operator who used intermediaries in the past, and who now wishes to maintain the same level of network health and user experience, must choose between adding intermediaries who are authorized to change the manifests or adding some other form of complexity to their service.</t>
        <t>Some resources that might inform other similar considerations are further discussed in <xref target="RFC8824"/> (for WebRTC) and <xref target="I-D.ietf-quic-manageability"/> target="RFC9312"/> (for HTTP/3 and QUIC).</t>
      </section>
      <section anchor="e2em-encrypt">
        <name>Considerations for End-to-End Media Encryption</name>
        <t>End-to-end media encryption offers the benefits described in <xref target="gen-encrypt"/> from the streaming media operator to the ultimate media consumer.</t>
        <t>End-to-end media encryption has become much more widespread in the years since the IETF issued "Pervasive Monitoring Is an Attack" <xref target="RFC7258"/> as a Best Current Practice, describing pervasive monitoring as a much greater threat than previously appreciated. After the Snowden disclosures, many content providers made the decision to use HTTPS protection - -- HTTP over TLS - -- for most or all content being delivered as a routine practice, rather than in exceptional cases for content that was considered sensitive.</t>
        <t>However, as noted in <xref target="RFC7258"/>, there is no way to prevent pervasive monitoring by an attacker, attacker while allowing monitoring by a more benign entity who only wants to use DPI to examine HTTP requests and responses to provide a better user experience. If a modern encrypted transport protocol is used for end-to-end media encryption, unauthorized on-path intermediaries are unable to examine transport and application protocol behavior. As described in <xref target="hop-by-hop-encrypt"/>, only an intermediary explicitly authorized by the streaming media operator who is  to examine packet payloads, rather than intercepting packets and examining them without authorization, can continue these practices.</t>
        <t><xref target="RFC7258"/> said states that "The "[t]he IETF will strive to produce specifications that mitigate pervasive monitoring attacks," attacks", so streaming operators should expect the IETF's direction toward preventing unauthorized monitoring of IETF protocols to continue for the foreseeable future.</t>
      </section>
    </section>
    <section anchor="further">
      <name>Further Reading and References</name>
      <name>Additional Resources for Streaming Media</name>
      <t>The MOPS Media Operations (MOPS) community maintains a list of references and resources resources;
   for further reading at this location:</t>
      <ul spacing="normal">
        <li>
          <eref target="https://github.com/ietf-wg-mops/draft-ietf-mops-streaming-opcons/blob/main/living-doc-mops-streaming-opcons.md">https://github.com/ietf-wg-mops/draft-ietf-mops-streaming-opcons/blob/main/living-doc-mops-streaming-opcons.md</eref></li>
      </ul>
      <t>Editor's note: The URL above might or might not be changed during IESG Evaluation.  See <eref target="https://github.com/ietf-wg-mops/draft-ietf-mops-streaming-opcons/issues/114">https://github.com/ietf-wg-mops/draft-ietf-mops-streaming-opcons/issues/114</eref> for updates.</t> reading, see <xref target="MOPS-RESOURCES"/>.</t>

    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document requires has no actions from IANA.</t> IANA actions.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Security is an important matter for streaming media applications applications, and the topic of media encryption was explained in <xref target="stream-encrypt-media"/>. This document itself introduces no new security issues.</t>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Alexandre Gouaillard, Aaron Falk, Chris Lemmons, Dave Oran, Eric Vyncke, Glenn Deen, Kyle Rose, Leslie Daigle, Linda Dunbar, Lucas Pardue, Mark Nottingham, Matt Stock, Mike English, Renan Krishna, Roni Even, Sanjay Mishra, Kiran Makhjani, Chris Lemmons, Tommy Pauly, Will Law, Michael Scharf, Eric Vyncke, Erik Kline, Roman Danyliw, Valery Smyslov, Robert Wilton, Lars Eggert, Zahed Sarker, Warren Kumari, John Scudder, Martin Duke, and Nancy Cam-Winget for very helpful suggestions, reviews and comments.</t>
    </section>
  </middle>
  <back>

<displayreference target="I-D.cardwell-iccrg-bbr-congestion-control" to="BBR-CONGESTION-CONTROL"/>

    <references>
      <name>Informative References</name>

      <reference anchor="CVNI" target="https://www.ieee802.org/3/ad_hoc/bwa2/public/calls/19_0624/nowell_bwa_01_190624.pdf"> target="">
        <front>
          <title>Cisco VNI Visual Networking Index: Forecast update</title> and Trends, 2017–2022</title>
          <author>
            <organization>Cisco</organization>
          </author>
          <date year="2018"/>
        </front>
      </reference>

    <reference anchor="MOPS-RESOURCES" target="https://wiki.ietf.org/group/mops/rfc9317-additional-resources">
        <front>
          <title>rfc9317-additional-resources</title>
          <author>
            <organization/>
          </author>
          <date year="2019" month="June"/> year="2022" month="September"/>
        </front>
      </reference>

      <reference anchor="PCC" target="https://ieeexplore.ieee.org/document/8571288">
        <front>
          <title>Emerging MPEG Standards for Point Cloud Compression</title>
          <author initials="S." surname="Schwarz">
            <organization/>
          </author>
          <author initials="" surname="et al">
            <organization/> surname="Schwarz, S. et al." fullname="S. Schwarz et al.">
            <organization></organization>
          </author>
          <date year="2019" month="March"/>
        </front>
        <seriesInfo name="IEEE name="DOI" value="10.1109/JETCAS.2018.2885981"/>
	<refcontent>IEEE Journal on Emerging and Selected Topics in Circuits and Systems" value=""/> Systems</refcontent>
      </reference>

      <reference anchor="MPEGI" target="https://ieeexplore.ieee.org/document/9374648">
        <front>
          <title>MPEG Immersive Video Coding Standard</title>
	    <author initials="J. M." surname="Boyce">
            <organization/>
          </author>
          <author initials="" surname="et al"> surname="Boyce, J. M. et al.">
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
        <seriesInfo name="Proceedings name="DOI" value="10.1109/JPROC.2021.3062590"/>
	<refcontent>Proceedings of the IEEE" value=""/> IEEE, Vol. 109, Issue 9, pp. 1521-1536</refcontent>
      </reference>

      <reference anchor="MMSys11" target="https://dl.acm.org/doi/10.1145/1943552.1943574">
        <front>
          <title>An experimental evaluation of rate-adaptation algorithms in adaptive streaming over HTTP</title>
          <author initials="S." surname="Akhshabi">
            <organization/>
          </author>
          <author initials="A. C." surname="Begen">
            <organization/>
          </author>
          <author initials="C." surname="Dovrolis">
            <organization/>
          </author>
          <date year="2011" month="February"/>
        </front>
        <seriesInfo name="ACM MMSys" value=""/> name="DOI" value="10.1145/1943552.1943574"/>
	<refcontent>ACM MMSys</refcontent>
      </reference>

      <reference anchor="MMSP20" target="https://ieeexplore.ieee.org/document/9287117">
        <front>
          <title>Evaluating the performance Performance of Apple's low-latency Low-Latency HLS</title>
	   <author initials="K." surname="Durak">
            <organization/>
          </author>
          <author initials="" surname="et al"> surname="Durak, K. et al.">
            <organization/>
          </author>
          <date year="2020" month="September"/>
        </front>
        <seriesInfo name="IEEE MMSP" value=""/> name="DOI" value="10.1109/MMSP48831.2020.9287117"/>
	<refcontent>IEEE MMSP</refcontent>
      </reference>

      <reference anchor="LL-DASH" target="https://dashif.org/docs/CR-Low-Latency-Live-r8.pdf">
        <front>
          <title>Low-latency Modes for DASH</title>
          <author initials="" surname="DASH-IF">
            <organization/>
          <author>
            <organization>DASH-IF</organization>
          </author>
          <date year="2020" month="March"/>
        </front>
      </reference>

      <reference anchor="CMAF-CTE" target="https://www.akamai.com/us/en/multimedia/documents/white-paper/low-latency-streaming-cmaf-whitepaper.pdf"> target="">
        <front>
          <title>Ultra-Low-Latency
          <title>Catching the Moment With LoL+ in Twitch-Like Low-Latency Live Streaming Using Chunked-Encoded and Chunked Transferred CMAF</title> Platforms</title>
          <author initials="W." surname="Law" fullname="Will Law">
            <organization>Akamai Technologies, Inc.</organization> initials="A." surname="Bentaleb" fullname="Abdelhak Bentaleb"></author>
	  <author initials="M." surname="Akcay" fullname="Mehmet N. Akcay">
	  </author>
	  <author initials="M." surname="Lim" fullname="May Lim">
	  </author>
	  <author initials="A." surname="Begen" fullname="Ali C. Begen">
	  </author>
	  <author initials="R." surname="Zimmermann" fullname="Roger Zimmermann">
          </author>
          <date year="2018" month="October"/> year="2021" month="May"/>
        </front>
	<seriesInfo name="DOI" value="10.1109/TMM.2021.3079288"/>
	<refcontent>IEEE Trans. Multimedia, Vol. 24, pp. 2300-2314</refcontent>
      </reference>

      <reference anchor="ABRSurvey" target="https://ieeexplore.ieee.org/abstract/document/8424813"> anchor="ABRSurvey">
        <front>
          <title>A Survey survey on Bitrate Adaptation Schemes bitrate adaptation schemes for Streaming Media Over streaming media over HTTP</title>
	  <author initials="A." surname="Bentaleb" fullname="Abdelhak Bentaleb">
            <organization/>
          </author>
          <author initials="B." surname="Taani">
            <organization/>
          </author>
          <author initials="A. C." surname="Begen">
            <organization/>
          </author>
          <author initials="C." surname="Timmerer">
            <organization/>
          </author>
          <author initials="R." surname="Zimmermann">
            <organization/>
          </author>
          <author initials="A." surname="Bentaleb et al" fullname="Abdelhak Bentaleb et al.">
            <organization/>
          </author>
          <date year="2019"/>
        </front>
        <seriesInfo name="IEEE name="DOI" value="10.1109/COMST.2018.2862938"/>
	<refcontent>IEEE Communications Surveys &amp; Tutorials" value=""/> Tutorials, vol. 21/1, pp. 562-585, Firstquarter 2019</refcontent>
      </reference>

      <reference anchor="Encodings" target="https://developer.apple.com/documentation/http_live_streaming/hls_authoring_specification_for_apple_devices">
        <front>
          <title>HLS
          <title>HTTP Live Streaming (HLS) Authoring Specification for Apple Devices</title>
          <author initials="" surname="Apple, Inc">
            <organization/>
          <author>
            <organization>Apple Developer</organization>
          </author>
          <date year="2020" month="June"/>
        </front>
      </reference>

      <reference anchor="CTA-2066" target="https://shop.cta.tech/products/streaming-quality-of-experience-events-properties-and-metrics">
        <front>
          <title>Streaming Quality of Experience Events, Properties and Metrics</title>
          <author>
            <organization>Consumer Technology Association</organization>
          </author>
          <date year="2020" month="March"/>
        </front>
	<refcontent>CTA-2066</refcontent>
      </reference>

      <reference anchor="CTA-5004" target="https://shop.cta.tech/products/web-application-video-ecosystem-common-media-client-data-cta-5004">
        <front>
          <title>Common
          <title>Web Application Video Ecosystem - Common Media Client Data (CMCD)</title>
          <author initials="" surname="CTA">
            <organization/> Data</title>
          <author>
            <organization>Consumer Technology Association</organization>
          </author>
          <date year="2020" month="September"/>
        </front>
       <refcontent>CTA-5004</refcontent>
      </reference>

      <reference anchor="ELASTIC" target="https://ieeexplore.ieee.org/document/6691442">
        <front>
          <title>ELASTIC: A client-side controller Client-Side Controller for dynamic adaptive streaming Dynamic Adaptive Streaming over HTTP (DASH)</title>
          <author initials="L." surname="De Cicco">
            <organization/>
          </author>
          <author initials="V." surname="Caldaralo">
            <organization/>
          </author>
          <author initials="V." surname="Palmisano">
            <organization/>
          </author>
          <author initials="S." surname="Mascolo">
            <organization/>
          </author>
          <date year="2013" month="December"/>
        </front>
        <seriesInfo name="Packet name="DOI" value="10.1109/PV.2013.6691442"/>
	<refcontent>Packet Video Workshop" value=""/> Workshop</refcontent>
      </reference>

      <reference anchor="OReilly-HPBN" target="https://hpbn.co/building-blocks-of-tcp/">
        <front>
          <title>High Performance Browser Networking (Chapter - Chapter 2: Building Blocks of TCP)</title>
          <author> TCP</title>
          <author initials="I" surname="Grigorik" fullname="Ilya Grigorik">
            <organization/>
          </author>
          <date year="2021" month="May"/>
        </front>
      </reference>

      <reference anchor="Jacobson-Karels" target="https://ee.lbl.gov/papers/congavoid.pdf">
        <front>
          <title>Congestion Avoidance and Control</title>
          <author initials="V." surname="Jacobson">
            <organization/>
          </author>
          <author initials="M." surname="Karels">
            <organization/>
          </author>
          <date year="1988" month="November"/>
        </front>
      </reference>

      <reference anchor="COPA18" target="https://web.mit.edu/copa/">
        <front>
          <title>Copa: Practical Delay-Based Congestion Control for the Internet</title>
          <author initials="V." surname="Arun">
            <organization/>
          </author>
          <author initials="H." surname="Balakrishnan">
            <organization/>
          </author>
          <date year="2018" month="April"/>
        </front>
        <seriesInfo name="USENIX NSDI" value=""/>
	<refcontent>USENIX NSDI</refcontent>
      </reference>

      <reference anchor="Port443" target="https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.txt"> target="https://www.iana.org/assignments/service-names-port-numbers">
        <front>
          <title>Service Name and Transport Protocol Port Number Registry</title>
          <author>
            <organization/>
            <organization>IANA</organization>
          </author>
          <date year="2021" month="April"/>
        </front>
      </reference>

      <reference anchor="CODASPY17" target="https://dl.acm.org/doi/10.1145/3029806.3029821">
        <front>
          <title>Identifying HTTPS-Protected Netflix Videos in Real-Time</title>
          <author initials="A." surname="Reed">
            <organization/>
          </author>
          <author initials="M." surname="Kranch">
            <organization/>
          </author>
          <date year="2017" month="March"/>
        </front>
        <seriesInfo name="ACM CODASPY" value=""/> name="DOI" value="10.1145/3029806.3029821"/>
	<refcontent>ACM CODASPY</refcontent>
      </reference>

      <reference anchor="MPEG-DASH" target="https://www.iso.org/standard/79329.html"> target="https://www.iso.org/standard/83314.html">
        <front>
          <title>ISO/IEC 23009-1:2019
          <title>Information technology - Dynamic adaptive streaming over HTTP (DASH) - Part 1: Media presentation description and segment formats</title>
          <author>
            <organization/>
            <organization>ISO</organization>
          </author>
          <date year="2019" month="December"/> year="2022" month="August"/>
        </front>
	<seriesInfo name="ISO/IEC" value="23009-1:2022"/>
      </reference>

      <reference anchor="MPEG-DASH-SAND" target="https://www.iso.org/standard/69079.html">
        <front>
          <title>ISO/IEC 23009-5:2017
          <title>Information technology -  Dynamic adaptive streaming over HTTP (DASH) - Part 5: Server and network assisted DASH (SAND)</title>
          <author>
            <organization/>
            <organization>ISO</organization>
          </author>
          <date year="2017" month="February"/>
        </front>
	<seriesInfo name="ISO/IEC" value="23009-5:2017"/>
      </reference>

      <reference anchor="MPEG-CMAF" target="https://www.iso.org/standard/79106.html">
        <front>
          <title>ISO/IEC 23000-19:2020
          <title>Information technology - Multimedia application format (MPEG-A) - Part 19: Common media application format (CMAF) for segmented media</title>
          <author>
            <organization/>
            <organization>ISO</organization>
          </author>
          <date year="2020" month="March"/>
        </front>
	<seriesInfo name="ISO/IEC" value="23000-19:2020"/>
      </reference>

      <reference anchor="MPEG-TS" target="https://www.itu.int/rec/T-REC-H.222.0">
        <front>
          <title>H.222.0 : Information
          <title>Information technology - Generic coding of moving pictures and associated audio information: Systems</title>
          <author>
            <organization/>
            <organization>ITU-T</organization>
          </author>
          <date year="2018" month="August" day="29"/> year="2021" month="June"/>
        </front>
	<seriesInfo name="ITU-T Recommendation" value="H.222.0"/>
      </reference>

      <reference anchor="SFRAME" target="https://datatracker.ietf.org/doc/charter-ietf-sframe/"> target="https://datatracker.ietf.org/doc/draft-ietf-sframe-enc/">
        <front>
          <title>Secure Media Frames Working Group (Home Page)</title> Frame (sframe)</title>
          <author>
            <organization/>
            <organization>IETF</organization>
          </author>
          <date>n.d.</date>
        </front>
      </reference>

      <reference anchor="SRT" target="https://datatracker.ietf.org/meeting/interim-2020-mops-01/materials/slides-interim-2020-mops-01-sessa-april-15-2020-mops-interim-an-update-on-streaming-video-alliance"> target="https://datatracker.ietf.org/meeting/interim-2020-mops-01/materials/slides-interim-2020-mops-01-sessa-srt-protocol-overview-00">
        <front>
          <title>Secure Reliable Transport (SRT)
          <title>SRT Protocol Overview</title>
          <author initials="M." surname="Sharabayko" fullname="Maxim Sharabayko">
            <organization/>
          </author>
          <date year="2020" month="April" day="15"/> month="April"/>
        </front>
      </reference>

      <reference anchor="Micro">
        <front>
          <title>Microwave Oven Signal Interference Mitigation For Wi-Fi Communication Systems</title>
          <author initials="T. M." surname="Taher" fullname="Tanim M. Taher">
            <organization/>
          </author>
          <author initials="M. J." surname="Misurac" fullname="Matthew J. Misurac">
            <organization/>
          </author>
          <author initials="J. L." surname="LoCicero" fullname="Joseph L. LoCicero">
            <organization/>
          </author>
          <author initials="D. R." surname="Ucci" fullname="Donald R. Ucci">
            <organization/>
          </author>
          <date month="January" year="2008"/>
        </front>
        <seriesInfo name="2008 name="DOI" value="10.1109/ccnc08.2007.21"/>
	<refcontent>2008 5th IEEE Consumer Communications and Networking Conference 5th IEEE, Conference, pp. 67-68" value=""/> 67-68</refcontent>
      </reference>

      <reference anchor="BEHAVE" target="https://dl.acm.org/doi/abs/10.1145/1526709.1526745">
        <front>
          <title>How much can behavioral targeting help online advertising?</title>
          <author initials="J." surname="Yan" fullname="Jun Yan">
            <organization/>
          </author>
          <author initials="N." surname="Liu" fullname="Ning Liu">
            <organization/>
          </author>
          <author initials="G." surname="Wang" fullname="Gang Wang">
            <organization/>
          </author>
          <author initials="W." surname="Zhang" fullname="Wen Zhang">
            <organization/>
          </author>
          <author initials="Y." surname="Jiang" fullname="Yun Jiang">
            <organization/>
          </author>
          <author initials="Z." surname="Chen" fullname="Zheng Chen">
            <organization/>
          </author>
          <date year="2009" month="April" day="20"/> month="April"/>
        </front>
        <seriesInfo name="WWW name="DOI" value="10.1145/1526709.1526745"/>
	<refcontent>WWW '09: Proceedings of the 18th international conference on World wide webApril 2009 Pages 261-270" value=""/> web, pp. 261-270</refcontent>
      </reference>

      <reference anchor="BEHAVE2" target="https://dl.acm.org/doi/abs/10.1145/1941487.1941498">
        <front>
          <title>Online advertising, behavioral targeting, and privacy</title>
          <author initials="A." surname="Goldfarb" fullname="Avi Goldfarb">
            <organization/>
          </author>
          <author initials="C. E." surname="Tucker" fullname="Catherine E. Tucker">
            <organization/>
          </author>
          <date year="2011" month="May" day="01"/> month="May"/>
        </front>
        <seriesInfo name="Communications name="DOI" value="10.1145/1941487.1941498"/>
	<refcontent>Communications of the ACMVolume 54Issue 5May 2011 pp 25-27" value=""/> ACM, Volume 54, Issue 5, pp. 25-27</refcontent>
      </reference>

      <reference anchor="ADFRAUD" target="https://doi.org/10.3390/jcp1040039">
        <front>
          <title>Ads and Fraud: A Comprehensive Survey of Fraud in Online Advertising</title>
          <author initials="S." surname="Sadeghpour" fullname="Shadi Sadeghpour">
            <organization/>
          </author>
          <author initials="N." surname="Vlajic" fullname="Natalija Vlajic">
            <organization/>
          </author>
          <date year="2021" month="December" day="16"/> month="December"/>
        </front>
        <seriesInfo name="Journal name="DOI" value="10.3390/jcp1040039"/>
	<refcontent>Journal of Cybersecurity and Privacy 1, no. 4: 804-832." value=""/> 4, pp. 804-832</refcontent>
      </reference>

      <reference anchor="BALANCING" target="https://digitalcommons.law.scu.edu/chtlj/vol27/iss1/2/">
        <front>
          <title>Balancing Consumer Privacy with Behavioral Targeting</title>
          <author initials="D. D." initials="D." surname="Berger" fullname="Dustin D. Berger">
            <organization/>
          </author>
          <date year="2010"/>
        </front>
        <seriesInfo name="27 Santa
	<refcontent>Santa Clara High Technology Law Journal, Vol. 27 27, Issue 1 1, Article 2" value=""/> 2</refcontent>
      </reference>

      <reference anchor="IAB-ADS" target="https://www.iab.com/">
        <front>
          <title>IAB</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>

      <reference anchor="BAP" target="https://www.betterads.org/">
        <front>
          <title>The Coalition for
          <title>Making Online Ads Better Ads</title> for Everyone</title>
          <author>
            <organization/>
            <organization>Coalition for Better Ads</organization>
          </author>
          <date>n.d.</date>
        </front>
      </reference>

      <reference anchor="CoDel">
        <front>
          <title>Controlling Queue Delay</title> queue delay</title>
          <author initials="K." surname="Nichols">
            <organization/>
          </author>
          <author initials="V." surname="Jacobson">
            <organization/>
          </author>
          <date year="2012" month="July"/>
        </front>
        <seriesInfo name="Communications name="DOI" value="10.1145/2209249.2209264"/>
	<refcontent>Communications of the ACM, Volume 55, Issue 7, pp. 42-50" value=""/> 42-50"</refcontent>
      </reference>

      <reference anchor="Survey360o" anchor="Survey360" target="https://ieeexplore.ieee.org/document/9133103">
        <front>
          <title>A Survey on Adaptive 360 360° Video Streaming: Solutions, Challenges and Opportunities</title>
          <author initials="A." surname="Yaqoob">
            <organization/>
          </author>
          <author initials="T." surname="Bi">
            <organization/>
          </author>
          <author initials="G." surname="Muntean">
            <organization/>
          </author>
          <date year="2020" month="July"/>
        </front>
        <seriesInfo name="IEEE name="DOI" value="10.1109/COMST.2020.3006999"/>
	<refcontent>IEEE Communications Surveys &amp; Tutorials" value=""/> Tutorials, Volume 22, Issue 4</refcontent>
      </reference>

      <reference anchor="ISOBMFF" target="https://www.iso.org/standard/83102.html">
        <front>
          <title>ISO/IEC 14496-12:2022 Information
          <title>Information technology - Coding of audio-visual objects - Part 12: ISO base media file format</title>
          <author>
            <organization/>
            <organization>ISO</organization>
          </author>
          <date year="2022" month="January"/>
        </front>
      </reference>
      <reference anchor="I-D.ietf-quic-manageability">
        <front>
          <title>Manageability of the QUIC Transport Protocol</title>
          <author fullname="Mirja Kuehlewind">
            <organization>Ericsson</organization>
          </author>
          <author fullname="Brian Trammell">
            <organization>Google Switzerland GmbH</organization>
          </author>
          <date day="15" month="July" year="2022"/>
          <abstract>
            <t>   This document discusses manageability of the QUIC transport protocol,
   focusing on the implications of QUIC's design and wire image on
   network operations involving QUIC traffic.  It is intended as a
   "user's manual" for the wire image, providing guidance for network
   operators and equipment vendors who rely on the use of transport-
   aware network functions.

            </t>
          </abstract>
        </front>
	<seriesInfo name="Internet-Draft" value="draft-ietf-quic-manageability-18"/> name="ISO/IEC" value="14496-12:2022"/>
      </reference>

<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9312.xml"/>

<xi:include href="https://datatracker.ietf.org/doc/bibxml3/reference.I-D.cardwell-iccrg-bbr-congestion-control.xml"/>

<reference anchor="I-D.cardwell-iccrg-bbr-congestion-control">
        <front>
          <title>BBR Congestion Control</title>
          <author fullname="Neal Cardwell">
            <organization>Google</organization>
          </author>
          <author fullname="Yuchung Cheng">
            <organization>Google</organization>
          </author>
          <author fullname="Soheil Hassas Yeganeh">
            <organization>Google</organization>
          </author>
          <author fullname="Ian Swett">
            <organization>Google</organization>
          </author>
          <author fullname="Van 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-pantos-hls-rfc8216bis"> anchor="HLS-RFC8216BIS" target="https://www.ietf.org/archive/id/draft-pantos-hls-rfc8216bis-11.txt">
  <front>
    <title>HTTP Live Streaming 2nd Edition</title>
    <author initials="R" surname="Pantos" fullname="Roger Pantos"> Pantos" role="editor">
      <organization>Apple Inc.</organization>
    </author>
    <date day="11" month="May" year="2022"/>
          <abstract>
            <t>   This document obsoletes RFC 8216.  It describes a protocol for
   transferring unbounded streams of multimedia data.  It specifies the
   data format of the files and the actions to be taken by the server
   (sender) and the clients (receivers) of the streams.  It describes
   version 10 of this protocol.

            </t>
          </abstract>
  </front>
  <seriesInfo name="Internet-Draft" value="draft-pantos-hls-rfc8216bis-11"/>
</reference>
      <reference anchor="I-D.ietf-tcpm-rfc793bis">
        <front>
          <title>Transmission Control Protocol (TCP) Specification</title>
          <author fullname="Wesley M. Eddy">
            <organization>MTI Systems</organization>
          </author>
          <date day="7" month="March" year="2022"/>
          <abstract>
            <t>   This document specifies the Transmission Control Protocol (TCP).  TCP
   is an important transport layer protocol in the Internet protocol
   stack, and has continuously evolved over decades of use and growth of
   the Internet.  Over this time, a number of changes have been made to
   TCP as it was specified in RFC 793, though these have only been
   documented in a piecemeal fashion.  This document collects and brings
   those changes together with the protocol specification from RFC 793.
   This document obsoletes RFC 793, as well as RFCs 879, 2873, 6093,
   6429, 6528, and 6691 that updated parts of RFC 793.  It updates RFCs
   1011 and 1122, and should be considered as a replacement for the
   portions of those document dealing with TCP requirements.  It also
   updates RFC 5961 by adding a small clarification in reset handling
   while in the SYN-RECEIVED state.  The TCP header control bits from
   RFC 793 have also been updated based on RFC 3168.

   RFC EDITOR NOTE: If approved for publication as an RFC, this should
   be marked additionally as "STD: 7" and replace RFC 793 in that role.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-tcpm-rfc793bis-28"/>
      </reference>
      <reference anchor="RFC2001">
        <front>
          <title>TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms</title>
          <author fullname="W. Stevens" initials="W." surname="Stevens">
            <organization/>
          </author>
          <date month="January" year="1997"/>
          <abstract>
            <t>Modern implementations of TCP contain four intertwined algorithms that have never been fully documented as Internet standards: slow start, congestion avoidance, fast retransmit, and fast recovery.  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="2001"/>
        <seriesInfo name="DOI" value="10.17487/RFC2001"/>
      </reference>
      <reference anchor="RFC2736">
        <front>
          <title>Guidelines for Writers of RTP Payload Format Specifications</title>
          <author fullname="M. Handley" initials="M." surname="Handley">
            <organization/>
          </author>
          <author fullname="C. Perkins" initials="C." surname="Perkins">
            <organization/>
          </author>
          <date month="December" year="1999"/>
          <abstract>
            <t>This document provides general guidelines aimed at assisting the authors of RTP Payload Format specifications in deciding on good formats.  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="36"/>
        <seriesInfo name="RFC" value="2736"/>
        <seriesInfo name="DOI" value="10.17487/RFC2736"/>
      </reference>
      <reference anchor="RFC3135">
        <front>
          <title>Performance Enhancing Proxies Intended to Mitigate Link-Related Degradations</title>
          <author fullname="J. Border" initials="J." surname="Border">
            <organization/>
          </author>
          <author fullname="M. Kojo" initials="M." surname="Kojo">
            <organization/>
          </author>
          <author fullname="J. Griner" initials="J." surname="Griner">
            <organization/>
          </author>
          <author fullname="G. Montenegro" initials="G." surname="Montenegro">
            <organization/>
          </author>
          <author fullname="Z. Shelby" initials="Z." surname="Shelby">
            <organization/>
          </author>
          <date month="June" year="2001"/>
          <abstract>
            <t>This document is a survey of Performance Enhancing Proxies (PEPs) often employed to improve degraded TCP performance caused by characteristics of specific link environments, for example, in satellite, wireless WAN, and wireless LAN environments.  This memo provides information for the Internet community.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="3135"/>
        <seriesInfo name="DOI" value="10.17487/RFC3135"/>
      </reference>
      <reference anchor="RFC3168">
        <front>
          <title>The Addition of Explicit Congestion Notification (ECN) to IP</title>
          <author fullname="K. Ramakrishnan" initials="K." surname="Ramakrishnan">
            <organization/>
          </author>
          <author fullname="S. Floyd" initials="S." surname="Floyd">
            <organization/>
          </author>
          <author fullname="D. Black" initials="D." surname="Black">
            <organization/>
          </author>
          <date month="September" year="2001"/>
          <abstract>
            <t>This memo specifies the incorporation of ECN (Explicit Congestion Notification) to TCP and IP, including ECN's use of two bits in the IP header.  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="3168"/>
        <seriesInfo name="DOI" value="10.17487/RFC3168"/>
      </reference>
      <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="RFC3758">
        <front>
          <title>Stream Control Transmission Protocol (SCTP) Partial Reliability Extension</title>
          <author fullname="R. Stewart" initials="R." surname="Stewart">
            <organization/>
          </author>
          <author fullname="M. Ramalho" initials="M." surname="Ramalho">
            <organization/>
          </author>
          <author fullname="Q. Xie" initials="Q." surname="Xie">
            <organization/>
          </author>
          <author fullname="M. Tuexen" initials="M." surname="Tuexen">
            <organization/>
          </author>
          <author fullname="P. Conrad" initials="P." surname="Conrad">
            <organization/>
          </author>
          <date month="May" year="2004"/>
          <abstract>
            <t>This memo describes an extension to the Stream Control Transmission Protocol (SCTP) that allows an SCTP endpoint to signal to its peer that it should move the cumulative ack point forward.  When both sides of an SCTP association support this extension, it can be used by an SCTP implementation to provide partially reliable data transmission service to an upper layer protocol.  This memo describes the protocol extensions, which consist of a new parameter for INIT and INIT ACK, and a new FORWARD TSN chunk type, and provides one example of a partially reliable service that can be provided to the upper layer via this mechanism.  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="3758"/>
        <seriesInfo name="DOI" value="10.17487/RFC3758"/>
      </reference>
      <reference anchor="RFC4733">
        <front>
          <title>RTP Payload for DTMF Digits, Telephony Tones, and Telephony Signals</title>
          <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne">
            <organization/>
          </author>
          <author fullname="T. Taylor" initials="T." surname="Taylor">
            <organization/>
          </author>
          <date month="December" year="2006"/>
          <abstract>
            <t>This memo describes how to carry dual-tone multifrequency (DTMF) signalling, other tone signals, and telephony events in RTP packets. It obsoletes RFC 2833.</t>
            <t>This memo captures and expands upon the basic framework defined in RFC 2833, but retains only the most basic event codes.  It sets up an IANA registry to which other event code assignments may be added. Companion documents add event codes to this registry relating to modem, fax, text telephony, and channel-associated signalling events. The remainder of the event codes defined in RFC 2833 are conditionally reserved in case other documents revive their use.</t>
            <t>This document provides a number of clarifications to the original document.  However, it specifically differs from RFC 2833 by removing the requirement that all compliant implementations support the DTMF events.  Instead, compliant implementations taking part in out-of-band negotiations of media stream content indicate what events they support.  This memo adds three new procedures to the RFC 2833 framework: subdivision of long events into segments, reporting of multiple events in a single packet, and the concept and reporting of state events.  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="4733"/>
        <seriesInfo name="DOI" value="10.17487/RFC4733"/>
      </reference>
      <reference anchor="RFC5481">
        <front>
          <title>Packet Delay Variation Applicability Statement</title>
          <author fullname="A. Morton" initials="A." surname="Morton">
            <organization/>
          </author>
          <author fullname="B. Claise" initials="B." surname="Claise">
            <organization/>
          </author>
          <date month="March" year="2009"/>
          <abstract>
            <t>Packet delay variation metrics appear in many different standards documents.  The metric definition in RFC 3393 has considerable flexibility, and it allows multiple formulations of delay variation through the specification of different packet selection functions.</t>
            <t>Although flexibility provides wide coverage and room for new ideas, it can make comparisons of independent implementations more difficult.  Two different formulations of delay variation have come into wide use in the context of active measurements.  This memo examines a range of circumstances for active measurements of delay variation and their uses, and recommends which of the two forms is best matched

<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9293.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2001.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2736.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3135.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3168.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3550.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3758.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4733.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5481.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5594.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5681.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5762.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6190.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6582.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6817.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6843.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7258.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7414.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7510.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7656.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7661.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8083.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8084.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8085.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8095.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8216.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8312.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8404.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8446.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8622.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8723.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8824.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8825.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8834.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8835.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8999.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9000.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9001.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9002.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9065.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9114.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9260.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9111.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9075.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9221.xml"/>

</references>
    <section anchor="acknowledgments" numbered="false">
      <name>Acknowledgments</name>
      <t>Thanks to particular conditions and tasks.  This memo provides  information <contact fullname="Nancy Cam-Winget"/>, <contact fullname="Leslie Daigle"/>, <contact fullname="Roman Danyliw"/>, <contact fullname="Glenn Deen"/>, <contact fullname="Martin Duke"/>, <contact fullname="Linda Dunbar"/>, <contact fullname="Lars Eggert"/>, <contact fullname="Mike English"/>, <contact fullname="Roni Even"/>, <contact fullname="Aaron Falk"/>, <contact fullname="Alexandre Gouaillard"/>, <contact fullname="Erik Kline"/>, <contact fullname="Renan Krishna"/>, <contact fullname="Warren Kumari"/>, <contact fullname="Will Law"/>, <contact fullname="Chris Lemmons"/>, <contact fullname="Kiran Makhjani"/>, <contact fullname="Sanjay Mishra"/>, <contact fullname="Mark Nottingham"/>, <contact fullname="Dave Oran"/>, <contact fullname="Lucas Pardue"/>, <contact fullname="Tommy Pauly"/>, <contact fullname="Kyle Rose"/>, <contact fullname="Zahed Sarker"/>, <contact fullname="Michael Scharf"/>, <contact fullname="John Scudder"/>, <contact fullname="Valery Smyslov"/>, <contact fullname="Matt Stock"/>, <contact fullname="Éric Vyncke"/>, and <contact fullname="Robert Wilton"/> for the Internet community.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5481"/>
        <seriesInfo name="DOI" value="10.17487/RFC5481"/>
      </reference>
      <reference anchor="RFC5594">
        <front>
          <title>Report from the IETF Workshop on Peer-to-Peer (P2P) Infrastructure, May 28, 2008</title>
          <author fullname="J. Peterson" initials="J." surname="Peterson">
            <organization/>
          </author>
          <author fullname="A. Cooper" initials="A." surname="Cooper">
            <organization/>
          </author>
          <date month="July" year="2009"/>
          <abstract>
            <t>This document reports the outcome of a workshop organized by the Real-time Applications and Infrastructure Area Directors of the IETF to discuss network delay and congestion issues resulting from increased Peer-to-Peer (P2P) traffic volumes.  The workshop was held on May 28, 2008 at MIT in Cambridge, MA, USA.  The goals of the workshop were twofold: to understand the technical problems that ISPs and end users are experiencing as a result of high volumes of P2P traffic, and to begin to understand how the IETF may be helpful in addressing these problems.  Gaining an understanding of where in the IETF this work might be pursued and how to extract feasible work items were highlighted as important tasks in pursuit of the latter goal.  The workshop was very well attended and produced several work items that have since been taken up by members of the IETF community.   This memo provides information for the Internet community.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5594"/>
        <seriesInfo name="DOI" value="10.17487/RFC5594"/>
      </reference>
      <reference anchor="RFC5681">
        <front>
          <title>TCP Congestion Control</title>
          <author fullname="M. Allman" initials="M." surname="Allman">
            <organization/>
          </author>
          <author fullname="V. Paxson" initials="V." surname="Paxson">
            <organization/>
          </author>
          <author fullname="E. Blanton" initials="E." surname="Blanton">
            <organization/>
          </author>
          <date month="September" year="2009"/>
          <abstract>
            <t>This document defines TCP's four intertwined congestion control algorithms: slow start, congestion avoidance, fast retransmit, and fast recovery.  In addition, the document specifies how TCP should begin transmission after a relatively long idle period, as well as discussing various acknowledgment generation methods.  This document obsoletes RFC 2581.  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5681"/>
        <seriesInfo name="DOI" value="10.17487/RFC5681"/>
      </reference>
      <reference anchor="RFC5762">
        <front>
          <title>RTP and the Datagram Congestion Control Protocol (DCCP)</title>
          <author fullname="C. Perkins" initials="C." surname="Perkins">
            <organization/>
          </author>
          <date month="April" year="2010"/>
          <abstract>
            <t>The Real-time Transport Protocol (RTP) is a widely used transport for real-time multimedia on IP networks.  The Datagram Congestion Control Protocol (DCCP) is a transport protocol that provides desirable services for real-time applications.  This memo specifies a mapping of RTP onto DCCP, along with associated signalling, such that real- time applications can make use of the services provided by DCCP. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5762"/>
        <seriesInfo name="DOI" value="10.17487/RFC5762"/>
      </reference>
      <reference anchor="RFC6190">
        <front>
          <title>RTP Payload Format for Scalable Video Coding</title>
          <author fullname="S. Wenger" initials="S." surname="Wenger">
            <organization/>
          </author>
          <author fullname="Y.-K. Wang" initials="Y.-K." surname="Wang">
            <organization/>
          </author>
          <author fullname="T. Schierl" initials="T." surname="Schierl">
            <organization/>
          </author>
          <author fullname="A. Eleftheriadis" initials="A." surname="Eleftheriadis">
            <organization/>
          </author>
          <date month="May" year="2011"/>
          <abstract>
            <t>This memo describes an RTP payload format for Scalable Video Coding (SVC) as defined in Annex G of ITU-T Recommendation H.264, which is technically identical to Amendment 3 of ISO/IEC International Standard 14496-10.  The RTP payload format allows for packetization of one or more Network Abstraction Layer (NAL) units in each RTP packet payload, as well as fragmentation of a NAL unit in multiple RTP packets. Furthermore, it supports transmission of an SVC stream over a single as well as multiple RTP sessions.  The payload format defines a new media subtype name "H264-SVC", but is still backward compatible to RFC 6184 since the base layer, when encapsulated in its own RTP stream, must use the H.264 media subtype name ("H264") and the packetization method specified in RFC 6184.  The payload format has wide applicability in videoconferencing, Internet video streaming, and high-bitrate entertainment-quality video, among others.  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6190"/>
        <seriesInfo name="DOI" value="10.17487/RFC6190"/>
      </reference>
      <reference anchor="RFC6582">
        <front>
          <title>The NewReno Modification to TCP's Fast Recovery Algorithm</title>
          <author fullname="T. Henderson" initials="T." surname="Henderson">
            <organization/>
          </author>
          <author fullname="S. Floyd" initials="S." surname="Floyd">
            <organization/>
          </author>
          <author fullname="A. Gurtov" initials="A." surname="Gurtov">
            <organization/>
          </author>
          <author fullname="Y. Nishida" initials="Y." surname="Nishida">
            <organization/>
          </author>
          <date month="April" year="2012"/>
          <abstract>
            <t>RFC 5681 documents the following four intertwined TCP congestion control algorithms: slow start, congestion avoidance, fast retransmit, and fast recovery.  RFC 5681 explicitly allows certain modifications of these algorithms, including modifications that use the TCP Selective Acknowledgment (SACK) option (RFC 2883), and modifications that respond to "partial acknowledgments" (ACKs that cover new data, but not all the data outstanding when loss was detected) in the absence of SACK.  This document describes a specific algorithm for responding to partial acknowledgments, referred to as "NewReno".  This response to partial acknowledgments was first proposed by Janey Hoe.  This document obsoletes RFC 3782.  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6582"/>
        <seriesInfo name="DOI" value="10.17487/RFC6582"/>
      </reference>
      <reference anchor="RFC6817">
        <front>
          <title>Low Extra Delay Background Transport (LEDBAT)</title>
          <author fullname="S. Shalunov" initials="S." surname="Shalunov">
            <organization/>
          </author>
          <author fullname="G. Hazel" initials="G." surname="Hazel">
            <organization/>
          </author>
          <author fullname="J. Iyengar" initials="J." surname="Iyengar">
            <organization/>
          </author>
          <author fullname="M. Kuehlewind" initials="M." surname="Kuehlewind">
            <organization/>
          </author>
          <date month="December" year="2012"/>
          <abstract>
            <t>Low Extra Delay Background Transport (LEDBAT) is an experimental delay-based congestion control algorithm that seeks to utilize the available bandwidth on an end-to-end path while limiting the consequent increase in queueing delay on that path.  LEDBAT uses changes in one-way delay measurements to limit congestion that the flow itself induces in the network.  LEDBAT is designed for use by background bulk-transfer applications to be no more aggressive than standard TCP congestion control (as specified in RFC 5681) and to yield in the presence of competing flows, thus limiting interference with the network performance of competing flows.  This document defines  an Experimental Protocol for the Internet community.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6817"/>
        <seriesInfo name="DOI" value="10.17487/RFC6817"/>
      </reference>
      <reference anchor="RFC6843">
        <front>
          <title>RTP Control Protocol (RTCP) Extended Report (XR) Block for Delay Metric Reporting</title>
          <author fullname="A. Clark" initials="A." surname="Clark">
            <organization/>
          </author>
          <author fullname="K. Gross" initials="K." surname="Gross">
            <organization/>
          </author>
          <author fullname="Q. Wu" initials="Q." surname="Wu">
            <organization/>
          </author>
          <date month="January" year="2013"/>
          <abstract>
            <t>This document defines an RTP Control Protocol (RTCP) Extended Report (XR) block that allows the reporting of delay metrics for use in a range of Real-time Transport Protocol (RTP) applications.   [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6843"/>
        <seriesInfo name="DOI" value="10.17487/RFC6843"/>
      </reference>
      <reference anchor="RFC7258">
        <front>
          <title>Pervasive Monitoring Is an Attack</title>
          <author fullname="S. Farrell" initials="S." surname="Farrell">
            <organization/>
          </author>
          <author fullname="H. Tschofenig" initials="H." surname="Tschofenig">
            <organization/>
          </author>
          <date month="May" year="2014"/>
          <abstract>
            <t>Pervasive monitoring is a technical attack that should be mitigated in the design of IETF protocols, where possible.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="188"/>
        <seriesInfo name="RFC" value="7258"/>
        <seriesInfo name="DOI" value="10.17487/RFC7258"/>
      </reference>
      <reference anchor="RFC7414">
        <front>
          <title>A Roadmap for Transmission Control Protocol (TCP) Specification Documents</title>
          <author fullname="M. Duke" initials="M." surname="Duke">
            <organization/>
          </author>
          <author fullname="R. Braden" initials="R." surname="Braden">
            <organization/>
          </author>
          <author fullname="W. Eddy" initials="W." surname="Eddy">
            <organization/>
          </author>
          <author fullname="E. Blanton" initials="E." surname="Blanton">
            <organization/>
          </author>
          <author fullname="A. Zimmermann" initials="A." surname="Zimmermann">
            <organization/>
          </author>
          <date month="February" year="2015"/>
          <abstract>
            <t>This document contains a roadmap to the Request for Comments (RFC) documents relating to the Internet's Transmission Control Protocol (TCP).  This roadmap provides a brief summary of the documents defining TCP and various TCP extensions that have accumulated in the RFC series.  This serves as a guide and quick reference for both TCP implementers and other parties who desire information contained in the TCP-related RFCs.</t>
            <t>This document obsoletes RFC 4614.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7414"/>
        <seriesInfo name="DOI" value="10.17487/RFC7414"/>
      </reference>
      <reference anchor="RFC7510">
        <front>
          <title>Encapsulating MPLS in UDP</title>
          <author fullname="X. Xu" initials="X." surname="Xu">
            <organization/>
          </author>
          <author fullname="N. Sheth" initials="N." surname="Sheth">
            <organization/>
          </author>
          <author fullname="L. Yong" initials="L." surname="Yong">
            <organization/>
          </author>
          <author fullname="R. Callon" initials="R." surname="Callon">
            <organization/>
          </author>
          <author fullname="D. Black" initials="D." surname="Black">
            <organization/>
          </author>
          <date month="April" year="2015"/>
          <abstract>
            <t>This document specifies an IP-based encapsulation for MPLS, called MPLS-in-UDP for situations where UDP (User Datagram Protocol) encapsulation is preferred to direct use of MPLS, e.g., to enable UDP-based ECMP (Equal-Cost Multipath) or link aggregation.  The MPLS- in-UDP encapsulation technology must only be deployed within a single network (with a single network operator) or networks of an adjacent set of cooperating network operators where traffic is managed to avoid congestion, rather than over the Internet where congestion control is required.  Usage restrictions apply to MPLS-in-UDP usage for traffic that is not congestion controlled and to UDP zero checksum usage with IPv6.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7510"/>
        <seriesInfo name="DOI" value="10.17487/RFC7510"/>
      </reference>
      <reference anchor="RFC7656">
        <front>
          <title>A Taxonomy of Semantics and Mechanisms for Real-Time Transport Protocol (RTP) Sources</title>
          <author fullname="J. Lennox" initials="J." surname="Lennox">
            <organization/>
          </author>
          <author fullname="K. Gross" initials="K." surname="Gross">
            <organization/>
          </author>
          <author fullname="S. Nandakumar" initials="S." surname="Nandakumar">
            <organization/>
          </author>
          <author fullname="G. Salgueiro" initials="G." surname="Salgueiro">
            <organization/>
          </author>
          <author fullname="B. Burman" initials="B." role="editor" surname="Burman">
            <organization/>
          </author>
          <date month="November" year="2015"/>
          <abstract>
            <t>The terminology about, and associations among, Real-time Transport Protocol (RTP) sources can be complex and somewhat opaque.  This document describes a number of existing and proposed properties and relationships among RTP sources and defines common terminology for discussing protocol entities and their relationships.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7656"/>
        <seriesInfo name="DOI" value="10.17487/RFC7656"/>
      </reference>
      <reference anchor="RFC7661">
        <front>
          <title>Updating TCP to Support Rate-Limited Traffic</title>
          <author fullname="G. Fairhurst" initials="G." surname="Fairhurst">
            <organization/>
          </author>
          <author fullname="A. Sathiaseelan" initials="A." surname="Sathiaseelan">
            <organization/>
          </author>
          <author fullname="R. Secchi" initials="R." surname="Secchi">
            <organization/>
          </author>
          <date month="October" year="2015"/>
          <abstract>
            <t>This document provides a mechanism to address issues that arise when TCP is used for traffic that exhibits periods where the sending rate is limited by the application rather than the congestion window.  It provides an experimental update to TCP that allows a TCP sender to restart quickly following a rate-limited interval.  This method is expected to benefit applications that send rate-limited traffic using TCP while also providing an appropriate response if congestion is experienced.</t>
            <t>This document also evaluates the Experimental specification of TCP Congestion Window Validation (CWV) defined in RFC 2861 and concludes that RFC 2861 sought to address important issues but failed to deliver a widely used solution.  This document therefore reclassifies the status of RFC 2861 from Experimental to Historic.  This document obsoletes RFC 2861.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7661"/>
        <seriesInfo name="DOI" value="10.17487/RFC7661"/>
      </reference>
      <reference anchor="RFC8083">
        <front>
          <title>Multimedia Congestion Control: Circuit Breakers for Unicast RTP Sessions</title>
          <author fullname="C. Perkins" initials="C." surname="Perkins">
            <organization/>
          </author>
          <author fullname="V. Singh" initials="V." surname="Singh">
            <organization/>
          </author>
          <date month="March" year="2017"/>
          <abstract>
            <t>The Real-time Transport Protocol (RTP) is widely used in telephony, video conferencing, and telepresence applications.  Such applications are often run on best-effort UDP/IP networks.  If congestion control is not implemented in these applications, then network congestion can lead to uncontrolled packet loss and a resulting deterioration of the user's multimedia experience.  The congestion control algorithm acts as a safety measure by stopping RTP flows from using excessive resources and protecting the network from overload.  At the time of this writing, however, while there are several proprietary solutions, there is no standard algorithm for congestion control of interactive RTP flows.</t>
            <t>This document does not propose a congestion control algorithm.  It instead defines a minimal set of RTP circuit breakers: conditions under which an RTP sender needs to stop transmitting media data to protect the network from excessive congestion.  It is expected that, in the absence of long-lived excessive congestion, RTP applications running on best-effort IP networks will be able to operate without triggering these circuit breakers.  To avoid triggering the RTP circuit breaker, any Standards Track congestion control algorithms defined for RTP will need to operate within the envelope set by these RTP circuit breaker algorithms.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8083"/>
        <seriesInfo name="DOI" value="10.17487/RFC8083"/>
      </reference>
      <reference anchor="RFC8084">
        <front>
          <title>Network Transport Circuit Breakers</title>
          <author fullname="G. Fairhurst" initials="G." surname="Fairhurst">
            <organization/>
          </author>
          <date month="March" year="2017"/>
          <abstract>
            <t>This document explains what is meant by the term "network transport                          Circuit Breaker".  It describes the need for Circuit Breakers (CBs) for network tunnels and applications when using non-congestion- controlled traffic and explains where CBs are, and are not, needed. It also defines requirements for building a CB and the expected outcomes of using a CB within the Internet.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="208"/>
        <seriesInfo name="RFC" value="8084"/>
        <seriesInfo name="DOI" value="10.17487/RFC8084"/>
      </reference>
      <reference anchor="RFC8085">
        <front>
          <title>UDP Usage Guidelines</title>
          <author fullname="L. Eggert" initials="L." surname="Eggert">
            <organization/>
          </author>
          <author fullname="G. Fairhurst" initials="G." surname="Fairhurst">
            <organization/>
          </author>
          <author fullname="G. Shepherd" initials="G." surname="Shepherd">
            <organization/>
          </author>
          <date month="March" year="2017"/>
          <abstract>
            <t>The User Datagram Protocol (UDP) provides a minimal message-passing transport that has no inherent congestion control mechanisms.  This document provides guidelines on the use of UDP for the designers of applications, tunnels, and other protocols that use UDP.  Congestion control guidelines are a primary focus, but the document also provides guidance on other topics, including message sizes, reliability, checksums, middlebox traversal, the use of Explicit Congestion Notification (ECN), Differentiated Services Code Points (DSCPs), and ports.</t>
            <t>Because congestion control is critical to the stable operation of the Internet, applications and other protocols that choose to use UDP as an Internet transport must employ mechanisms to prevent congestion collapse and to establish some degree of fairness with concurrent traffic.  They may also need to implement additional mechanisms, depending on how they use UDP.</t>
            <t>Some guidance is also applicable to the design of other protocols (e.g., protocols layered directly on IP or via IP-based tunnels), especially when these protocols do not themselves provide congestion control.</t>
            <t>This document obsoletes RFC 5405 and adds guidelines for multicast UDP usage.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="145"/>
        <seriesInfo name="RFC" value="8085"/>
        <seriesInfo name="DOI" value="10.17487/RFC8085"/>
      </reference>
      <reference anchor="RFC8095">
        <front>
          <title>Services Provided by IETF Transport Protocols and Congestion Control Mechanisms</title>
          <author fullname="G. Fairhurst" initials="G." role="editor" surname="Fairhurst">
            <organization/>
          </author>
          <author fullname="B. Trammell" initials="B." role="editor" surname="Trammell">
            <organization/>
          </author>
          <author fullname="M. Kuehlewind" initials="M." role="editor" surname="Kuehlewind">
            <organization/>
          </author>
          <date month="March" year="2017"/>
          <abstract>
            <t>This document describes, surveys, and classifies the protocol mechanisms provided by existing IETF protocols, as background for determining a common set of transport services.  It examines the Transmission Control Protocol (TCP), Multipath TCP, the Stream Control Transmission Protocol (SCTP), the User Datagram Protocol (UDP), UDP-Lite, the Datagram Congestion Control Protocol (DCCP), the Internet Control Message Protocol (ICMP), the Real-Time Transport Protocol (RTP), File Delivery over Unidirectional Transport / Asynchronous Layered Coding (FLUTE/ALC) for Reliable Multicast, NACK- Oriented Reliable Multicast (NORM), Transport Layer Security (TLS), Datagram TLS (DTLS), and the Hypertext Transport Protocol (HTTP), when HTTP is used as a pseudotransport.  This survey provides background for the definition of transport services within the TAPS working group.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8095"/>
        <seriesInfo name="DOI" value="10.17487/RFC8095"/>
      </reference>
      <reference anchor="RFC8216">
        <front>
          <title>HTTP Live Streaming</title>
          <author fullname="R. Pantos" initials="R." role="editor" surname="Pantos">
            <organization/>
          </author>
          <author fullname="W. May" initials="W." surname="May">
            <organization/>
          </author>
          <date month="August" year="2017"/>
          <abstract>
            <t>This document describes a protocol for transferring unbounded streams of multimedia data.  It specifies the data format of the files and the actions to be taken by the server (sender) and the clients (receivers) of the streams.  It describes version 7 of this protocol.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8216"/>
        <seriesInfo name="DOI" value="10.17487/RFC8216"/>
      </reference>
      <reference anchor="RFC8312">
        <front>
          <title>CUBIC for Fast Long-Distance Networks</title>
          <author fullname="I. Rhee" initials="I." surname="Rhee">
            <organization/>
          </author>
          <author fullname="L. Xu" initials="L." surname="Xu">
            <organization/>
          </author>
          <author fullname="S. Ha" initials="S." surname="Ha">
            <organization/>
          </author>
          <author fullname="A. Zimmermann" initials="A." surname="Zimmermann">
            <organization/>
          </author>
          <author fullname="L. Eggert" initials="L." surname="Eggert">
            <organization/>
          </author>
          <author fullname="R. Scheffenegger" initials="R." surname="Scheffenegger">
            <organization/>
          </author>
          <date month="February" year="2018"/>
          <abstract>
            <t>CUBIC is an extension to the current TCP standards.  It differs from the current TCP standards only in the congestion control algorithm on the sender side.  In particular, it uses a cubic function instead of a linear window increase function of the current TCP standards to improve scalability and stability under fast and long-distance networks.  CUBIC and its predecessor algorithm have been adopted as defaults by Linux and have been used for many years.  This document provides a specification of CUBIC to enable third-party implementations and to solicit community feedback through experimentation on the performance of CUBIC.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8312"/>
        <seriesInfo name="DOI" value="10.17487/RFC8312"/>
      </reference>
      <reference anchor="RFC8404">
        <front>
          <title>Effects of Pervasive Encryption on Operators</title>
          <author fullname="K. Moriarty" initials="K." role="editor" surname="Moriarty">
            <organization/>
          </author>
          <author fullname="A. Morton" initials="A." role="editor" surname="Morton">
            <organization/>
          </author>
          <date month="July" year="2018"/>
          <abstract>
            <t>Pervasive monitoring attacks on the privacy of Internet users are of serious concern to both user and operator communities.  RFC 7258 discusses the critical need to protect users' privacy when developing IETF specifications and also recognizes that making networks unmanageable to mitigate pervasive monitoring is not an acceptable outcome: an appropriate balance is needed.  This document discusses current security and network operations as well as management practices that may be impacted by the shift to increased use of encryption to help guide protocol development in support of manageable and secure networks.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8404"/>
        <seriesInfo name="DOI" value="10.17487/RFC8404"/>
      </reference>
      <reference anchor="RFC8446">
        <front>
          <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
          <author fullname="E. Rescorla" initials="E." surname="Rescorla">
            <organization/>
          </author>
          <date month="August" year="2018"/>
          <abstract>
            <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
            <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8446"/>
        <seriesInfo name="DOI" value="10.17487/RFC8446"/>
      </reference>
      <reference anchor="RFC8622">
        <front>
          <title>A Lower-Effort Per-Hop Behavior (LE PHB) for Differentiated Services</title>
          <author fullname="R. Bless" initials="R." surname="Bless">
            <organization/>
          </author>
          <date month="June" year="2019"/>
          <abstract>
            <t>This document specifies properties and characteristics of a Lower- Effort Per-Hop Behavior (LE PHB).  The primary objective of this LE PHB is to protect Best-Effort (BE) traffic (packets forwarded with the default PHB) from LE traffic in congestion situations, i.e., when resources become scarce, BE traffic has precedence over LE traffic and may preempt it.  Alternatively, packets forwarded by the LE PHB can be associated with a scavenger service class, i.e., they scavenge otherwise-unused resources only.  There are numerous uses for this PHB, e.g., for background traffic of low precedence, such as bulk data transfers with low priority in time, non-time-critical backups, larger software updates, web search engines while gathering information from web servers and so on.  This document recommends a standard Differentiated Services Code Point (DSCP) value for the LE PHB.</t>
            <t>This specification obsoletes RFC 3662 and updates the DSCP recommended in RFCs 4594 and 8325 to use the DSCP assigned in this specification.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8622"/>
        <seriesInfo name="DOI" value="10.17487/RFC8622"/>
      </reference>
      <reference anchor="RFC8723">
        <front>
          <title>Double Encryption Procedures for the Secure Real-Time Transport Protocol (SRTP)</title>
          <author fullname="C. Jennings" initials="C." surname="Jennings">
            <organization/>
          </author>
          <author fullname="P. Jones" initials="P." surname="Jones">
            <organization/>
          </author>
          <author fullname="R. Barnes" initials="R." surname="Barnes">
            <organization/>
          </author>
          <author fullname="A.B. Roach" initials="A.B." surname="Roach">
            <organization/>
          </author>
          <date month="April" year="2020"/>
          <abstract>
            <t>In some conferencing scenarios, it is desirable for an intermediary to be able to manipulate some parameters in Real-time Transport Protocol (RTP) packets, while still providing strong end-to-end security guarantees. This document defines a cryptographic transform for the Secure Real-time Transport Protocol (SRTP) that uses two separate but related cryptographic operations to provide hop-by-hop and end-to-end security guarantees.  Both the end-to-end and hop-by-hop cryptographic algorithms can utilize an authenticated encryption with associated data (AEAD) algorithm or take advantage of future SRTP transforms with different properties.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8723"/>
        <seriesInfo name="DOI" value="10.17487/RFC8723"/>
      </reference>
      <reference anchor="RFC8824">
        <front>
          <title>Static Context Header Compression (SCHC) for the Constrained Application Protocol (CoAP)</title>
          <author fullname="A. Minaburo" initials="A." surname="Minaburo">
            <organization/>
          </author>
          <author fullname="L. Toutain" initials="L." surname="Toutain">
            <organization/>
          </author>
          <author fullname="R. Andreasen" initials="R." surname="Andreasen">
            <organization/>
          </author>
          <date month="June" year="2021"/>
          <abstract>
            <t>This document defines how to compress Constrained Application Protocol (CoAP) headers using the Static Context Header Compression and fragmentation (SCHC) framework. SCHC defines a header compression mechanism adapted for Constrained Devices. SCHC uses a static description of the header to reduce the header's redundancy and size. While RFC 8724 describes the SCHC compression and fragmentation framework, and its application for IPv6/UDP headers, this document applies SCHC to CoAP headers. The CoAP header structure differs from IPv6 and UDP, since CoAP uses a flexible header with a variable number of options, themselves of variable length. The CoAP message format is asymmetric: the request messages have a header format different from the format in the response messages. This specification gives guidance on applying SCHC to flexible headers and how to leverage the asymmetry for more efficient compression Rules.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8824"/>
        <seriesInfo name="DOI" value="10.17487/RFC8824"/>
      </reference>
      <reference anchor="RFC8825">
        <front>
          <title>Overview: Real-Time Protocols for Browser-Based Applications</title>
          <author fullname="H. Alvestrand" initials="H." surname="Alvestrand">
            <organization/>
          </author>
          <date month="January" year="2021"/>
          <abstract>
            <t>This document gives an overview and context of a protocol suite intended for use with real-time applications that can be deployed in browsers -- "real-time communication on the Web".</t>
            <t>It intends to serve as a starting and coordination point to make sure that (1) all the parts that are needed to achieve this goal are findable and (2) the parts that belong in the Internet protocol suite are fully specified and on the right publication track.</t>
            <t>This document is an applicability statement -- it does not itself specify any protocol, but it specifies which other specifications implementations are supposed to follow to be compliant with Web Real-Time Communication (WebRTC).</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8825"/>
        <seriesInfo name="DOI" value="10.17487/RFC8825"/>
      </reference>
      <reference anchor="RFC8834">
        <front>
          <title>Media Transport and Use of RTP in WebRTC</title>
          <author fullname="C. Perkins" initials="C." surname="Perkins">
            <organization/>
          </author>
          <author fullname="M. Westerlund" initials="M." surname="Westerlund">
            <organization/>
          </author>
          <author fullname="J. Ott" initials="J." surname="Ott">
            <organization/>
          </author>
          <date month="January" year="2021"/>
          <abstract>
            <t>The framework for Web Real-Time Communication (WebRTC) provides support for direct interactive rich communication using audio, video, text, collaboration, games, etc. between two peers' web browsers. This memo describes the media transport aspects of the WebRTC framework. It specifies how the Real-time Transport Protocol (RTP) is used in the WebRTC context and gives requirements for which RTP features, profiles, and extensions need to be supported.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8834"/>
        <seriesInfo name="DOI" value="10.17487/RFC8834"/>
      </reference>
      <reference anchor="RFC8835">
        <front>
          <title>Transports for WebRTC</title>
          <author fullname="H. Alvestrand" initials="H." surname="Alvestrand">
            <organization/>
          </author>
          <date month="January" year="2021"/>
          <abstract>
            <t>This document describes the data transport protocols used by Web Real-Time Communication (WebRTC), including the protocols used for interaction with intermediate boxes such as firewalls, relays, and NAT boxes.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8835"/>
        <seriesInfo name="DOI" value="10.17487/RFC8835"/>
      </reference>
      <reference anchor="RFC8999">
        <front>
          <title>Version-Independent Properties of QUIC</title>
          <author fullname="M. Thomson" initials="M." surname="Thomson">
            <organization/>
          </author>
          <date month="May" year="2021"/>
          <abstract>
            <t>This document defines the properties of the QUIC transport protocol that are common to all versions of the protocol.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8999"/>
        <seriesInfo name="DOI" value="10.17487/RFC8999"/>
      </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="RFC9001">
        <front>
          <title>Using TLS to Secure QUIC</title>
          <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson">
            <organization/>
          </author>
          <author fullname="S. Turner" initials="S." role="editor" surname="Turner">
            <organization/>
          </author>
          <date month="May" year="2021"/>
          <abstract>
            <t>This document describes how Transport Layer Security (TLS) is used to secure QUIC.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9001"/>
        <seriesInfo name="DOI" value="10.17487/RFC9001"/>
      </reference>
      <reference anchor="RFC9002">
        <front>
          <title>QUIC Loss Detection and Congestion Control</title>
          <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar">
            <organization/>
          </author>
          <author fullname="I. Swett" initials="I." role="editor" surname="Swett">
            <organization/>
          </author>
          <date month="May" year="2021"/>
          <abstract>
            <t>This document describes loss detection and congestion control mechanisms for QUIC.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9002"/>
        <seriesInfo name="DOI" value="10.17487/RFC9002"/>
      </reference>
      <reference anchor="RFC9065">
        <front>
          <title>Considerations around Transport Header Confidentiality, Network Operations, and the Evolution of Internet Transport Protocols</title>
          <author fullname="G. Fairhurst" initials="G." surname="Fairhurst">
            <organization/>
          </author>
          <author fullname="C. Perkins" initials="C." surname="Perkins">
            <organization/>
          </author>
          <date month="July" year="2021"/>
          <abstract>
            <t>To protect user data and privacy, Internet transport protocols have supported payload encryption and authentication for some time. Such encryption and authentication are now also starting to be applied to the transport protocol headers. This helps avoid transport protocol ossification by middleboxes, mitigate attacks against the transport protocol, and protect metadata about the communication. Current operational practice in some networks inspect transport header information within the network, but this is no longer possible when those transport headers are encrypted.</t>
            <t>This document discusses the possible impact when network traffic uses a protocol with an encrypted transport header. It suggests issues to consider when designing new transport protocols or features.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9065"/>
        <seriesInfo name="DOI" value="10.17487/RFC9065"/>
      </reference>
      <reference anchor="RFC9114">
        <front>
          <title>HTTP/3</title>
          <author fullname="M. Bishop" initials="M." role="editor" surname="Bishop">
            <organization/>
          </author>
          <date month="June" year="2022"/>
          <abstract>
            <t>The QUIC transport protocol has several features that are desirable in a transport for HTTP, such as stream multiplexing, per-stream flow control, and low-latency connection establishment.  This document describes a mapping of HTTP semantics over QUIC.  This document also identifies HTTP/2 features that are subsumed by QUIC and describes how HTTP/2 extensions can be ported to HTTP/3.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9114"/>
        <seriesInfo name="DOI" value="10.17487/RFC9114"/>
      </reference>
      <reference anchor="RFC9260">
        <front>
          <title>Stream Control Transmission Protocol</title>
          <author fullname="R. Stewart" initials="R." surname="Stewart">
            <organization/>
          </author>
          <author fullname="M. Tüxen" initials="M." surname="Tüxen">
            <organization/>
          </author>
          <author fullname="K. Nielsen" initials="K." surname="Nielsen">
            <organization/>
          </author>
          <date month="June" year="2022"/>
          <abstract>
            <t>This document describes the Stream Control Transmission Protocol (SCTP) and obsoletes RFC 4960.  It incorporates the specification of the chunk flags registry from RFC 6096 and the specification of the I bit of DATA chunks from RFC 7053. Therefore, RFCs 6096 and 7053 are also obsoleted by this document. In addition, RFCs 4460 and 8540, which describe errata for SCTP, are obsoleted by this document. </t>
            <t>SCTP was originally designed to transport Public Switched Telephone Network (PSTN) signaling messages over IP networks. It is also suited to be used for other applications, for example, WebRTC.</t>
            <t>SCTP is a reliable transport protocol operating on top of a connectionless packet network, such as IP. It offers the following services to its users:</t>
            <t>The design of SCTP includes appropriate congestion avoidance behavior and resistance to flooding and masquerade attacks.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9260"/>
        <seriesInfo name="DOI" value="10.17487/RFC9260"/>
      </reference>
      <reference anchor="RFC9111">
        <front>
          <title>HTTP Caching</title>
          <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding">
            <organization/>
          </author>
          <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham">
            <organization/>
          </author>
          <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke">
            <organization/>
          </author>
          <date month="June" year="2022"/>
          <abstract>
            <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document defines HTTP caches and the associated header fields that control cache behavior or indicate cacheable response messages. </t>
            <t>This document obsoletes RFC 7234.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="98"/>
        <seriesInfo name="RFC" value="9111"/>
        <seriesInfo name="DOI" value="10.17487/RFC9111"/>
      </reference>
      <reference anchor="RFC9221">
        <front>
          <title>An Unreliable Datagram Extension to QUIC</title>
          <author fullname="T. Pauly" initials="T." surname="Pauly">
            <organization/>
          </author>
          <author fullname="E. Kinnear" initials="E." surname="Kinnear">
            <organization/>
          </author>
          <author fullname="D. Schinazi" initials="D." surname="Schinazi">
            <organization/>
          </author>
          <date month="March" year="2022"/>
          <abstract>
            <t>This document defines an extension to the QUIC transport protocol to add support for sending and receiving unreliable datagrams over a QUIC connection.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9221"/>
        <seriesInfo name="DOI" value="10.17487/RFC9221"/>
      </reference>
      <reference anchor="RFC9075">
        <front>
          <title>Report from the IAB COVID-19 Network Impacts Workshop 2020</title>
          <author fullname="J. Arkko" initials="J." surname="Arkko">
            <organization/>
          </author>
          <author fullname="S. Farrell" initials="S." surname="Farrell">
            <organization/>
          </author>
          <author fullname="M. Kühlewind" initials="M." surname="Kühlewind">
            <organization/>
          </author>
          <author fullname="C. Perkins" initials="C." surname="Perkins">
            <organization/>
          </author>
          <date month="July" year="2021"/>
          <abstract>
            <t>The Coronavirus disease (COVID-19) pandemic caused changes in Internet user behavior, particularly during the introduction of initial quarantine and work-from-home arrangements. These behavior changes drove changes in Internet traffic.</t>
            <t>The Internet Architecture Board (IAB) held a workshop to discuss network impacts of the pandemic on November 9-13, 2020. The workshop was held to convene interested researchers, network operators, network management experts, and Internet technologists to share their experiences. The meeting was held online given the ongoing travel and contact restrictions at that time.</t>
            <t>Note that this document is a report on the proceedings of the workshop.  The views and positions documented in this report are those of the workshop participants and do not necessarily reflect IAB views helpful suggestions, reviews, and positions.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9075"/>
        <seriesInfo name="DOI" value="10.17487/RFC9075"/>
      </reference>
    </references> comments.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+y9624b2ZIu+J9PkVDhTEl9SN0s+XYOeo4suaq8t+3StlRV
fUGjkCSTYpYpJjczKVnb7UG/w/waYObl+kkmvi8i1lqZJFWujYPBYDAb6C5Z
yly5LrHi+kXEYDDoNWUzK15mPy6KZd6U1TyfZefVvC7H9u86m1TL7KpZFvlt
Ob/J3hXjMu/lw+GyuHup/0r++uOi7o2r0Ty/lTHHy3zSDMqimQxuq0U9qP2x
QbUYyciDo+PeOG+Kl72R/P+bavnwMivnk6pXLpYvs2a5qpvjw8MXh8c9ffNl
9ub19Xe9XH6WCV9e9e6r5cebZbVayETw74/Fg/xqLM/Nm2I5L5rBBabQk/fz
+fjXfFbNZVoPRd1blC+zf22qUT+rq6UMPqnlp4db/UEWcJsvFjLRf+v18lUz
rZYve1k2kP/LZIL1y+xP+9kP1Wwmg/J3utw/5R+L1q+r5c3L7OxjfpuX2XUx
ms6rWXVTFvKFN/PRPh/BwormZXZ0epi9Wlb5+D5/4B9GZSO7cZ7fDpfl+Kbo
Z+/OssPjo5MT/Wu1mjfYrp/mZVOM5QBkA+usmmRnt8WyHOV8qpAPz15mv8m8
pjqtfdmT/3GDX++Pqtv2ms72s1fFTTFPVnQ2K5PfcTnviwa7Lt9UQmjN5nol
f3lIv53Pyv0hRvgfc39x/9ZeTL59tZ9d5Pcf5efk61eLYj4qlq2/cA7X+P28
8bVmb9+e//FdqXX0sQ6+DypNdqYHOlzeyg24E/KU985/fv/mJd9v8uUNjmza
NIv65cHB/f29vF0Uzw+P92V6B08O8vGv02p0MLzPjw8Wq+GsHB2M8tmsPjh6
8evh0+OTg3l1X8xmv8oDvx4e/Xr0Ar/cX4wnOr5eyJ3zsh5VmXw2+65aFqO8
brLVAtdlh4/x4mR/Ws2L7Piknx0fHr3APC/PzzdPE1P8tJjJUJwtpyqEvrqV
nTx4fvrs6Pj589b3X8ue3fDGX77+Hns5H+fLsbKDy6qU/T+fVauxcIvbxbKo
a+EVOrN4Y/C/QTjhq9H0Pl/+rf37ohEa2U9WhIUMDp/o7ZBTK2ocBa7+69fZ
n6rVEhyqmmdhejKv7KqYFSMc+XW1KEe1DJ2dl8vRqmxq/ftD3RS3NTYIq9ly
ko9u0Ysnz06enrS3iDvz5lZmUgudZD8L06xkP8aYlm/Y+p4MAg95J1euehgV
vc0bki7/clmNigIjk6CbacEd4YreyfKOjjavaTzbz0e3tpTy4Ohw/+jo5FQo
8eTJ6enxPv/77KS1qrN5Jtsg38a6ZbOLu3y2oizAl0UqFIN8nC8a/VU+E8Zd
NtNb7jr/gL0IvD6r7uQO/3B9ffk4dZx9nNbTfFi2/yBM6TzlS+EP8tuL6m5Z
zcq6TTxHA5EX3d07O3+n22T7dXl8+PeQwPHzZ0dHz9q3xDZHFoozkW0j3xDW
Qr6zWMyKb+tsVt0PZjLD+egh++Ht1SM78WdZ12qZf/zdW3J8ODh8sfmWYIFY
6Nu3g4uzqx+2EEZeT8uJL7A+OP8weCuzfKuzHLyVQxwsn69xpbfJSt5V40L5
AT7zyKLw58Gb79bm/4Sc9d3Zd4Pz69fbuWtOEQq+fLCqD4r5we1q1pQUI+Fw
6oP7qTD9wSKXIzhI9jvROkSqTwZ8jE+tre2nWbPM011IFJufavz/8+lqLiJs
8Ho+krWPyVvsd9n1Mp/Xk2K5lJ+xpo37Yf91EfdLOZtlb/P78Gtu1y/7rd9R
5u1s1SN22vT/fHB0iG09e/XharW8Kx6+ntDzoexVPmoSuXByfPL86EmbPWQ6
Lpjwq7IBP8jOIj8QLl/cFhu1xuzHr2AFr/az6zyf/wE+cF2CAxfL9h8+7Gf/
wj/IZZx3t9/Um+G4mE3zjzIuGF0xTO9ZlqpF63+OwmrzHRSpeLuai86hOrRu
WZ39L6IjNcIv8xlZEekIPH3LHS3uilkFUs3BSHgD/Gw48AGe/HUmd/XXQOYH
01n9q26t/OtX0XNG5cQm8qucyq8c61cZuxwVdetohTVlZ/4m9K/4Js+T7Cy7
0DcfOUM+l2i56Z1/yjt/fTY4Pnz6dPOy62m12B81+X4jxH6wWFbj1UgueLzI
f12JXtk8DKrJQCUVVLmBbJbwgYE8L79q5DgGcj0Ht0Ujql9rnZEs/6IDgVW/
DgNlrzlQHzLXRuJFf5eM1F027yjsJjmbZbykD9lZXVejklu4hf3JVpweHp78
oa24L4YDHKMdzuAOmsegGFU1FZ2BEMqt/JoscjCaybKagXxZfpb/w9fS7Tjn
w3ZFz/mw6NxNnu2evzu/2Nt+zDL1DSIJZP327Or6zd+jiD59+kJsnOO2iLXR
srPMlgLrVLR9UfbFrJH9Bm2OH+RSl6NHNZBsF5Jo7xHKfSvitxDdcTSq2n/4
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
9CYPxfpkPJM9gOmzJOTXIlnM9B7Z2xGUWRCjCdvDvH5e2C3Eucum7Sr2U1hf
JLkHfH8GOGNabJ4kJLMemYLJgkthslSrjS+hRWwZK1HBEprQKolZBg5KYo4h
tksUkmqe4MtD4Yi0DLXhXMilbIX9zcfUyr3gUinyA/psSf2wBY1zeaJ/6has
7bi03lmRqagSRcQnbZM3l1GnUhMLu4c/+yyV/rWKAj/8IVREjPiAy1DS98O1
mEuK1j09RVF72UGtCewFfo9PKfMpVtlWhTW/FDWtmaLr47bq6zuo2aJ7IbWt
jYNEVlNMa8AVssJt2JdfUsBQSOCjJzndLEZBtrMmq3UTKiXwnmlWfqTMtZw/
K2oShmO9mU3MN/SJsM1iwoHo1oUNH+bRBoTto8CtFWAnZE/dRBT3LeV4XC28
e4ccgTm1qJHAV0lxHGQ7zw7delEj7ru2f4rUWA3FOp6z3PkkxHcZ+RUFNyQd
8nPeywJPIHxg1Sr6qphpjQDrTxyqBFhf4VD95L0YjgNQIgnRZIox9mDLt5Zr
SdbCmYSyYj+epFkPi7Z6DfvoLyJCJbCBQUjva+EEOPp4SYlAPyMTSzpiqa2G
WnkelcWpeFLW6I161tV9FKSpoAbBDuW2weVlIVDYM9jY8Ouk6doU7akN1dRA
pTYc1lh4Glzpd8UU/edrBfasljdaUKsSw87KDiRJ93NlSVpOJNRb3OZmgzGR
ngYvcncnNNLLCqo3BA0ziVa7CGpjiE31l4UaUr3irXy613u77TL9z9InomLk
9bbXdATwFb6i7EELTykaJ+lt6wCqxnpWAQ+XXf+clInMzoLcAkqcmY+ewcZ9
nFi16K/XWshd8YoqLm7edOeGgeHGpClgmyNmwv24dk8OYtfWpJT1bc1GgN9W
qy2gleBQIbNak99KvCqNIoMEY4dEQ8T4lvOWAeUYDLrGAdVWRLqCreTuMFW5
BXs1x7y1ALEK6aXWow5eEteQhI2hAtk0wQ+1NqdLuYmE7NJYp6IlqDcW2ZuA
W0K40wWUu5TnYpAIvSy996tqkWmFBDKacEQGDZX7XTI/Vm2icTE2bLrplSnF
x+mposSvilwTjjGZ1I4fjQLUVSb6BCybLyyADjz3WDg2TWeh7un2wM7I7A0i
f/tp0zIvBehYDpunY9EnqLNoSEEKMZcfAWFSLbc/HLJ100KCXutgwsKL3phM
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
3g5M+ePWdgxCbqMz80BssUz3H5+PQtfomYkmVSI2jAYf2EIoVvChicnUtnG2
cxlaer+LLb3fkNOdUac2Ka2NvR+podH3rVBmtalROMOAmOjNssi1FhJ+UNsP
FxbKlpYvXBbafkG47qQxO+lK7tlYQYiQmgrh99bQjUmuUPDS/DFekcWR0+pl
TaKAAwuaMPL19srKNlKAEig+C6OrUhszU7iepWhoJSta/t+tXU1P20AQvfMr
Vj1WMRZST6hCiiAgGgcQoSD1tiFOYnC8yI6J/O/73uys4xirpx4dx94P787X
zrx3KG5Xz06CVxpmV5tNPG6lSfDeGbfT3mO5ybr17gPzCT65+9rDXNvPdPYf
pFOLAKdOOfBawT/0FeTEWf0ln5Gj1Bg+bNb7p19TWO0M60qWTONJTKjg9lbR
5TmxVw+3EjzWRCaZ1EBBo4lZHrzwiLXFBiCEnhyU0z0rAMplYf4Vn2wj16uj
hKGBaEhddCTlsAfqCwOLcBoeBtNBdSmOKjW/AikNVQcNZVZoaU8/wNmNHxw6
u2j+LUX4RTAN3S63x6tSNVv1l2VwxzsF6WKutYeQOyKRhZz80BXVmxp9V3A7
xWdWBnI5qjjIi8pmiir17SmIHvHsmdXzGaDxPD32EYVNUDTK5jgsUFqnv3JD
yS4BGS2U7GkHeE6RBQyVnRNsFd0yHtSiM/Od1hjSZ/c70L+HorADj5gjbmrq
AxU1s7glwfVadeCj8r17fAal1iLwlSpJTYmZ3UNIHUorgklBgUPmE18T1D6t
u0s19GqAXt5q8nju/PSen5yY7+bnZrf7qM7jeI3vXC9O0WAsSne/jrbuo4qX
pV3tIvmJ11E7x5H7oMCKF7lbxOxdnEtxXrR0r8N/Pd0uL6DNlpm3yynLziUe
9/sxUVQYb1W4gBysfk3Ao1Mz+HYyvzETcqYHlsN5mv6HkfhS7/js7MeFzKCH
bRPsAXM7vhv3DIt+SljrOzC0FqjlqP35rE9xDu5P/0XtDa0na2O0ArhU9jK5
BhDnWy4JB+N3sLh7/5XMdLhqvM1cCmjU/qi4E2PB+IQk7tBpoRziCMevzLfJ
06XyOWCKLDnssE3GsC8tWXHMjast9j/23MiMbYnOXdv8fWQuNyUaTlL6TpBW
VzypuYfYHZkJ2YaemwJSamRu8rQomEyFG1NW3Tw6plsmaZVn0EE2W9M1S2Du
W3NVFwsLDZfU0LvmAU3WuDezMMDvnEDDbJhWNMM0mzm2NHoxI/LOpFiTY2vE
4h58kCk6tiksLiELpEQZjrEt3qBrZ7hT4s40Q0/xovfNG0zuL4N5wkZu0IGa
AdgXSr/E7tkY1jYcgzlDOaveQHHxbqasqmXDsHIwuKLJMzz3TEaZxsy3TZW7
T95epFBNePGO0jmhtTch9QxclD+WXGFzjJm6/sXSZjPTegttNzK/3KZA62QT
LGViMCeYNTbPNXVnGbK6xCp5YWqVTxWQ2AHR9OggV/VaCwKoYFKyMYVSg+1W
kYWiKDJM2Dz5C4tauIW6VgEA

-->
</rfc>