<?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.29 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-tomar-scone-ecn-02" category="info" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.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-02"/>
    <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="2025" month="November" day="03"/>
    <area>Web and Internet Transport</area>
    <workgroup>SCONE</workgroup>
    <keyword>ECN</keyword>
    <abstract>
      <?line 80?>

<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 94?>

<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>Early requirements for a technical solution based on this approach are described in <xref target="I-D.joras-sconepro-video-opt-requirements"/>, and the protocol that the IETF working group is defining is in <xref target="I-D.ietf-scone-protocol"/>.</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="I-D.ietf-scone-protocol">
          <front>
            <title>Standard Communication with Network Elements (SCONE) Protocol</title>
            <author fullname="Martin Thomson" initials="M." surname="Thomson">
              <organization>Mozilla</organization>
            </author>
            <author fullname="Christian Huitema" initials="C." surname="Huitema">
              <organization>Private Octopus Inc.</organization>
            </author>
            <author fullname="Kazuho Oku" initials="K." surname="Oku">
              <organization>Fastly</organization>
            </author>
            <author fullname="Matt Joras" initials="M." surname="Joras">
              <organization>Meta</organization>
            </author>
            <author fullname="Marcus Ihlar" initials="L. M." surname="Ihlar">
              <organization>Ericsson</organization>
            </author>
            <date day="20" month="October" year="2025"/>
            <abstract>
              <t>   This document describes a protocol where on-path network elements can
   give endpoints their perspective on what the maximum achievable
   throughput might be for QUIC flows.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-scone-protocol-03"/>
        </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 333?>

<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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

-->

</rfc>
