<?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.11 (Ruby 3.2.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-joras-sconepro-video-opt-requirements-00" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.21.0 -->
  <front>
    <title abbrev="SCONEPRO Video Optimization Requirements">SCONEPRO Video Optimization Requirements</title>
    <seriesInfo name="Internet-Draft" value="draft-joras-sconepro-video-opt-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="May" day="17"/>
    <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 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>
  <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>
      </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 137?>



  </back>
  <!-- ##markdown-source:
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
5zfnf+4YXimLfi/96QuNfrLsvwgZSyVVJwAA

-->

</rfc>
