<?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.20 (Ruby 2.6.10) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-joras-scone-video-optimization-requirements-00" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.24.0 -->
  <front>
    <title abbrev="SCONE Video Optimization Requirements">SCONE Video Optimization Requirements</title>
    <seriesInfo name="Internet-Draft" value="draft-joras-scone-video-optimization-requirements-00"/>
    <author fullname="Matt Joras">
      <organization>Meta Platforms, Inc.</organization>
      <address>
        <email>matt.joras@gmail.com</email>
      </address>
    </author>
    <author fullname="Anoop Tomar">
      <organization>Meta Platforms, Inc.</organization>
      <address>
        <email>anooptomar@meta.com</email>
      </address>
    </author>
    <author fullname="Abhishek Tiwari">
      <organization>Meta Platforms, Inc.</organization>
      <address>
        <email>atiwari@meta.com</email>
      </address>
    </author>
    <author fullname="Alan Frindell">
      <organization>Meta Platforms, Inc.</organization>
      <address>
        <email>afrind@meta.com</email>
      </address>
    </author>
    <date year="2024" month="April" day="11"/>
    <keyword>next generation</keyword>
    <keyword>unicorn</keyword>
    <keyword>sparkling distributed ledger</keyword>
    <abstract>
      <?line 40?>

<t>These are the requirements for the "Video Optimization" use-case for SCONE, 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>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/mjoras/sadcdn-video-optimization-requirements"/>.</t>
    </note>
  </front>
  <middle>
    <?line 44?>

<section anchor="introduction">
      <name>Introduction</name>
      <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, communication service providers (CSPs) will be required to make infrastructure investments such as more licensed spectrum, cell densification, massive MIMO etc. In order to flatten the rate of growth, CSPs in several markets attempt to identify and shape video traffic based on user data plans. There are several problems with this kind of shaping:</t>
      <ol spacing="normal" type="1"><li>
          <t>Traffic detection and shaping 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 shaping.</t>
        </li>
        <li>
          <t>User mobility during the ongoing session, mainly with distributed UPF (user plane function) in 5G mobile networks may result in shpaing inaccuracies.</t>
        </li>
        <li>
          <t>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).</t>
        </li>
        <li>
          <t>The unpredictable behavior of traffic shapers 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 shapers to counter their detrimental effects. These algorithms have their own inaccuracies in detection and add compute resources on the CAP side.</t>
        </li>
      </ol>
      <t>A secure in-band data sharing interface between CSPs and CAPs can enable the CSPs to specify video traffic characteristics (that are suited to their radio access networks) to the CAPs. CAPs can use this information to self-adapt their video traffic to conform to the specified characteristics. Self Adaptation and Self limitation is a better alternative because CAPs have full context and ability to measure user QoE, which CSPs do not. This approach has the potential to help CSPs manage the traffic on their cellular networks without incurring the cost and compute associated traffic detection and traffic shaping while making sure that end user QoE is not compromised which is win-win for both CSPs and CAPs.</t>
      <t>What follows are the primary, secondary, and non-requirements of a technical solution to this problem on the modern Internet.</t>
    </section>
    <section anchor="video-optimization-use-case-primary-requirements">
      <name>Video Optimization Use Case - Primary requirements</name>
      <section anchor="in-band-cryptographic-key-establishment-w-standard-crypto">
        <name>In-band cryptographic key establishment w/ standard crypto</name>
        <t>A core requirement is encryption of the data being exchanged between the client endpoint and  CSP network device endpoint. In order to achieve this there needs to be a way to have a shared key. This must be done with an in-band mechanism, since out-of-band mechanisms for key exchange are not scalable given the fanout of content providers to CSPs.</t>
      </section>
      <section anchor="encryption-and-integrity-protected">
        <name>Encryption and integrity protected</name>
        <t>A core requirement is the encryption and integrity protection of the data exchanged between the client and CSP network device endpoints. This is crucial to ensure the information cannot be passively observed or modified. Further this encryption must be done with standard ciphers.</t>
      </section>
      <section anchor="in-band-key-exchange">
        <name>In-band key exchange</name>
        <t>In order for encryption to be viable, the client and CSP network device endpoints must have a way to establish a shared key. This mechanism must be done in-band with the network video flow, e.g. via a TLS handshake, so as to avoid the scalability and security problems of sharing keys via an out-of-band mechanism.</t>
      </section>
      <section anchor="client-initiated">
        <name>Client-initiated</name>
        <t>What is minimally needed is a way for the client to establish a communication channel with a CSP network device, exchange the information, and then use that information to inform its video playback decisions. This also allows for a client device to be aware that the exchange is happening (at least on initiation).</t>
      </section>
      <section anchor="low-frequency-informationdata-exchange">
        <name>Low frequency information/data exchange</name>
        <t>Video optimization requires a CSP network device to send the allowed data rate for a specific connection to the client endpoint during connection setup time and whenever there is a change in video policy for the subscriber. Change in video policy configuration for a particular subscriber is typically triggered when the subscriber has exhausted its monthly or daily allowed data volume usage limit, i.e. at low frequency.</t>
      </section>
      <section anchor="datainformation-flows-from-csp-mobile-network-to-client">
        <name>Data/Information flows from CSP mobile network to client</name>
        <t>There are following two options w.r.t data flow direction to support video optimization use-case.
1. From CSP mobile network to client endpoint
2. From CSP mobile network to CAP server endpoint
Both the options have pros and cons. We are proposing option # i due to following reasons;
1. Streaming video flows are predominantly downlink so information can be sent together with downlink packet. There is no need to wait for Uplink QUIC acknowledgements.
2. Communication between CSP mobile network to client endpoint happens over CSP infrastructure which is relatively more secure compared to infrastructure between CSP network device and CAPs’ server.</t>
      </section>
      <section anchor="scalable-for-potentially-every-video-flow-in-a-mobile-network">
        <name>Scalable for potentially every video flow in a mobile network</name>
        <t>This use case requires that potentially every video flow in a mobile network be able to utilize this feature. Thus, it must be performant both for the network device and the mobile device utilizing it.</t>
        <t>There are cases that must be supported where the mobile network User Equipment (UE) device does not run the client application endpoint for the video flow.  Examples include modes where the UE is supporting Fixed Wireless Access (FWA) services, or where the UE operates as a hotspot providing access for other devices.</t>
      </section>
      <section anchor="works-with-quic-and-http3">
        <name>Works with QUIC and HTTP/3</name>
        <t>HTTP/3 is being used widely as a delivery mechanism for video content by video content providers, and is a critical requirement to support. HTTP/3’s use of QUIC has convenient properties (notably in its use of UDP) that makes solutions in this space more convenient.</t>
      </section>
      <section anchor="network-device-in-csp-mobile-network-4g5g-packet-core">
        <name>Network device in CSP mobile network: 4G/5G packet core</name>
        <t>“Packet core user plane node” is the network device to share information with client endpoint. These nodes are P-GW (PDN Gateway) and UPF(User Plane Function) for 4G and 5G mobile networks respectively. The reasons behind the same are as follows;
   1. These nodes have access to subscriber policy via standard 3GPP interface to PCRF (Policy and Charging Rule Function).
   2. These nodes are co-located with PCEF (Policy and Charging Enforcement) which is supposed to enforce subscriber specific policy to data flows.
   3. Traffic detection function or DPI( Deep Packet Inspection) engine is integrated with these nodes to detect a specific flow/subscriber</t>
      </section>
      <section anchor="scalable-solution-for-4g-and-5g-mobile-packet-core-from-performance-standpoint">
        <name>Scalable solution for 4G and 5G mobile packet core from performance standpoint</name>
        <t>To support video optimization use-case at scale, significant additional compute in the packet core should not be required. This requirement has some dependency on following aforementioned requirements:
1. As specified earlier in the document, due to low frequency information exchange requirement, there may not be a need for significant additional compute in the packet core to support this video optimization use-case’s requirements at scale.
2. No need to support traffic shaping in the packet core. This would also free up computational resources.</t>
      </section>
    </section>
    <section anchor="secondary-requirements">
      <name>Secondary requirements</name>
      <ol spacing="normal" type="1"><li>
          <t>Works with TCP video flows.</t>
        </li>
      </ol>
    </section>
    <section anchor="non-requirements">
      <name>Non-requirements</name>
      <ol spacing="normal" type="1"><li>
          <t>Non-HTTP video support.</t>
        </li>
        <li>
          <t>Data flows from CSP mobile network device to CAP server</t>
        </li>
        <li>
          <t>Fixed networks -  Fixed network is out of scope at present, since most of the CSPs don’t do video flow shaping for fixed networks. If and when we include fixed networks in the scope, CSP network devices can be CMTS for Cable modem network or BNG for Fiber/DSL network.</t>
        </li>
      </ol>
    </section>
    <section anchor="information-element-requirements">
      <name>Information element requirements</name>
      <t>This section captures the requirements of information elements to be exchanged between CSP network device and client endpoint of the CAP application.
1. The attributes of video data traffic specified in the information elements - shall be measurable by both CSPs and CAPs.
2. For a given video session the specification - shall ensure that CSP and CAP, albeit measuring independently, compute consistent attributes of the video data traffic.
3. The attributes of video data profile - shall include an average or median video bit rate and a maximum video bitrate
4. The information element - shall specify a methodology for computing median, maximum and average video bitrates including how to determine the time window for measuring these statistics</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document has no security considerations.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <?line 139?>



  </back>
  <!-- ##markdown-source:
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
34goAAA=

-->

</rfc>
