<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.19 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-tomar-scone-ecn-00" category="info" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.24.0 -->
  <front>
    <title abbrev="SCONE Signaling Need">SCONE Need for Defining A New On-Path Signaling Mechanism</title>
    <seriesInfo name="Internet-Draft" value="draft-tomar-scone-ecn-00"/>
    <author initials="A." surname="Tomar" fullname="Anoop Tomar">
      <organization>Meta</organization>
      <address>
        <email>anooptomar@meta.com</email>
      </address>
    </author>
    <author initials="M." surname="Ihlar" fullname="Marcus Ihlar">
      <organization>Ericsson</organization>
      <address>
        <email>marcus.ihlar@ericsson.com</email>
      </address>
    </author>
    <author initials="W." surname="Eddy" fullname="Wesley Eddy">
      <organization>Meta</organization>
      <address>
        <email>wesleyeddy@meta.com</email>
      </address>
    </author>
    <author initials="I." surname="Swett" fullname="Ian Swett">
      <organization>Google</organization>
      <address>
        <email>ianswett@google.com</email>
      </address>
    </author>
    <author initials="A." surname="Tiwari" fullname="Abhishek Tiwari">
      <organization>Meta</organization>
      <address>
        <email>atiwari@meta.com</email>
      </address>
    </author>
    <author initials="M." surname="Joras" fullname="Matt Joras">
      <organization>Meta</organization>
      <address>
        <email>mjoras@meta.com</email>
      </address>
    </author>
    <date year="2024" month="November" day="03"/>
    <area>Web and Internet Transport</area>
    <workgroup>SCONE</workgroup>
    <keyword>ECN</keyword>
    <abstract>
      <?line 78?>

<t>This document discusses the need for defining a new on-path signaling mechanism
and addresses the question “why can't we use Explicit Congestion Notification
(ECN)” for the SCONE use-case.</t>
      <t>The SCONE objective is to optimize user QoE for streaming media/video
services through network assisted application-level self-adaptation. This
requires a Communication Service Provider’s (CSP’s) network device to send
streaming media/video traffic profile characteristics (e.g. for allowed average
media/video bit-rate, burst rate etc.) with the client application endpoint to
enable content self adaptation implementations by content application providers
(CAPs).</t>
    </abstract>
  </front>
  <middle>
    <?line 92?>

<section anchor="scone-background-and-introduction">
      <name>SCONE Background and Introduction</name>
      <t>Currently Communication Service Provider (CSP) networks (mainly cellular and
satellite networks) perform bit-rate throttling (shaping or policing) of
streaming video flows. The motivation behind throttling may vary across CSPs.
For example, the motivation can be:</t>
      <ul spacing="normal">
        <li>
          <t>To support different data-rates based on the subscribers’ data plans;</t>
        </li>
        <li>
          <t>To reduce egress (tonnage) towards radio base-stations in the downlink direction;</t>
        </li>
        <li>
          <t>To limit the overall capacity/bandwidth required and to manage CAPEX
requirements (e.g. the needs for more RF spectrum and deployment of more radio
base-stations);</t>
        </li>
        <li>
          <t>Or other reasons.</t>
        </li>
      </ul>
      <t>Video traffic is already 70% of all traffic on the Internet and is expected to
grow to 80% by 2028. New formats like short form videos have seen tremendous
growth in recent years. Both in developed and emerging markets video traffic
forms 50-80% of traffic on mobile networks. These growth trends are likely to
increase with new populations coming online on mobile-first markets and the
observation that unlike text content, video content consumption is not being
limited by literacy barriers. On the other hand, the electromagnetic spectrum
is a limited resource. In order to ensure that mobile networks continue
functioning in a healthy state despite this incredible growth, CSPs will be
required to make infrastructure investments such as more licensed spectrum,
cell densification, massive MIMO etc.</t>
      <t>In order to flatten the rate of growth, CSPs in several markets attempt to
identify and throttle video traffic based on user data plans. CSPs currently
use this throttling as a way to create service differentiation between users on
different payment plans and to enforce fair usage plans.  There are several
problems with this kind of throttling:</t>
      <ol spacing="normal" type="1"><li>
          <t>CSPs can not explicitly measure the effect that throttling has on the end
user’s quality of experience (QoE) making this an open loop approach.  Throttling in the CSP network has a significant negative impact on streaming video application QoE and also degrades User Equipment (UE) battery performance.</t>
        </li>
        <li>
          <t>Traffic detection and throttling for every flow is compute intensive for
CSPs. With distributed UPF (user plane function) in 5G mobile networks more
nodes in CSP network may need to support traffic detection and throttling.
Traffic detection can have inaccuracies and these inaccuracies are expected to
increase as the content delivery industry moves towards end-2-end encryption
like TLS 1.3 and encrypted client hello (ECH).  To perform throttling, CSP networks need to detect streaming video flows, which needs deep packet inspection and trial decryption of QUIC initial packets in order to decode and read the Server Name Indication (SNI) field present in the ClientHello message.  This requires significant compute resources and risks ossifying QUIC.  The throttling (shaping or policing) itself also requires non-trivial compute and memory resources.</t>
        </li>
        <li>
          <t>The unpredictable and non-transparent behavior of traffic throttlers used by
CSPs confuse the bandwidth estimation and congestion control protocols being
used within end-2-end video delivery sessions between content server and
client. This results in poor quality of experience (QoE) for the end user.</t>
        </li>
        <li>
          <t>Content and Application Providers (CAPs) are designing algorithms to detect
the presence of such traffic throttlers to counter their detrimental effects.
These algorithms have their own inaccuracies in detection and add compute
resources on the CAP side.  CAPs do not and should not have access to subscriber payment plan information, making these algorithms complex to create and maintain.</t>
        </li>
      </ol>
      <t>There is a need for a solution to these problems which achieves both superior
user QoE for CAPs, along with supporting CSPs' needs for differentiated data
limitations consistent with subscriber plans.</t>
      <t>An alternative approach is for CAPs to self-adapt the traffic corresponding to
video flows. Since CAPs control the client and server endpoints and can measure
end user QoE, they are in a better position to do this self-adaptation in a
close loop manner. This alternative approach has already been proven to improve
user QoE in production deployments <xref target="YouTube"/>.</t>
      <t>For this alternative approach to work a standardized secure on-path network
interface is required which will enable CSP controlled network elements to
signal the desired traffic profile characteristics to the CAP client/server
endpoints. The Standard Communication with Network Elements (SCONE) protocol
(previously known as SADCDN and SCONEPRO) is an IETF working group
<xref target="SCONE-Charter"/> motivated by this alternate approach.</t>
      <t>Requirements for a technical solution based on this approach are described in <xref target="I-D.joras-sconepro-video-opt-requirements"/>.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="ecn-overview">
      <name>ECN Overview</name>
      <t>Explicit Congestion Notification (ECN) is an extension to the Internet
Protocol.  ECN allows end-to-end notification of network congestion without
dropping packets. ECN is an optional feature that may be used between two
ECN-enabled endpoints when the underlying network infrastructure also supports
it.</t>
      <section anchor="ecn-ip-header-bits">
        <name>ECN IP Header Bits</name>
        <t>ECN uses the two least significant (right-most) bits of the Traffic Class field in the IPv4 or IPv6 header to encode four different code points:</t>
        <t>00 – Not ECN-Capable Transport, Not-ECT</t>
        <t>01 – ECN Capable Transport(1), ECT(1) - For L4S ECN enabled Transport</t>
        <t>10 – ECN Capable Transport(0), ECT(0)</t>
        <t>11 – Congestion Experienced, CE. - To be set by a network element which can detect congestion in the link.</t>
      </section>
      <section anchor="ecn-principles">
        <name>ECN Principles</name>
        <t>In general both classic ECN <xref target="RFC3168"/> and L4S ECN RFC 9330
<xref target="RFC9330"/>, RFC 9331 <xref target="RFC9331"/> and RFC 9332 <xref target="RFC9332"/>  are mechanisms to
send end-to-end notification of network congestion. Use of ECN relies on the
following principles:</t>
        <ol spacing="normal" type="1"><li>
            <t>Sender to set the ECT code-points correctly for a particular flow.</t>
          </li>
          <li>
            <t>Receiver to send the feedback back to the sender correctly based on CE value.</t>
          </li>
          <li>
            <t>Network elements to set the CE bit correctly based on actual congestion conditions in the network.</t>
          </li>
          <li>
            <t>ECN codepoints are not bleached or remarked within the network, other than to set the CE bit when appropriate.</t>
          </li>
        </ol>
      </section>
    </section>
    <section anchor="questions">
      <name>Questions</name>
      <section anchor="why-cant-we-use-ecn-instead-of-defining-a-new-scone-signal">
        <name>Why can't we use ECN instead of defining a new SCONE signal?</name>
        <t>The CE bit in ECN is used by the network element to notify the application
end-points about the congestion in the network.</t>
        <t>SCONE is addressing a use-case wherein the network element does “intentional
throttling” (shaping/policing) due to various reasons as mentioned earlier in
this document such as to create service differentiation between users on
different payment plans, to enforce fair usage plans, and to reduce
egress (tonnage) towards radio base-stations in downlink direction. In order to
replace throttling by “application level self-adaptation” SCONE signaling is
required to carry video/media bit-rate etc. between network element and
application end-point (note: exact metadata and data-types are to be defined
during the solution definition phase of SCONE)</t>
        <t>ECN signaling can not support this use-case due to reasons mentioned below:</t>
        <ul spacing="normal">
          <li>
            <t>In the case of intentional throttling, CSP networks throttle the video flow
to a fixed bit rate instantly.  To replace the throttling in the network
by “self bitrate adaptation”, the CSP network is required to send a
specific video bitrate within SCONE signaling meta-data to enable instant
convergence of flow’s bit rate to a specific bit-rate. This is not possible
with ECN signaling.</t>
          </li>
          <li>
            <t>Throttling is a CSP’s policy-based restriction of the flow rather than a
congestion-based one. Throttling is not based on queue occupancy, competing
traffic, contention for bandwidth/radio-resource etc.  SCONE signal is
intended for application layer adaptation whereas ECN is designed for transport
layer adaptation.  Through ECN, the CSP network forces the sender's transport
rate to be within a specific range, rather than communicating what the
application layer media bitrate should be. This implies that usage of ECN will
retain some of the negative effects of network shaping such as delaying the
video startup time.  </t>
            <ul spacing="normal">
              <li>
                <t>For example, a key part of the success of YouTube's Plan Aware Streaming
<xref target="YouTube"/> is that YouTube could still burst at a much faster rate than the
long term media bitrate.  This is more efficient for CAPs’ servers, more
efficient on client devices, and means CAPs can still use existing ABR
algorithms, and just cap the quality based on the communicated long term
bandwidth limit. This just isn't possible with ECN.  If one allows sending 10
Mbps for some period of time, but not average, BBR is going to think it can
send that fast and the ABR algorithm is going to upswitch and then both are
going to have a poor experience when the delivery rate suddenly decreases.  ECN
avoids some packet loss, but otherwise it can't do anything fundamentally new.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Congestion based ECN signaling is typically performed at the element which is
next to the congested link so that it can detect congestion and set the CE bits
accordingly. To enable subscriber’s data-plan based bit-rate signaling as well
as to reduce egress towards radio base-stations in downlink direction for video
streaming flows, SCONE signaling needs be performed at the element which has
access to subscriber policy and which is hosted between radio base-stations and
CDNs in downlink direction. In mobile networks this network element is PGW/UPF
in 4G/5G networks.</t>
          </li>
          <li>
            <t>The primary targeted consumers of SCONE information are HTTP adptive bitrate video applications.  The ABR decisions are typically made on the client side by the video player itself.  While these players could in principle take something like ECN into account, this is not in line with current practices.  There is no JavaScript API provided by browsers to get ECN information, and none of the most popular HTTP libraries used to build video players in mobile applications expose ECN information as part of their HTTP API.  ECN is largely consumed by transport protocols (rather than applications) and actuated on by servers (rather than clients).</t>
          </li>
          <li>
            <t>SCONE information is intended to be per flow, not per-packet like ECN.
Among typical transport protocols, only UDP and UDP-Lite support application
access to the ECN bits (because other standard transport protocols typically
implement congestion control themselves) <xref target="RFC8803"/> <xref target="RFC8804"/>, though
implementations may vary in their capabilities.  ECN APIs, where they exist,
are at the socket layer for datagram protocols, and have semantic binding to
given packets.  This does not match with the SCONE needs to signal at the
flow-level and for QUIC transport.</t>
          </li>
          <li>
            <t>ECN bits within the IP header will not be enough to carry the meta-data
required to be exchanged between network element and client endpoint.  </t>
            <ul spacing="normal">
              <li>
                <t>Note - In addition to SCONE, CAPs are actively exploring L4S, but CAPs
don't believe that L4S addresses the use-case SCONE is trying to solve.</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="can-the-scone-signal-be-designed-so-that-there-is-no-incentive-to-fake-it-like-with-ecn">
        <name>Can the SCONE signal be designed so that there is no incentive to fake it, like with ECN?</name>
        <t>Any network device which can alter ECN bits can simply drop the packets. And
packet drop may have more negative impact on application’s performance compared
to using ECN bits to indicate congestion in the network.</t>
        <t>Similarly any network device which can send SCONE signaling can throttle the
application flow. Throttling may have a more negative impact on an
application’s performance compared to using SCONE signaling to influence the
incoming flow bit-rate from the sender. So like ECN, there should not be any
incentive for the network device to fake the SCONE signal.</t>
        <t>Regarding falsely manipulating CE bit in ECN (either setting or clearing the CE
bit), there is no incentive either way, because both cases may have more
negative impact on application’s performance within the network faking the ECN
signals</t>
        <t>Similarly, there is no incentive for faking SCONE signaling (sending
incorrect meta-data) because sending incorrect meta-data may have more negative
impact on an application’s performance within the network faking the SCONE
signals.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>General SCONE security considerations are discussed in the other documents
covering the specific network-to-host signaling methods.  This document only
addresses questions regarding use of ECN for SCONE.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC3168">
          <front>
            <title>The Addition of Explicit Congestion Notification (ECN) to IP</title>
            <author fullname="K. Ramakrishnan" initials="K." surname="Ramakrishnan"/>
            <author fullname="S. Floyd" initials="S." surname="Floyd"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <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="RFC8803">
          <front>
            <title>0-RTT TCP Convert Protocol</title>
            <author fullname="O. Bonaventure" initials="O." role="editor" surname="Bonaventure"/>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="S. Gundavelli" initials="S." surname="Gundavelli"/>
            <author fullname="S. Seo" initials="S." surname="Seo"/>
            <author fullname="B. Hesmans" initials="B." surname="Hesmans"/>
            <date month="July" year="2020"/>
            <abstract>
              <t>This document specifies an application proxy, called Transport Converter, to assist the deployment of TCP extensions such as Multipath TCP. A Transport Converter may provide conversion service for one or more TCP extensions. The conversion service is provided by means of the 0-RTT TCP Convert Protocol (Convert).</t>
              <t>This protocol provides 0-RTT (Zero Round-Trip Time) conversion service since no extra delay is induced by the protocol compared to connections that are not proxied. Also, the Convert Protocol does not require any encapsulation (no tunnels whatsoever).</t>
              <t>This specification assumes an explicit model, where the Transport Converter is explicitly configured on hosts. As a sample applicability use case, this document specifies how the Convert Protocol applies for Multipath TCP.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8803"/>
          <seriesInfo name="DOI" value="10.17487/RFC8803"/>
        </reference>
        <reference anchor="RFC8804">
          <front>
            <title>Content Delivery Network Interconnection (CDNI) Request Routing Extensions</title>
            <author fullname="O. Finkelman" initials="O." surname="Finkelman"/>
            <author fullname="S. Mishra" initials="S." surname="Mishra"/>
            <date month="September" year="2020"/>
            <abstract>
              <t>&lt;p&gt;Open Caching architecture is a use case of Content Delivery Network Interconnection (CDNI) in which the commercial Content Delivery Network (CDN) is the upstream CDN (uCDN) and the ISP caching layer serves as the downstream CDN (dCDN). This document defines extensions to the CDNI Metadata Interface (MI) and the Footprint &amp; Capabilities Advertisement interface (FCI). These extensions are derived from requirements raised by Open Caching but are also applicable to CDNI use cases in general.&lt;/p&gt;</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8804"/>
          <seriesInfo name="DOI" value="10.17487/RFC8804"/>
        </reference>
        <reference anchor="RFC9330">
          <front>
            <title>Low Latency, Low Loss, and Scalable Throughput (L4S) Internet Service: Architecture</title>
            <author fullname="B. Briscoe" initials="B." role="editor" surname="Briscoe"/>
            <author fullname="K. De Schepper" initials="K." surname="De Schepper"/>
            <author fullname="M. Bagnulo" initials="M." surname="Bagnulo"/>
            <author fullname="G. White" initials="G." surname="White"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>This document describes the L4S architecture, which enables Internet applications to achieve low queuing latency, low congestion loss, and scalable throughput control. L4S is based on the insight that the root cause of queuing delay is in the capacity-seeking congestion controllers of senders, not in the queue itself. With the L4S architecture, all Internet applications could (but do not have to) transition away from congestion control algorithms that cause substantial queuing delay and instead adopt a new class of congestion controls that can seek capacity with very little queuing. These are aided by a modified form of Explicit Congestion Notification (ECN) from the network. With this new architecture, applications can have both low latency and high throughput.</t>
              <t>The architecture primarily concerns incremental deployment. It defines mechanisms that allow the new class of L4S congestion controls to coexist with 'Classic' congestion controls in a shared network. The aim is for L4S latency and throughput to be usually much better (and rarely worse) while typically not impacting Classic performance.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9330"/>
          <seriesInfo name="DOI" value="10.17487/RFC9330"/>
        </reference>
        <reference anchor="RFC9331">
          <front>
            <title>The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S)</title>
            <author fullname="K. De Schepper" initials="K." surname="De Schepper"/>
            <author fullname="B. Briscoe" initials="B." role="editor" surname="Briscoe"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>This specification defines the protocol to be used for a new network service called Low Latency, Low Loss, and Scalable throughput (L4S). L4S uses an Explicit Congestion Notification (ECN) scheme at the IP layer that is similar to the original (or 'Classic') ECN approach, except as specified within. L4S uses 'Scalable' congestion control, which induces much more frequent control signals from the network, and it responds to them with much more fine-grained adjustments so that very low (typically sub-millisecond on average) and consistently low queuing delay becomes possible for L4S traffic without compromising link utilization. Thus, even capacity-seeking (TCP-like) traffic can have high bandwidth and very low delay at the same time, even during periods of high traffic load.</t>
              <t>The L4S identifier defined in this document distinguishes L4S from 'Classic' (e.g., TCP-Reno-friendly) traffic. Then, network bottlenecks can be incrementally modified to distinguish and isolate existing traffic that still follows the Classic behaviour, to prevent it from degrading the low queuing delay and low loss of L4S traffic. This Experimental specification defines the rules that L4S transports and network elements need to follow, with the intention that L4S flows neither harm each other's performance nor that of Classic traffic. It also suggests open questions to be investigated during experimentation. Examples of new Active Queue Management (AQM) marking algorithms and new transports (whether TCP-like or real time) are specified separately.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9331"/>
          <seriesInfo name="DOI" value="10.17487/RFC9331"/>
        </reference>
        <reference anchor="RFC9332">
          <front>
            <title>Dual-Queue Coupled Active Queue Management (AQM) for Low Latency, Low Loss, and Scalable Throughput (L4S)</title>
            <author fullname="K. De Schepper" initials="K." surname="De Schepper"/>
            <author fullname="B. Briscoe" initials="B." role="editor" surname="Briscoe"/>
            <author fullname="G. White" initials="G." surname="White"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>This specification defines a framework for coupling the Active Queue Management (AQM) algorithms in two queues intended for flows with different responses to congestion. This provides a way for the Internet to transition from the scaling problems of standard TCP-Reno-friendly ('Classic') congestion controls to the family of 'Scalable' congestion controls. These are designed for consistently very low queuing latency, very low congestion loss, and scaling of per-flow throughput by using Explicit Congestion Notification (ECN) in a modified way. Until the Coupled Dual Queue (DualQ), these Scalable L4S congestion controls could only be deployed where a clean-slate environment could be arranged, such as in private data centres.</t>
              <t>This specification first explains how a Coupled DualQ works. It then gives the normative requirements that are necessary for it to work well. All this is independent of which two AQMs are used, but pseudocode examples of specific AQMs are given in appendices.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9332"/>
          <seriesInfo name="DOI" value="10.17487/RFC9332"/>
        </reference>
        <reference anchor="I-D.joras-sconepro-video-opt-requirements">
          <front>
            <title>SCONEPRO Video Optimization Requirements</title>
            <author fullname="Matt Joras" initials="M." surname="Joras">
              <organization>Meta Platforms, Inc.</organization>
            </author>
            <author fullname="Anoop Tomar" initials="A." surname="Tomar">
              <organization>Meta Platforms, Inc.</organization>
            </author>
            <author fullname="Abhishek Tiwari" initials="A." surname="Tiwari">
              <organization>Meta Platforms, Inc.</organization>
            </author>
            <author fullname="Alan Frindell" initials="A." surname="Frindell">
              <organization>Meta Platforms, Inc.</organization>
            </author>
            <date day="17" month="May" year="2024"/>
            <abstract>
              <t>   These are the requirements for the "Video Optimization" use-case for
   the SCONEPRO topic, which broadly speaking seeks to optimize video
   playback experience in mobile networks by cooperative communication
   between video content providers and the providers of network services
   to end users.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-joras-sconepro-video-opt-requirements-00"/>
        </reference>
        <reference anchor="YouTube" target="https://datatracker.ietf.org/meeting/119/materials/slides-119-sconepro-youtube-plan-aware-streaming-01">
          <front>
            <title>YouTube Plan Aware Streaming</title>
            <author>
              <organization>YouTube</organization>
            </author>
            <date year="2024" month="March" day="21"/>
          </front>
        </reference>
        <reference anchor="SCONE-Charter" target="https://datatracker.ietf.org/wg/scone/about/">
          <front>
            <title>SCONE Working Group Charter</title>
            <author initials="" surname="IETF" fullname="IETF">
              <organization/>
            </author>
            <date year="2024" month="October" day="31"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 331?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This document represents collaboration, comments, and inputs from others,
including:</t>
      <ul spacing="normal">
        <li>
          <t>Spencer Dawkins</t>
        </li>
        <li>
          <t>Alan Frindell</t>
        </li>
        <li>
          <t>Bryan Tan</t>
        </li>
        <li>
          <t>Michael Welzl</t>
        </li>
        <li>
          <t>Ted Hardie</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
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
PAAA

-->

</rfc>
