<?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.6 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-shi-ippm-congestion-measurement-data-00" category="std" consensus="true" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 3.20.0 -->
  <front>
    <title abbrev="CM">Data Fields for Congestion Measurement</title>
    <seriesInfo name="Internet-Draft" value="draft-shi-ippm-congestion-measurement-data-00"/>
    <author initials="H." surname="Shi" fullname="Hang Shi" role="editor">
      <organization>Huawei</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>shihang9@huawei.com</email>
      </address>
    </author>
    <author initials="T." surname="Zhou" fullname="Tianran Zhou">
      <organization>Huawei</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>zhoutianran@huawei.com</email>
      </address>
    </author>
    <author initials="Z." surname="Li" fullname="Zhenqiang Li">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>li_zhenqiang@hotmail.com</email>
      </address>
    </author>
    <date year="2024" month="March" day="04"/>
    <area>Transport</area>
    <workgroup>IP Performance Measurement</workgroup>
    <keyword>Congestion Measurement</keyword>
    <abstract>
      <?line 99?>

<t>Congestion Measurement collects the congestion information in the packet while the packet traverses a path. The sender sets the congestion measurement command in the packet header indicating the network device along the path to update the congestion information field in the packet. When the packet arrive at the receiver, the congestion information field will reflect the degree of congestion across network path. Congestion Measurement can enable precise congestion control, aids in effective load balancing, and simplifies network debugging. This document defines data fields for Congestion Measurement. Congestion Measurement Data-Fields can be encapsulated into a variety of protocols, such as Network Service Header (NSH), Segment Routing, Generic Network Virtualization Encapsulation (Geneve), or IPv6.</t>
    </abstract>
  </front>
  <middle>
    <?line 103?>

<section anchor="intro">
      <name>Introduction</name>
      <t>To effectively manage network congestion, a detailed understanding of congestion levels across the network is imperative. Congestion control algorithms, therefore, necessitate precise congestion measurements to adapt and optimize data flow. This approach involves monitoring various metrics such as packet loss, delay variations, and throughput, which can provide a glimpse of the network's congestion state. Enhanced congestion metrics allow for a more nuanced response to congestion, enabling algorithms to adjust sending rates with greater precision, thereby improving overall network performance and efficiency.</t>
      <t>Furthermore, the detailed congestion measurements obtained are not solely beneficial for congestion control; they serve multifaceted purposes, including load balancing and network operations debugging. By analyzing congestion data, network operators can identify and resolve bottlenecks, optimize traffic distribution, and ensure a balanced load across the network. This data-driven approach facilitates proactive network management, allowing for timely interventions that can preempt potential disruptions and enhance network reliability and performance.</t>
      <t>Addressing the limitations of High Precision Congestion Control (HPCC)<xref target="I-D.draft-an-ccwg-hpcc"/>, which leverages in-band telemetry for detailed congestion signal collection but faces challenges with packet size increases and computational redundancy, our proposed solution introduces data fields for Congestion Measurement. Congestion Measurement expands the conventional single-bit ECN to multiple bits, allowing network devices to update congestion information at each hop more granularly. Consequently, when packets reach the receiver, the congestion information field in the packet accurately not just the presence of congestion but the degree of congestion across the link's path. This nuanced approach facilitates a richer set of data for decision-making, supporting not only more precise congestion control but also improving load balancing and network debugging efforts. By overcoming HPCC's shortcomings, our approach enhances network efficiency, reduces computational overhead at endpoints, and offers a scalable solution to managing congestion in complex network environments. Congestion Measurement Data-Fields can be encapsulated into a variety of protocols, such as Network Service Header (NSH), Segment Routing, Generic Network Virtualization Encapsulation (Geneve), or IPv6.</t>
      <section anchor="terminology">
        <name>Terminology</name>
        <ul spacing="normal">
          <li>
            <t>ECN: Explicit Congestion Notification</t>
          </li>
          <li>
            <t>HPCC: High Precision Congestion Control<xref target="I-D.draft-an-ccwg-hpcc"/></t>
          </li>
          <li>
            <t>DRE: Discounting Rate Estimator<xref target="CONGA"/></t>
          </li>
        </ul>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</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>
    <section anchor="overview">
      <name>Overview</name>
      <t><xref target="CM-procedure"/> shows the overview procedure of Congestion Measurement. First the sender <bcp14>MUST</bcp14> marks the packet with data fields for Congestion Measurement (see <xref target="format"/>) which specifies what kind of the congestion information that the sending node intends to collect from transit nodes. As the packet traverses through the network, each router should inspect the data fields and update the Congestion Info field accordingly. Upon reaching the receiver, the updated congestion info data within the packet is extracted and then send back to the sender. The sender, now equipped with the congestion information reflective of the packet's journey, uses this data to make informed adjustments to its sending rate or load balancing decisions.</t>
      <figure anchor="CM-procedure">
        <name>Overview of Congestion Measurement</name>
        <artwork><![CDATA[
   Mark              Update            Update             Export
Congestion         Congestion        Congestion         Congestion
Measurement          Info               Info               Info
    |                 |                  |                  |
    |                 |                  |                  |
    |                 |                  |                  |
+-------+         +-------+          +-------+         +---------+
|Sending|========>|Transit|=========>|Transit|======= >|Receiving|
|  Node |         | Node1 |          | Node2 |         |  Node   |
+-------+  Link-1 +-------+  Link-2  +-------+ Link-3  +---------+
]]></artwork>
      </figure>
    </section>
    <section anchor="format">
      <name>Data fields for Congestion Measurement</name>
      <t><xref target="CM-header"/> shown the format of data fields for Congestion Measurement.</t>
      <figure anchor="CM-header">
        <name>Data Fields for Congestion Measurement</name>
        <artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U| Reserved  |C|           Congestion Info Type                |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                     Congestion Info Data                      |
~                            ....                               ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
      </figure>
      <t>where:</t>
      <ul spacing="normal">
        <li>
          <t>Flags: An 8-bit field.
          </t>
          <ul spacing="normal">
            <li>
              <t>The first bit(U) indicates whether the Congestion Info Data field needs to be updated by transit nodes. If set, the transit nodes will update the Congestion Info Data. If not, the transit node will not update it.</t>
            </li>
            <li>
              <t>The last bit(C) indicates the Congestion Info Data is customized and used only in limited domain such as Data center network. If the C is 0, the Congestion Info Type is a bitmap. Other bits are reserved.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>Congestion Info Type: A 24-bit map that specifies the present Congestion Info Data. Supported Congestion Info Data is listed in <xref target="congestion-info"/>. Note that it is possible for multiple Congestion Info Data to coexist in one packet for the endpoint to collect the detailed raw congestion information.</t>
        </li>
        <li>
          <t>Congestion Info Data: A variable length field including the congestion information data. Router <bcp14>MUST</bcp14> update this field based on local load status. The length and the update operation is listed in <xref target="congestion-info"/>.</t>
        </li>
      </ul>
      <table anchor="congestion-info">
        <name>Congestion Info Data</name>
        <thead>
          <tr>
            <th align="center">Bit</th>
            <th align="left">Congestion Info Data</th>
            <th align="center">Length</th>
            <th align="left">Operation</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="center">0</td>
            <td align="left">Inflight Ratio</td>
            <td align="center">8</td>
            <td align="left">Max</td>
          </tr>
          <tr>
            <td align="center">1</td>
            <td align="left">DRE</td>
            <td align="center">8</td>
            <td align="left">Max</td>
          </tr>
          <tr>
            <td align="center">2</td>
            <td align="left">Queue Utilization Ratio</td>
            <td align="center">8</td>
            <td align="left">Max</td>
          </tr>
          <tr>
            <td align="center">3</td>
            <td align="left">Queue Delay</td>
            <td align="center">8</td>
            <td align="left">Add</td>
          </tr>
          <tr>
            <td align="center">4</td>
            <td align="left">Congested Hops</td>
            <td align="center">8</td>
            <td align="left">Add</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="example-hpcc-with-congestion-measurement">
      <name>Example: HPCC with Congestion Measurement</name>
      <t>HPCC calculates the inflight ratio of each link(represent the link utilization of the link) from the collected raw load information carried in the INT. Then maximum inflight ratio along the path is identified and used to adjust the sending rate. The formula to calculate the inflight ratio of each link is shown below:</t>
      <artwork><![CDATA[
txRate = (txBytes_1 - txBytes_2)/(t_1-t_2)
inflight ratio = qlen/(B*T) + txRate/B
]]></artwork>
      <t>where:</t>
      <ul spacing="normal">
        <li>
          <t>txBytes: link total transmitted bytes associated with timestamp ts</t>
        </li>
        <li>
          <t>qlen: link queue length</t>
        </li>
        <li>
          <t>B: link bandwidth</t>
        </li>
        <li>
          <t>T: Baseline RTT</t>
        </li>
      </ul>
      <t>Leveraging Congestion Measurement, the router participates in calculation of the maximum inflight ratio. Each router <bcp14>MUST</bcp14> calculate the inflight ratio of the down link and then compare it to the one in the Congestion Info Data field and keep the larger one. When the packet arrives at the endpoint, the Congestion Info Data field already contains the maximum inflight ratio. The sending rate adjustment algorithm remains unchanged. By allowing routers to conduct these calculations, the computing overhead is reduced for the endpoint. Since the update of value is in-place, the packet size remains unchanged regardless of the hops count.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TBD.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>TBD.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="CONGA">
          <front>
            <title>CONGA: distributed congestion-aware load balancing for datacenters</title>
            <author initials="M." surname="Alizadeh" fullname="Mohammad Alizadeh">
              <organization/>
            </author>
            <author initials="T." surname="Edsall" fullname="Tom Edsall">
              <organization/>
            </author>
            <author initials="S." surname="Dharmapurikar" fullname="Sarang Dharmapurikar">
              <organization/>
            </author>
            <author initials="R." surname="Vaidyanathan" fullname="Ramanan Vaidyanathan">
              <organization/>
            </author>
            <author initials="K." surname="Chu" fullname="Kevin Chu">
              <organization/>
            </author>
            <author initials="A." surname="Fingerhut" fullname="Andy Fingerhut">
              <organization/>
            </author>
            <author initials="V." surname="Lam" fullname="Vinh The Lam">
              <organization/>
            </author>
            <author initials="F." surname="Matus" fullname="Francis Matus">
              <organization/>
            </author>
            <author initials="R." surname="Pan" fullname="Rong Pan">
              <organization/>
            </author>
            <author initials="N." surname="Yadav" fullname="Navindra Yadav">
              <organization/>
            </author>
            <author initials="G." surname="Varghese" fullname="George Varghese">
              <organization/>
            </author>
            <date year="2014" month="August"/>
          </front>
          <seriesInfo name="DOI" value="10.1145/2619239"/>
          <refcontent>Proceedings of the 2014 ACM conference on SIGCOMM</refcontent>
        </reference>
        <reference anchor="I-D.draft-an-ccwg-hpcc">
          <front>
            <title>HPCC++: Enhanced High Precision Congestion Control</title>
            <author fullname="Qing An" initials="Q." surname="An">
              <organization>Alibaba Group</organization>
            </author>
            <author fullname="Jiaqi Gao" initials="J." surname="Gao">
              <organization>Alibaba Group</organization>
            </author>
            <author fullname="Surendra Anubolu" initials="S." surname="Anubolu">
              <organization>Broadcom, Inc.</organization>
            </author>
            <author fullname="Rong Pan" initials="R." surname="Pan">
              <organization>Intel, Corp.</organization>
            </author>
            <author fullname="Jeongkeun Lee" initials="J." surname="Lee">
              <organization>Intel, Corp.</organization>
            </author>
            <author fullname="Barak Gafni" initials="B." surname="Gafni">
              <organization>NVIDIA</organization>
            </author>
            <author fullname="Yuval Shpigelman" initials="Y." surname="Shpigelman">
              <organization>NVIDIA</organization>
            </author>
            <author fullname="Jeff Tantsura" initials="J." surname="Tantsura">
              <organization>NVIDIA</organization>
            </author>
            <author fullname="Guy Caspary" initials="G." surname="Caspary">
              <organization>Cisco Systems</organization>
            </author>
            <date day="30" month="June" year="2023"/>
            <abstract>
              <t>   Congestion control (CC) is the key to achieving ultra-low latency,
   high bandwidth and network stability in high-speed networks.
   However, the existing high-speed CC schemes have inherent limitations
   for reaching these goals.

   In this document, it describes HPCC++ (High Precision Congestion
   Control), a new high-speed CC mechanism which achieves the three
   goals simultaneously.  HPCC++ leverages inband telemetry to obtain
   precise link load information and controls traffic precisely.  By
   addressing challenges such as delayed signaling during congestion and
   overreaction to the congestion signaling using inband and granular
   telemetry, HPCC++ can quickly converge to utilize all the available
   bandwidth while avoiding congestion, and can maintain near-zero in-
   network queues for ultra-low latency.  HPCC++ is also fair and easy
   to deploy in hardware, implementable with commodity NICs and
   switches.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-an-ccwg-hpcc-00"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
