<?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-brw-scone-analysis-01" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.1 -->
  <front>
    <title abbrev="Solution Analysis">SCONE Solution Analysis</title>
    <seriesInfo name="Internet-Draft" value="draft-brw-scone-analysis-01"/>
    <author fullname="Dan Wing">
      <organization abbrev="Cloud Software Group">Cloud Software Group Holdings, Inc.</organization>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>danwing@gmail.com</email>
      </address>
    </author>
    <author fullname="Tirumaleswar Reddy">
      <organization>Nokia</organization>
      <address>
        <postal>
          <country>India</country>
        </postal>
        <email>kondtir@gmail.com</email>
      </address>
    </author>
    <author fullname="Sridharan Rajagopalan">
      <organization abbrev="Cloud Software Group">Cloud Software Group Holdings, Inc.</organization>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>sridharan.girish@gmail.com</email>
      </address>
    </author>
    <author initials="L." surname="Contreras" fullname="Luis M. Contreras">
      <organization>Telefonica</organization>
      <address>
        <postal>
          <country>Spain</country>
        </postal>
        <email>luismiguel.contrerasmurillo@telefonica.com</email>
      </address>
    </author>
    <date year="2025" month="April" day="28"/>
    <area>wit</area>
    <workgroup>scone</workgroup>
    <keyword>collaborative networking</keyword>
    <keyword>adaptive application</keyword>
    <abstract>
      <?line 52?>

<t>This document provides an analysis of various SCONE solutions to share the throughput advice.</t>
    </abstract>
  </front>
  <middle>
    <?line 56?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The document provides an analysis of proposed SCONE solutions to share the throughput advice. The currently analyzed solutions (listed in alphabetic order)
are as follows:</t>
      <dl>
        <dt>MASQUE:</dt>
        <dd>
          <t>"MASQUE extension for signaling throughput advice" <xref target="I-D.ihlar-scone-masque-mediabitrate"/></t>
        </dd>
        <dt/>
        <dd>
          <t>See <xref target="sec-masque"/>.</t>
        </dd>
        <dt>NRLP:</dt>
        <dd>
          <t>"Discovery of Network Rate-Limit Policies (NRLPs)" <xref target="I-D.brw-scone-rate-policy-discovery"/></t>
        </dd>
        <dt/>
        <dd>
          <t>See <xref target="sec-nrlp"/>.</t>
        </dd>
        <dt>TRONE:</dt>
        <dd>
          <t>"Transparent Rate Optimization for Network Endpoints (TRONE) Protocol" <xref target="I-D.thoji-scone-trone-protocol"/></t>
        </dd>
        <dt/>
        <dd>
          <t>See <xref target="sec-trone"/>.</t>
        </dd>
      </dl>
    </section>
    <section anchor="sec-class">
      <name>Criteria Classification</name>
      <t>The following categories are used to classify the various criteria:</t>
      <dl>
        <dt>Security/Privacy (Sec):</dt>
        <dd>
          <t>Indicates whether this impacts security/privacy. Some of the criteria that are classified as security-related may also have implications on the efficiency of sharing an advice (e.g., as that is likely to be ignored).</t>
        </dd>
        <dt/>
        <dd>
          <t>Some security/privacy criteria are as follows:
</t>
          <ul spacing="normal">
            <li>
              <t>Zero-trust security: Only authorized network elements must provide the throughput advice.</t>
            </li>
            <li>
              <t>Privacy: Indicates whether a solution does not reveal any details about the app or server identity.</t>
            </li>
            <li>
              <t>Mobility:  Indicates whether a solution supports guards against a malicious app that keeps changing the 5-tuple to evade rate-limit enforcement by the network.</t>
            </li>
          </ul>
        </dd>
        <dt>Deployability (Dep):</dt>
        <dd>
          <t>Captures criteria that are important for unlocking the deployment of a solution at both network and host sides.</t>
        </dd>
        <dt/>
        <dd>
          <t>A deployability hurdle would be typically the misalignment of incentives
between those receiving the benefit vs. those bearing the cost of providing the benefit (<xref section="3.3" sectionFormat="of" target="I-D.narten-radir-problem-statement"/>). For example, the sender of the advice should see (immediate) benefits.</t>
        </dd>
        <dt/>
        <dd>
          <t>Some other deployability criteria are as follows:
</t>
          <ul spacing="normal">
            <li>
              <t>Fate sharing: reflects whether the mechanism used to advertise the throughput advice shares the fate of the rest of the network configuration on the host.</t>
            </li>
            <li>
              <t>Atomic configuration: Indicates whether the throughput advice can be learned using very few packets and whether changes to the policy require sharing the entire policy or just the relevant part.</t>
            </li>
          </ul>
        </dd>
        <dt>Performance (Per):</dt>
        <dd>
          <t>May impact the performance of the network device that enables the solution and/or the performance of the flow.</t>
        </dd>
        <dt>Service Interference (Int):</dt>
        <dd>
          <t>Captures implications on other services (e.g., side effects).</t>
        </dd>
        <dt/>
        <dd>
          <t>For example, tweaking MTU may have an implication on all the flows that share the same network attachment, not only those that consumes an advice. Likewise, requiring address sharing has a plenty of issues that are discussed in <xref target="RFC6269"/>. Also, relying upon an explicit proxy would penalize the proxy which could serve both good and 'bad' clients (e.g., launching Layer 7 DDoS attacks).</t>
        </dd>
        <dt>Functional (Fun):</dt>
        <dd>
          <t>Characterizes the functional capabilities offered by activating a solution.</t>
        </dd>
        <dt/>
        <dd>
          <t>Some examples of functional criteria are as follows:
</t>
          <ul spacing="normal">
            <li>
              <t>Updatability: indicates whether a solution allows to update hosts with policy changes at any time.</t>
            </li>
            <li>
              <t>Path coupled signaling/Path decoupled signaling: Indicates whether solution allows for the entity to share the advice be on-path or off-path. This criterion is also meant to assess the deployment flexibility offered by a solution.</t>
            </li>
            <li>
              <t>Support cascaded environments: Rate-limits may be enabled at several levels. For example, rate-limits may be enforced on the CPE in the home network for the endpoints attached to it and in the provider network to rate-limit the traffic from the subscriber. This criterion indicates whether such setups are supported.</t>
            </li>
          </ul>
        </dd>
      </dl>
      <t>A criterion may belong to one or more categories.</t>
      <table anchor="class">
        <name>Criteria Classification</name>
        <thead>
          <tr>
            <th align="right">Criteria</th>
            <th align="center">Sec</th>
            <th align="center">Dep</th>
            <th align="center">Per</th>
            <th align="center">Int</th>
            <th align="center">Fun</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="right">Protocol ossification</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Zero-trust security</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Privacy</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Guard against random advice injection by an on-path attacker</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Mobility (guard against changing 5-tuple)</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Require guards against app abuse</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Fate sharing</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Atomic configuration</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Updatability</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Integration with network management tools</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Applicable to QUIC</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Applicable to any application</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Require an OS API</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Requires PvD</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Support cascaded environments</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Path coupled signaling</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Path decoupled signaling</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Traffic direction (h2n, n2h, both)</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Per-host policies</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Per-subscriber policies</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Extendable</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Require data plane upgrade/change</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Require transport payload inspection (network)</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Require transport payload inspection (host)</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Require flow inspection and tracking (network)</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Require steering policies on the host</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Depend on the server to consume the signal</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Impact the connection setup delay</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Require the identity of the target server</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center"> </td>
            <td align="center">X</td>
          </tr>
          <tr>
            <td align="right">Require MTU tweaking</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Incur multi-layer encryption</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Incur nested congestion control</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Incur multiple round-trips</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Forwarding peformance impact</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center">X</td>
            <td align="center">X</td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">IP address sharing issues</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
          </tr>
          <tr>
            <td align="right">Penalizing the proxy</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
            <td align="center">X</td>
            <td align="center"> </td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="detailed-analysis">
      <name>Detailed Analysis</name>
      <section anchor="sec-analysis">
        <name>Summary</name>
        <table anchor="sol-sum">
          <name>Analysis Summary</name>
          <thead>
            <tr>
              <th align="right">Criteria</th>
              <th align="center">MASQUE</th>
              <th align="center">NRLP</th>
              <th align="center">TRONE</th>
              <th align="center">Else</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="right">Protocol ossification</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Zero-trust security</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Privacy</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Guard against random advice injection by an on-path attacker</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Mobility (guard against changing 5-tuple)</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Require guards against app abuse</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Fate sharing</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Atomic configuration</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Updatability</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Integration with network management tools</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Applicable to QUIC</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Applicable to any application</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Require an OS API</td>
              <td align="center">TBC</td>
              <td align="center">Y/N(p)</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Requires PvD</td>
              <td align="center">TBC</td>
              <td align="center">Y(p)/N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Support cascaded environments</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Path coupled signaling</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Path decoupled signaling</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Traffic direction (h2n, n2h, both)</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Per-host policies</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Per-subscriber policies</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Extendable</td>
              <td align="center">TBC</td>
              <td align="center">Y</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Require data plane upgrade/change</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Require transport payload inspection (network)</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Require transport payload inspection (host)</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Require flow inspection and tracking (network)</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Require steering policies on the host</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Depend on the server to consume the signal</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Impact the connection setup delay</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Require the identity of the target server</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Require MTU tweaking</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Incur multi-layer encryption</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Incur nested congestion control</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Incur multiple round-trips</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Forwarding peformance impact</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">IP address sharing issues</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
            <tr>
              <td align="right">Penalizing the proxy</td>
              <td align="center">TBC</td>
              <td align="center">N</td>
              <td align="center">TBC</td>
              <td align="center">TBC</td>
            </tr>
          </tbody>
        </table>
        <ul empty="true">
          <li>
            <t>Notes:
(p) indicates the assessment when PvD is used as NRLP mechanism.</t>
          </li>
        </ul>
      </section>
      <section anchor="sec-masque">
        <name>MASQUE (to be completed by the authors of MASQUE)</name>
        <section anchor="key-idea">
          <name>Key Idea</name>
        </section>
        <section anchor="discussion">
          <name>Discussion</name>
        </section>
        <section anchor="main-expected-gains">
          <name>Main Expected Gains</name>
        </section>
        <section anchor="costs">
          <name>Costs</name>
        </section>
      </section>
      <section anchor="sec-nrlp">
        <name>NRLP</name>
        <section anchor="key-idea-1">
          <name>Key Idea</name>
          <t>NRLP leverages existing discovery mechanisms (DHCP, RA, PvD) for networks to advertise throughout advices.
The same generic blob is used independent of the signaling mechanism. NRLP operates within the existing network/host trust model.</t>
          <t>Also, NRLP does not introduce additional dependency that would hinder having the benefits of enabling the NRLP feature.</t>
        </section>
        <section anchor="discussion-1">
          <name>Discussion</name>
          <t>Only network elements that are entitled to send DHCP/RA/PvD configuration are allowed to share the throughput advices. As such, NRLP has built-in:</t>
          <ul spacing="normal">
            <li>
              <t>zero-trust model</t>
            </li>
            <li>
              <t>Guard against random advice injection</t>
            </li>
          </ul>
          <t>Taking into account that NRLP advices are bound to a traffic category, NLRP relies upon the OS to enforce the received policies
for applications falling under a traffic category (or all traffic). In doing so, NRLP adheres to the following:</t>
          <ul spacing="normal">
            <li>
              <t>Mobility (guard against changing 5-tuple)</t>
            </li>
            <li>
              <t>Require guards against app abuse: The OS can allocate network resources more fairly
among different processes, with NRLP signals, ensuring that no single process monopolizes the network.</t>
            </li>
          </ul>
          <t>NRLP meets the following criteria:</t>
          <ul spacing="normal">
            <li>
              <t>Fate sharing: RA/DHCP are needed anyway so that connectivity is provided over a network attachment. NRLP ensures that throughput advices shares the fare of the other network configuration on the host.</t>
            </li>
            <li>
              <t>Atomic configuration: Only one packet (e.g., RA) is required to share the advice. Also, only a specific portion of the configuration can be provided.</t>
            </li>
            <li>
              <t>Updatability/Proactive signaling: It is possible to change the policy at any time and notify hosts (e.g., by sending a new RA).</t>
            </li>
          </ul>
          <t>Given that NRLP advices are shared during the establishment of a network attachment and then as part of the maintenance of the attachment, NRLP is therefore:</t>
          <ul spacing="normal">
            <li>
              <t>Applicable to any transport protocol: This allows specifically to ensure a feature parity for applications that fallback to another transport protocol (e.g., QUIC to TCP).</t>
            </li>
            <li>
              <t>Applicable to QUIC</t>
            </li>
            <li>
              <t>Applicable to any application</t>
            </li>
          </ul>
          <t>To that aim:</t>
          <ul spacing="normal">
            <li>
              <t>RA/DHCP NRLP requires an OS API to expose the signal to applications, and ensure application fairness.</t>
            </li>
            <li>
              <t>If PvD is used, an app only needs to learn the PvD ID from the OS (which is not specific to NRLP) and the PvD additional information can be retrieved by the app itself (without any dependency on the OS).</t>
            </li>
          </ul>
          <t>NRLP leverages existing mechanisms for the provisioning of network attachments, including supply of the various policies (<xref target="I-D.ietf-opsawg-ntw-attachment-circuit"/>). Also, NRLP leverages AAA mechanisms (e.g., <xref target="RFC9445"/>). Therefore, NRLP eases:</t>
          <ul spacing="normal">
            <li>
              <t>Integration with network management tools</t>
            </li>
          </ul>
          <t>One of NRLP flavors:</t>
          <ul spacing="normal">
            <li>
              <t>Requires PvD discovery. This is not required for DHCP/RA.</t>
            </li>
          </ul>
          <t>NRLP does not restrict the deployment options as providers can deploy distributed or centralized DHCP servers, use relays, enable NRLP RA in access routers, etc. Similar to other network configuration purposes, NRLP has the following capabilities:</t>
          <ul spacing="normal">
            <li>
              <t>Support cascaded environments. The throughput advice can even be correlated with local conditions or policies as shown, e.g., in <xref target="ac-casc"/>.</t>
            </li>
            <li>
              <t>Path coupled signaling</t>
            </li>
            <li>
              <t>Path decoupled signaling</t>
            </li>
          </ul>
          <figure anchor="ac-casc">
            <name>Example of Cascaded NRLPs</name>
            <artset>
              <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="192" width="424" viewBox="0 0 424 192" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 8,32 L 8,80" fill="none" stroke="black"/>
                  <path d="M 8,112 L 8,160" fill="none" stroke="black"/>
                  <path d="M 64,32 L 64,80" fill="none" stroke="black"/>
                  <path d="M 64,112 L 64,160" fill="none" stroke="black"/>
                  <path d="M 96,48 L 96,80" fill="none" stroke="black"/>
                  <path d="M 96,112 L 96,144" fill="none" stroke="black"/>
                  <path d="M 144,48 L 144,144" fill="none" stroke="black"/>
                  <path d="M 176,48 L 176,144" fill="none" stroke="black"/>
                  <path d="M 248,32 L 248,176" fill="none" stroke="black"/>
                  <path d="M 416,32 L 416,176" fill="none" stroke="black"/>
                  <path d="M 8,32 L 64,32" fill="none" stroke="black"/>
                  <path d="M 248,32 L 416,32" fill="none" stroke="black"/>
                  <path d="M 64,48 L 96,48" fill="none" stroke="black"/>
                  <path d="M 144,48 L 176,48" fill="none" stroke="black"/>
                  <path d="M 8,80 L 64,80" fill="none" stroke="black"/>
                  <path d="M 96,80 L 144,80" fill="none" stroke="black"/>
                  <path d="M 176,96 L 248,96" fill="none" stroke="black"/>
                  <path d="M 8,112 L 64,112" fill="none" stroke="black"/>
                  <path d="M 96,112 L 144,112" fill="none" stroke="black"/>
                  <path d="M 64,144 L 96,144" fill="none" stroke="black"/>
                  <path d="M 144,144 L 176,144" fill="none" stroke="black"/>
                  <path d="M 8,160 L 64,160" fill="none" stroke="black"/>
                  <path d="M 248,176 L 416,176" fill="none" stroke="black"/>
                  <g class="text">
                    <text x="36" y="52">Host</text>
                    <text x="36" y="68">#1</text>
                    <text x="160" y="84">C</text>
                    <text x="100" y="100">nrlp#2</text>
                    <text x="160" y="100">P</text>
                    <text x="328" y="100">Network</text>
                    <text x="160" y="116">E</text>
                    <text x="212" y="116">nrlp#1</text>
                    <text x="36" y="132">Host</text>
                    <text x="36" y="148">#2</text>
                    <text x="100" y="164">nrlp#3</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art" align="center"><![CDATA[
.------.                      .--------------------.
| Host +---+     .---.        |                    |
|  #1  |   |     |   |        |                    |
'------'   +-----+ C |        |                    |
         nrlp#2  | P +--------+      Network       |
.------.   .-----+ E | nrlp#1 |                    |
| Host |   |     |   |        |                    |
|  #2  +---'     '---'        |                    |
'------' nrlp#3               |                    |
                              '--------------------'
]]></artwork>
            </artset>
          </figure>
          <t>The same generic blob is used in NRLP independent of the signaling mechanism. The blob is designed with the following key characteristics:</t>
          <ul spacing="normal">
            <li>
              <t>Traffic direction (h2n, n2h, both): policies for one or both directions can be supplied.</t>
            </li>
            <li>
              <t>Per-host policies: An explicit indication in inserted in the advice to tag per-host policies.</t>
            </li>
            <li>
              <t>Per-subscriber policies: An explicit indication in inserted in the advice to tag per-subscriber policies. This covers deployment scenarios such as tethering or CPE-based service offerings.</t>
            </li>
            <li>
              <t>Provide provisions for extensions: NLRP includes provisions for future attributes that are tracked in IANA registries.</t>
            </li>
          </ul>
          <t>Given that NRLP leverages existing control plane mechanisms, NRLP does not:</t>
          <ul spacing="normal">
            <li>
              <t>Suffer from protocol ossification issues</t>
            </li>
            <li>
              <t>Require data plane upgrade/change</t>
            </li>
            <li>
              <t>Require transport payload inspection (network)</t>
            </li>
            <li>
              <t>Require transport payload inspection (host)</t>
            </li>
            <li>
              <t>Require flow inspection and tracking (network)</t>
            </li>
          </ul>
          <t>Also, given that NRLP signals are exchanged before connection establishment, NRLP does not:</t>
          <ul spacing="normal">
            <li>
              <t>Depend on the server to consume the signal: NRLP advices are immediately consumable by applications and do not require involving a remote server.</t>
            </li>
            <li>
              <t>Require the identity of the target server to receive or consume the advices.</t>
            </li>
          </ul>
          <t>Moreover, NRLP does require any encapsulation or proxy function at the network. As such, NRLP does not:</t>
          <ul spacing="normal">
            <li>
              <t>Require steering policies on the host to decide which flows are eligible to the proxy service.</t>
            </li>
            <li>
              <t>Impact the connection setup delay: NRLP signals are available on bootstrap of a host (and prior to any connection establishment).</t>
            </li>
            <li>
              <t>Require MTU tweaking</t>
            </li>
            <li>
              <t>Incur multi-layer encryption</t>
            </li>
            <li>
              <t>Incur nested congestion control</t>
            </li>
            <li>
              <t>Incur multiple round-trips: The signal is immediately available in one packet (RA NRLP, typically).</t>
            </li>
            <li>
              <t>Overhead of unauthenticated re-encryption</t>
            </li>
            <li>
              <t>Forwarding performance impact</t>
            </li>
            <li>
              <t>IP address sharing issues: NRLP does not require changing the source IP address used by a host.</t>
            </li>
            <li>
              <t>Penalize any network node (a proxy, typically) which could serve both good and bad clients (e.g., launching Layer 7 DDoS attacks).</t>
            </li>
          </ul>
        </section>
        <section anchor="main-expected-gains-1">
          <name>Main Expected Gains</name>
          <ul spacing="normal">
            <li>
              <t>Lower deployment barrier to experiment in large scale (no hardware or software change is needed in network components).</t>
            </li>
            <li>
              <t>Schedule network requests (independent of the transport protocol) more efficiently, preventing network congestion, and improving overall stability and network performance.</t>
            </li>
            <li>
              <t>Unlock new services in local networks and enhance the quality of experience at the LAN by providing a simple tool to communicate local policies to hosts.</t>
            </li>
            <li>
              <t>Provide a mechanism to assist networks managing the load at the source and, thus, contribute to better handle network overloads and optimize the use of resources under non nominal conditions.</t>
            </li>
          </ul>
        </section>
        <section anchor="costs-1">
          <name>Costs</name>
          <ul spacing="normal">
            <li>
              <t>A simple configuration is required for IPv4: DHCP flavor can be provided by configuration of custom options. Refer to <xref target="NRLP-WIRE"/>.</t>
            </li>
            <li>
              <t>A similar configuration approach can be followed for DHCPv6.</t>
            </li>
            <li>
              <t>A minor change to the network is required for NRLP RA: upgrade configuration of PE nodes with new Neighbor Discovery option. Note that all IPv6 hosts and networks are already required to support Neighbor Discovery <xref target="RFC4861"/>.</t>
            </li>
            <li>
              <t>An API needs to be exposed on the host to share the advice with applications (e.g., scutil on MacOS). No additional API is needed if PvD is used.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="sec-trone">
        <name>TRONE  (to be completed by the authors of TRONE)</name>
        <section anchor="key-idea-2">
          <name>Key Idea</name>
        </section>
        <section anchor="discussion-2">
          <name>Discussion</name>
        </section>
        <section anchor="main-expected-gains-2">
          <name>Main Expected Gains</name>
        </section>
        <section anchor="costs-2">
          <name>Costs</name>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Security-related criteria are analyzed for each proposed solution.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document does not make any IANA request.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="I-D.ihlar-scone-masque-mediabitrate">
          <front>
            <title>MASQUE extension for signaling throughput advice</title>
            <author fullname="Marcus Ihlar" initials="L. M." surname="Ihlar">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Mirja Kühlewind" initials="M." surname="Kühlewind">
              <organization>Ericsson</organization>
            </author>
            <date day="3" month="March" year="2025"/>
            <abstract>
              <t>   This document specifies a new Capsule (RFC9297) that can be used with
   CONNECT-UDP (RFC9298), CONNECT-IP (RFC9484), or other future CONNECT
   extensions to signal throughput advice for traffic that is proxied
   through an HTTP server.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ihlar-scone-masque-mediabitrate-02"/>
        </reference>
        <reference anchor="I-D.brw-scone-rate-policy-discovery">
          <front>
            <title>Discovery of Network Rate-Limit Policies (NRLPs)</title>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Dan Wing" initials="D." surname="Wing">
              <organization>Cloud Software Group Holdings, Inc.</organization>
            </author>
            <author fullname="Tirumaleswar Reddy.K" initials="T." surname="Reddy.K">
              <organization>Nokia</organization>
            </author>
            <author fullname="Sridharan Rajagopalan" initials="S." surname="Rajagopalan">
              <organization>Cloud Software Group Holdings, Inc.</organization>
            </author>
            <author fullname="Gyan Mishra" initials="G. S." surname="Mishra">
              <organization>Verizon Inc</organization>
            </author>
            <author fullname="Markus Amend" initials="M." surname="Amend">
              <organization>Deutsche Telekom</organization>
            </author>
            <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
              <organization>Telefonica</organization>
            </author>
            <date day="16" month="December" year="2024"/>
            <abstract>
              <t>   This document specifies mechanims for hosts to dynamically discover
   Network Rate-Limit Policies (NRLPs).  This information is then passed
   to applications that might adjust their behaviors accordingly.

   Networks already support mechanisms to advertize a set of network
   properties to hosts (e.g., link MTU (RFC 4861) and PREFIX64 (RFC
   8781)).  This document complements these tools and specifies a
   Neighbor Discovery option to be used in Router Advertisements (RAs)
   to communicate NRLPs to hosts.  For address family parity, a new DHCP
   option is also defined.  The document also discusses how Provisioning
   Domains (PvD) can be used to notify hosts with NRLPs.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-brw-scone-rate-policy-discovery-02"/>
        </reference>
        <reference anchor="I-D.thoji-scone-trone-protocol">
          <front>
            <title>Transparent Rate Optimization for Network Endpoints (TRONE) 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="3" month="March" year="2025"/>
            <abstract>
              <t>   On-path network elements can sometimes be configured to apply rate
   limits to flows that pass them.  This document describes a method for
   signaling to endpoints that rate limiting policies are in force and
   what that rate limit is.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-thoji-scone-trone-protocol-00"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="NRLP-WIRE" target="https://github.com/boucadair/draft-xxx-ac-rate-policy-discovery/blob/main/example-nrlp-wire-format.md">
          <front>
            <title>Examples of Wire Format Options</title>
            <author>
              <organization/>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="I-D.narten-radir-problem-statement">
          <front>
            <title>On the Scalability of Internet Routing</title>
            <author fullname="Dr. Thomas Narten" initials="T." surname="Narten">
              <organization>IBM</organization>
            </author>
            <date day="17" month="February" year="2010"/>
            <abstract>
              <t>There has been much discussion over the last years about the overall
scalability of the Internet routing system.  Some have argued that
the resources required to maintain routing tables in the core of the
Internet are growing faster than available technology will be able to
keep up.  Others disagree with that assessment.  This document
attempts to describe the factors that are placing pressure on the
routing system and the growth trends behind those factors.
              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-narten-radir-problem-statement-05"/>
        </reference>
        <reference anchor="RFC6269">
          <front>
            <title>Issues with IP Address Sharing</title>
            <author fullname="M. Ford" initials="M." role="editor" surname="Ford"/>
            <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
            <author fullname="A. Durand" initials="A." surname="Durand"/>
            <author fullname="P. Levis" initials="P." surname="Levis"/>
            <author fullname="P. Roberts" initials="P." surname="Roberts"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>The completion of IPv4 address allocations from IANA and the Regional Internet Registries (RIRs) is causing service providers around the world to question how they will continue providing IPv4 connectivity service to their subscribers when there are no longer sufficient IPv4 addresses to allocate them one per subscriber. Several possible solutions to this problem are now emerging based around the idea of shared IPv4 addressing. These solutions give rise to a number of issues, and this memo identifies those common to all such address sharing approaches. Such issues include application failures, additional service monitoring complexity, new security vulnerabilities, and so on. Solution-specific discussions are out of scope.</t>
              <t>Deploying IPv6 is the only perennial way to ease pressure on the public IPv4 address pool without the need for address sharing mechanisms that give rise to the issues identified herein. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6269"/>
          <seriesInfo name="DOI" value="10.17487/RFC6269"/>
        </reference>
        <reference anchor="I-D.ietf-opsawg-ntw-attachment-circuit">
          <front>
            <title>A Network YANG Data Model for Attachment Circuits</title>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Richard Roberts" initials="R." surname="Roberts">
              <organization>Juniper</organization>
            </author>
            <author fullname="Oscar Gonzalez de Dios" initials="O. G." surname="de Dios">
              <organization>Telefonica</organization>
            </author>
            <author fullname="Samier Barguil" initials="S." surname="Barguil">
              <organization>Nokia</organization>
            </author>
            <author fullname="Bo Wu" initials="B." surname="Wu">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="23" month="January" year="2025"/>
            <abstract>
              <t>   This document specifies a network model for attachment circuits.  The
   model can be used for the provisioning of attachment circuits prior
   or during service provisioning (e.g., VPN, Network Slice Service).  A
   companion service model is specified in the YANG Data Models for
   Bearers and 'Attachment Circuits'-as-a-Service (ACaaS) (I-D.ietf-
   opsawg-teas-attachment-circuit).

   The module augments the base network ('ietf-network') and the Service
   Attachment Point (SAP) models with the detailed information for the
   provisioning of attachment circuits in Provider Edges (PEs).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-opsawg-ntw-attachment-circuit-16"/>
        </reference>
        <reference anchor="RFC9445">
          <front>
            <title>RADIUS Extensions for DHCP-Configured Services</title>
            <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
            <author fullname="T. Reddy.K" initials="T." surname="Reddy.K"/>
            <author fullname="A. DeKok" initials="A." surname="DeKok"/>
            <date month="August" year="2023"/>
            <abstract>
              <t>This document specifies two new Remote Authentication Dial-In User Service (RADIUS) attributes that carry DHCP options. The specification is generic and can be applicable to any service that relies upon DHCP. Both DHCPv4- and DHCPv6-configured services are covered.</t>
              <t>Also, this document updates RFC 4014 by relaxing a constraint on permitted RADIUS attributes in the RADIUS Attributes DHCP suboption.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9445"/>
          <seriesInfo name="DOI" value="10.17487/RFC9445"/>
        </reference>
        <reference anchor="RFC4861">
          <front>
            <title>Neighbor Discovery for IP version 6 (IPv6)</title>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <author fullname="E. Nordmark" initials="E." surname="Nordmark"/>
            <author fullname="W. Simpson" initials="W." surname="Simpson"/>
            <author fullname="H. Soliman" initials="H." surname="Soliman"/>
            <date month="September" year="2007"/>
            <abstract>
              <t>This document specifies the Neighbor Discovery protocol for IP Version 6. IPv6 nodes on the same link use Neighbor Discovery to discover each other's presence, to determine each other's link-layer addresses, to find routers, and to maintain reachability information about the paths to active neighbors. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4861"/>
          <seriesInfo name="DOI" value="10.17487/RFC4861"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
SQAA

-->

</rfc>
