<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.35 (Ruby 2.7.0) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-joras-sadcdn-00" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="SADCDN">Securing Ancillary Data for Communicating with Devices in the Network</title>

    <author fullname="Matt Joras">
      <organization>Meta Platforms, Inc.</organization>
      <address>
        <email>matt.joras@gmail.com</email>
      </address>
    </author>

    <date year="2023" month="July" day="05"/>

    
    
    <keyword>next generation</keyword> <keyword>unicorn</keyword> <keyword>sparkling distributed ledger</keyword>

    <abstract>


<?line 57?>

<t>There is increasing need for application endpoints to communicate with devices in the network without exposing that information to on path observers.</t>



    </abstract>



  </front>

  <middle>


<?line 62?>

<section anchor="introduction"><name>Introduction</name>
<t>In modern mobile networks it is extremely common for policies to be applied to network flows by devices in the network. These policies are usually implemented by network vendors and enabled by mobile network operators (MNOs) to achieve certain outcomes. The two most prominent examples of this are traffic shaping and packet prioritization.</t>

<t>Traffic shapring in this context is a modification applied to the flow of packets to limit the achievable throughput by the flow to a given bandwidth (e.g. 2Mbps).</t>

<t>Packet prioritization policies are meant to prioritize certain kinds of data in the device queues over others. For example, an operator may want to employ a policy which gives queue priority to low latency video conferencing traffic over long form video playback traffic, to ensure lower latency for the more latency-sensitive user experience.</t>

<t>While these goals seem straightforward, and at first glance it seems like the network device can achieve them in isolation, without content endpoint cooperation there are issues that inevitably arise and pathologies which are detrimental to user experience.</t>

</section>
<section anchor="shaping-adaptive-video-traffic"><name>Shaping Adaptive Video Traffic</name>
<t>The goal of these policies are variable, but usually are motivated by limiting data usage. One goal that’s fairly common is for the operator to limit the total possible data used by customers on an “Unlimited” data plan. With these plans there are no “hard” limits (i.e. where network access ceases), rather the MNO will apply policies to specific flows such that the amount of data reaching the customer’s device for specific adaptive servers is effectively capped. These policies are targeted at flows known to carry certain kinds of data, such as video. The detection method varies, but typically the flows are identified based on the SNI in the TLS ClientHello, or similar.</t>

<t>Modern video playback typically employs adaptive bitrate (ABR) schemes to dynamically adjust the video quality (and thus the data rate) in response to changing network conditions. Ideally the ABR scheme should adapt the quality and converge on a bitrate sustainable by the network policer. In practice this is extremely difficult to achieve while maintaining a good user experience, due to the myriad complexities and interactions involved, such as the transport congestion control behavior, changing radio signal strength, etc.</t>

<t>The end goal of limiting a customer’s aggregate data usage can instead be achieved through having a content endpoint mediate the amount of data served to a given user. This capability is already present in data-heavy applications such as streaming video. For example, if a content endpoint limits a given user’s video bitrate to ~2Mbps and also limits the number of outstanding videos being streamed to that user, the overall effect on aggregate data usage is the same as if the network itself employs a policer configured to a 2Mbps data rate. Networks are able to achieve better efficiencies while still maintaining data usage limits by having the content producing endpoints limiting the data sent, rather than relying on a network device to impose an artificial limit.</t>

</section>
<section anchor="packet-prioritization"><name>Packet Prioritization</name>
<t>For packet prioritization there is a different problem. While the network device may be able to make inferences about what kinds of content different packets and flows carry, it has become increasingly difficult as traffic is encrypted more holistically. Newly endemic protocols like QUIC are being used for a diverse range of traffic types, and this makes heuristics such as “all low latency traffic looks like WebRTC or RTP” untenable. Additionally, if multiple application flows are being multiplexed over a single encrypted transport, such as QUIC, the network device may want to make different prioritization decisions depending on the application contained within any given packet. 
Information Disparity
In both situations, there is an information disparity between devices in the network and the content endpoints. In both of these situations better outcomes can be achieved by explicit communication and cooperation.</t>

<t>In the case of a data-limiting policy, it would be advantageous for the network device to explicitly communicate the desired limits to the content endpoint so that it can “self-regulate”, and in exchange for the in-network policer to be disabled. For prioritization, it would be advantageous for the endpoint to communicate the content type of different packets so that they can be prioritized correctly.</t>

</section>
<section anchor="out-of-band-vs-inband-communication"><name>Out of Band vs. Inband Communication</name>
<t>There are generally two ways to resolve this information disparity between the content endpoints and the network: communicating additional information out of band, or inband.</t>

<t>Out of band communication involves the content endpoint and the MNO exchanging information in a separate context from the flow in question. There are various ways this could occur in practice, such as facilities provided by 3GPP, emerging API standards like CAMARA, or bespoke Internet API endpoints maintained by the MNO and accessed by a content endpoint. Regardless of which method is used, there are a few issues with using this form on information exchange that makes them undesirable.</t>

<t>The core issue though is one of association. Suppose there’s a flow that exists between an end user device and a content endpoint server on the Internet. The endpoint server has relatively little information about this user initially, mostly its basics such as the 5-tuple associated with the flow, of which the most identifying information is the IP address. In order to exchange information with the MNO about this, it has to be able to query the defined API and exchange this information. In practical terms this may range in difficulty from challenging to simply impossible. Further, the API endpoint being communicated with is often not the same entity as a network device which is applying the relevant policies. Thus even after communication is established and information is exchanged, the MNO API endpoint has the further responsibility of taking action on that information, which involves further communication within its network.</t>

<t>Inband communication, as the name suggests, is any mechanism by which devices in the network and the content endpoints can communicate directly. This is, in a sense, merely an extension of how all Internet Protocols as we know them today function. And indeed there are even examples of where such communication is done inband to facilitate cooperation, such as ECN marking. However to date all these systems stop short of what one might think of as a “communication channel” for exchanging rich information between the network device and a content endpoint. Such a communication mechanism has benefits over the out of band alternative, mostly in the form of simplicity for both parties. If the communication channel is established between the network device and the content endpoint directly then the relevant information can be exchanged, and acted upon, directly.</t>

<t>To use a concrete example, consider the case of traffic policing. Suppose that there is a content provider who, in cooperation with certain MNOs, is willing to limit the aggregate video data served to a given user, and in exchange the MNO disables the network policer for that user’s flows. The network device would identify these flows and, inband with the flow’s packets, establish a communication channel with the flows’ destination content endpoint. The network device would communicate the desired limits to the content endpoint, and the content endpoint would acknowledge the limits. The network device would then simply disable (or significantly modify) the policing configuration it otherwise would have applied.</t>

</section>
<section anchor="securing-information-exchange"><name>Securing Information Exchange</name>
<t>A major challenge with this inband approach in particular is how to ensure the privacy and integrity of the data being exchanged. The benefits of integrity protection are self-evident – a bad actor on the path should not be able to modify the communication such that it alters the behavior of the network or the content endpoint. Privacy is similarly important. It is not acceptable that an on-path observer should be privy to the information being exchanged between the network device and the content endpoint. Allowing this would enable a whole host of privacy vulnerabilities which are all too commonplace on the Internet today. The solution to both these problems is to encrypt the communication using a standard cryptographic protocol. Utilizing standardized cryptography also solves problems of trust and authenticity, by allowing the parties to utilize existing authentication features of cryptographic protocols.</t>

</section>
<section anchor="end-user-transparency"><name>End User Transparency</name>
<t>Today end users are generally unaware of policies like shaping or prioritization being applied to their flows, especially in realtime. This is due to the fact that there is no means by which to inform them as it is happening. This information can be surfaced to the user by cooperating and exchanging rich information with the network device applying the policies, i.e. when SADCDN is being used. Consider an example where an end user’s plan has exceeded some predefined monthly quota and the network device has informed the content endpoint to put a cap on video bitrate. Since the application is the one applying this cap, it can convey that information to the user via the application user interface.</t>

</section>
<section anchor="proposed-solution-sketch"><name>Proposed Solution Sketch</name>
<t>This proposed solution sketch first focuses on solving this problem for UDP-based protocols, such as QUIC. This is partially because of QUIC’s increasing ubiquity on the Internet for serving content of this kind, but also because the solution itself involves utilizing QUIC. Note that this ends up looking very similar to certain other schemes such as QUIC-aware proxying (<xref target="I-D.draft-pauly-masque-quic-proxy-06"/>).</t>

<t>Recall that the desired goal here is for a network device to be able to, inband with a new flow of QUIC packets, establish a communication channel with the content endpoint to which those QUIC packets are destined. The key mechanism to achieve this is for the network device to establish its own QUIC connection with the same content endpoint by appending its own QUIC packets to some part of the UDP/IP packet of the original flow.</t>

<t>There are broadly two ways this could be done. One which seems relatively straightforward would be for the network device to modify the packet by adding on a UDP option or (newly defined) IP header, the value of which is a QUIC packet. There are issues with this approach though. Either a UDP option or an IP header could be “bleached” by other devices in the network, or not supported by the operating systems for the mobile device or content endpoint.</t>

<t>Another option which avoids this issue would be for the network device to modify the UDP payload of the UDP/IP packet. To achieve this the network device could encapsulate the original UDP payload within another layer, similar to what was proposed with PLUS (<xref target="I-D.draft-trammell-plus-spec-01"/>). In this way each UDP payload would effectively contain two payloads: the original UDP payload and the payload of a QUIC packet for the channel between the network device and the content endpoint. The content endpoint would have to be able to recognize this type of packet, of course.</t>

<t>In either case, it is important to note the distinct advantages of coupling the packets, versus the network device sending its own packets. The most important property is that it allows guaranteeing that the end-to-end flow and the inband flow arrive at the same content endpoint. If the network device sent its own packets instead, there would have to be some mechanism ensuring that the packets are routed to the same endpoint. Another useful property is that it allows the network device to have a much simpler QUIC implementation, as it does not have to make any decisions about when and if it can send packets on its own. It makes that decision only on forwarding a UDP/IP packet.</t>

<t>Using this scheme a network device can initiate its own QUIC connection with the content endpoint as part of an existing UDP flow. This QUIC connection is cryptographically independent from the end-to-end UDP flow, and once established can be used as a secure communication channel between the network device and the content endpoint. Another way to think about this is that the QUIC packets used for network device to content endpoint communication are simply encrypted packet metadata associated with the end user’s flow.</t>

</section>
<section anchor="diagrams"><name>Diagrams</name>
<figure><artwork><![CDATA[
 Mobile Device   Packet Core Device       CAP Endpoint Server                     
     +--+          +------------+           +---------+                           
     |  |-----------------------------------|         |                           
     |  |          |            |           |         |                           
     +--+          |            |x-x-x-x-x-x|         |                           
                   +------------+           +---------+                           
                                                                                  
          -----------               x-x-x-x                                       
      e2e QUIC connection    SADCDN QUIC connection                               
]]></artwork></figure>

<t>In the above we can see a visualization of this idea, assuming that the end-to-end flow is a QUIC connection. These form two completely independent cryptographic contexts. Thus, only the content endpoint can securely communicate with both the network device and the mobile device. This can be used by the network device to, for example, communicate the policer configuration to the content endpoint, which can then influence the video playback to self-regulate and avoid the policing. We can also use a similar scheme to establish a channel between the mobile device and the packet core device.</t>

<t>Note that it would also be possible for the mobile device and the packet core device to have the secure connection, as below.</t>

<figure><artwork><![CDATA[
 Mobile Device   Packet Core Device       CAP Endpoint Server                     
     +--+          +------------+           +---------+                           
     |  |-----------------------------------|         |                           
     |  |x-x-x-x-x-|            |           |         |                           
     +--+          |            |           |         |                           
                   +------------+           +---------+                           
                                                                                  
          -----------               x-x-x-x                                       
      e2e QUIC connection    SADCDN QUIC connection                               
]]></artwork></figure>

<t>Finally, here is roughly what the scheme might look like at the packet layer. Essentially what we see is that an existing flow is appended to include the SADCDN QUIC packets. This is only seen on one side of the packet core device, the side with the established SADCDN connection. It is important to note that not every packet needs this additional information.</t>

<figure><artwork><![CDATA[
                    |                                                    
              Packet Core Device                                         
                    |                                                    
                    |                                                    
                    |                                                    
                    |                                                    
+-----+   +-----+   |  +-----+   +-----+   +-----+                       
|XXXXX|   |XXXXX|   |  |YYYYY|   |XXXXX|   |YYYYY|                       
|XXXXX|   |XXXXX|   |  |XXXXX|   |XXXXX|   |XXXXX|                       
+-----+   +-----+   |  |XXXXX|   +-----+   |XXXXX|                       
                    |  +-----+             +-----+                       
                    |                                                    
                                                                         
       XXXX             YYYY                                             
       e2e QUIC Data    SADCDN QUIC data                                 
]]></artwork></figure>

</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="security-considerations"><name>Security Considerations</name>

<t>TODO Security</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document has no IANA actions.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>



<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 title='Informative References'>




<reference anchor="I-D.draft-pauly-masque-quic-proxy-06">
   <front>
      <title>QUIC-Aware Proxying Using HTTP</title>
      <author fullname="Tommy Pauly" initials="T." surname="Pauly">
         <organization>Apple Inc.</organization>
      </author>
      <author fullname="Eric Rosenberg" initials="E." surname="Rosenberg">
         <organization>Apple Inc.</organization>
      </author>
      <author fullname="David Schinazi" initials="D." surname="Schinazi">
         <organization>Google LLC</organization>
      </author>
      <date day="10" month="March" year="2023"/>
      <abstract>
	 <t>   This document defines an extension to UDP Proxying over HTTP that
   adds specific optimizations for proxied QUIC connections.  This
   extension allows a proxy to reuse UDP 4-tuples for multiple
   connections.  It also defines a mode of proxying in which QUIC short
   header packets can be forwarded using an HTTP/3 proxy rather than
   being re-encapsulated and re-encrypted.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-pauly-masque-quic-proxy-06"/>
   
</reference>


<reference anchor="I-D.draft-trammell-plus-spec-01">
   <front>
      <title>Path Layer UDP Substrate Specification</title>
      <author fullname="Brian Trammell" initials="B." surname="Trammell">
         <organization>ETH Zurich</organization>
      </author>
      <author fullname="Mirja Kühlewind" initials="M." surname="Kühlewind">
         <organization>ETH Zurich</organization>
      </author>
      <date day="13" month="March" year="2017"/>
      <abstract>
	 <t>   This document specifies a common Path Layer UDP Substrate (PLUS) wire
   image for encrypted transport protocols carried over UDP.  The base
   PLUS header carries information for driving a minimal state machine
   at middleboxes described in [I-D.trammell-plus-statefulness], and
   provides optional exposure of additional information to devices along
   the path using the mechanism described in
   [I-D.trammell-plus-abstract-mech].

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-trammell-plus-spec-01"/>
   
</reference>




    </references>


<?line 202?>

<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>TODO acknowledge.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA+1c25IbR3J9x1eUhw8mLQAitVrvelaWPJoZrcbBy3hmaK3C
4YdCdwFosdEN9gUgJEqx/+AnR9gR/hZ/yn6Jz8msqu4GMNSSll8cCykkoNFd
lZWVefJkZmEmk8nowYMHowfmqmhcVbhmclHZeWOe2epVWm4Lc+dW69w2bsSb
blxhV840y6w28yx3Zl6VK5PyiUlTpuVkV7YVb5msq7IpkzKfrlLTlGbhGlM3
tmpcOsU4OoeMNS+rlW0MBjzRcT4LY3w++WxbVq8WVdmu8V4uYbiTqYjyVVmZ
rMiazOamdk27Hhs8aMoi35nCOZnVpVkDYTFJVtWNmeVl8sqUc3x0eVpTkBe8
/aTJmtydyGM1n5s5kyxtsXDp70zqctc4c2Jns8ptTkw25zyVkWcodr0sq4Zj
nRU7U2K2yiQllFk0JrEFx6IYLh2bWdvI0LZy8zY3RdlwsqxoqjJtE9xXVWUl
Yt2W1IxIabZZnvMxLNLYtimhrSyxOeRO2yorFrp6yoW5dwaDm7bw4quqLsri
r6HhIsnbFCuZPH58YqC9kwn3tW6wpsJrKZf9pQRP7czldfwGm2T+jO3xI6oQ
NTZhtsNYHKEpy1x0i7VDQ3jDq0lbVVTUxlV1Vha/w1ogYFomHO2E0xr3xsIA
na7kjobXeIvkDLV5VdkVDXVSzZNTs2yadX368ceLrFm2s2lSrj5O7Kz8uH8X
xvkWlsLNqRxGSpzIAjmySpXgN9msVVhr0myON5RUzZUaOhcVR8VBUOw5V8HF
4Z5kGVUH+344fbPKZUF/ePZ0bFyTTKfTR1wUvE9s6dSc3LpEt/SsSLDrttqZ
C9tYeey8XK3aAjvf8IYt1mcu3CZLXNyk567hhpyM1FQ53tnF+cXzkxEecouy
2p3i1nk5GnkFn/ot/a6sbD2pbZqkBYxjVLezVVZzKc1ujbuuLu++MuaBsXld
YtSsSN3a4T9FczI2J1dnX+J/tKerm7uvTqCZol3NXHVqnoxSTHxqPnn8ya8m
j38zefzrETyjhpba+tQ0VetGkPJXeAL2Yk/N2c3lGT5Eqzo13/zefINPXPHv
eWX0yu3wdXo6MhO465sGwFK4CjopC16igspK3tZrIFjOJ9OsbqoMzgd7zF26
cNXowcYVrTvFZCbOxA+63uGUuLyyWX7KPW2moqt/WPAKrYvf2ipZdpYX7JWm
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

-->

</rfc>

