<?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.19 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ysl-cats-metric-definition-02" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.24.0 -->
  <front>
    <title abbrev="CATS Metrics">CATS Metrics Definition</title>
    <seriesInfo name="Internet-Draft" value="draft-ysl-cats-metric-definition-02"/>
    <author initials="Y." surname="Kehan" fullname="Kehan Yao">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>yaokehan@chinamobile.com</email>
      </address>
    </author>
    <author initials="H." surname="Shi" fullname="Hang Shi">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>shihang9@huawei.com</email>
      </address>
    </author>
    <author initials="C." surname="Li" fullname="Cheng Li">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>c.l@huawei.com</email>
      </address>
    </author>
    <author initials="L. M." surname="Contreras" fullname="L. M. Contreras">
      <organization>Telefonica</organization>
      <address>
        <email>luismiguel.contrerasmurillo@telefonica.com</email>
      </address>
    </author>
    <author initials="J." surname="Ros-Giralt" fullname="Jordi Ros-Giralt">
      <organization>Qualcomm Europe, Inc.</organization>
      <address>
        <email>jros@qti.qualcomm.com</email>
      </address>
    </author>
    <date year="2024" month="November" day="06"/>
    <area>Routing</area>
    <workgroup>Computing-Aware Traffic Steering</workgroup>
    <keyword>CATS, metric</keyword>
    <abstract>
      <?line 65?>

<t>This document defines a set of computing metrics used for Computing-Aware Traffic Steering(CATS).</t>
    </abstract>
  </front>
  <middle>
    <?line 69?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Many computing services are deployed in a distributed way. In such deployment mode, multiple service instances are deployed in multiple service sites to provide equivalent service to end users. In order to provide better service to end users, a framework called Computing-Aware Traffic Steering(CATS) <xref target="I-D.ietf-cats-framework"/> is defined.</t>
      <t>CATS is a traffic engineering approach that takes into account the dynamic nature of computing resources and network state to optimize service-specific traffic forwarding towards a given service contact instance<xref target="I-D.ietf-cats-framework"/>. Various metrics may be used to enforce such computing-aware traffic steering policies.</t>
      <t>To steer traffic to a service contact instance, CATS components(C-PS, C-Forwarders, etc.) need information of the service instance's computing status.  In addition to network-related metrics, a common definition of relevant computing metrics is essential for effective coordination between network devices and compute instances. Standardized metrics enable precise traffic steering decisions that optimize resource utilization and improve overall system performance.</t>
      <t>Various considerations for metric definition are proposed in <xref target="I-D.du-cats-computing-modeling-description"/>, which are useful in defining computing metrics.</t>
      <t>Based on the considerations defined in <xref target="I-D.du-cats-computing-modeling-description"/>, this document defines relevant computing metrics for CATS by categorizing the metrics into three levels based on their complexity and granularity details.</t>
    </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?>

<t>This document uses the following terms defined in <xref target="I-D.ietf-cats-framework"/>:</t>
      <ul spacing="normal">
        <li>
          <t>Computing-Aware Traffic Steering (CATS).</t>
        </li>
        <li>
          <t>Service.</t>
        </li>
        <li>
          <t>Service contact instance.</t>
        </li>
      </ul>
    </section>
    <section anchor="definition-of-metrics">
      <name>Definition of Metrics</name>
      <t>Definition and usage of specific metrics are related to the intended use case. However, when considering disseminating compute metrics to network devices, appropriate categorization and abstraction of CATS metrics is required in order to avoid introducing extra complexity into the network.</t>
      <t>This document defines three abstract metric levels to meet different requirements use cases listed in <xref target="I-D.ietf-cats-usecases-requirements"/>:</t>
      <ul spacing="normal">
        <li>
          <t>Level 0 (L0): Raw metrics. The metrics are not abstracted, so different metrics use their own unit and format as used within a compute orchestration domain.</t>
        </li>
        <li>
          <t>Level 1 (L1): Normalized metrics in categories. The metrics are categorized into multiple dimensions, such as network, computing, and storage. Each category metric is normalized into a value or a set of values with a range of scores.</t>
        </li>
        <li>
          <t>Level 2 (L2): Fully normalized metric. Metrics are normalized into a single value. The category information or raw metrics information cannot be interpreted from the value directly.</t>
        </li>
      </ul>
      <section anchor="level-0-raw-metrics">
        <name>Level 0: Raw Metrics</name>
        <t>Level 0 metrics encompass detailed, raw metrics, including but not limit to:</t>
        <ul spacing="normal">
          <li>
            <t>CPU: Base Frequency, Number of Cores,  Boosted Frequency, Memory Bandwidth, Memory Size, Utilization Ratio, Core Utilization Ratio, Power Consumption.</t>
          </li>
          <li>
            <t>GPU: Frequency, Number of Render Unit, Memory Bandwidth, Memory Size, Memory Utilization Ratio, Core Utilization Ratio, Power Consumption.</t>
          </li>
          <li>
            <t>NPU: Computing Power, Utlization Ratio, Power Consumption.</t>
          </li>
          <li>
            <t>Network: Bandwidth, Capacity, Throughput, TXBytes, RXBytes, HostBusUtilization.</t>
          </li>
          <li>
            <t>Storage: Available Space, Read Speed, Write Speed.</t>
          </li>
          <li>
            <t>Delay: Time taken to process a request.</t>
          </li>
        </ul>
        <t>Detailed information of a metric in L0 can be encoded into Application Programming Interface(API)(e.g., Restful API), and different services have their own metrics with different information elements. L0 metrics are used widely in IT systems.</t>
        <t>Regarding network related raw metrics, IPPM WG has defined many types of metrics in <xref target="performance-metrics"/>. <xref target="RFC9439"/> also defines many metrics of packet performance and Throughput/Bandwidth. Regarding computing metrics, <xref target="I-D.rcr-opsawg-operational-compute-metrics"/> lists a set of cloud resource metrics.</t>
      </section>
      <section anchor="level-1-normalized-metrics-in-categories">
        <name>Level 1: Normalized Metrics in Categories</name>
        <t>The metrics in L1 are categorized into different categories, and abstraction will be applied to each category. L0 raw metrics can be classified into multiple categories, such as computing, networking, storage, and delay. In each category, the metrics are normalized into a value that present the state of a resource. Potential categories are shown below:</t>
        <ul spacing="normal">
          <li>
            <t>Computing: A normalized value generating from the computing related L0 metrics, such as CPU/GPU/NPU L0 metrics</t>
          </li>
          <li>
            <t>Networking: A normalized value generating from the network related L0 metrics.</t>
          </li>
          <li>
            <t>Storage: A normalized value generating from the storage L0 metrics.</t>
          </li>
          <li>
            <t>Delay: A normalized value generating from computing/networking/storage metrics, reflecting the processing delay of a request.</t>
          </li>
        </ul>
        <t>Editor note: detailed categories can be updated according to the CATS WG discussion.</t>
        <t>The L0 metrics, such as the ones defined in <xref target="performance-metrics"/> ,<xref target="RFC9439"/> and <xref target="I-D.rcr-opsawg-operational-compute-metrics"/> can be categorized into above categories. Each category will use its own method(weighted summary, etc.) to generate the normalized value. In this way, the protocol only care about the metric categories and its normalized value, and avoid to process the detailed metrics.</t>
      </section>
      <section anchor="level-2-fully-normalized-metric">
        <name>Level 2: Fully Normalized Metric.</name>
        <t>L2 metric is a one-dimensional value derived from a weighted sum of L1 metrics or from L0 metrics directly. Services may have their own normalization method which might use different metrics with different weight. Some implementations may support configuration of Ingress CATS-Forwarders with the metric normalizing method so that it can decode the affection from the L1 or L0 metrics.</t>
        <t>The definition of L2 metric simplifies the complexity of transmission and management of multiple metrics by consolidating them into a single, unified measure.</t>
        <t>Figure 1 shows the logic of metrics in Level 0, Level 1, and Level 2.</t>
        <figure anchor="fig-cats-metric">
          <name>Logic of CATS Metrics in levels</name>
          <artwork><![CDATA[
                        +--------------+
Level 2       +---------| Normalized M |------------+
              |         +--------------+            |
              |                |                    |
              |                |  Normalizing       |
         +-------------+    +------------+     +------------+
Level 1  | Category M1 |    | Category M2|     | Category M3|  ...
         +-------------+    +------------+     +------------+
               | |               |                    | |
               | |               |Normalizing         | |
        +------+ +------+     +------+         +------+ +------+
Level 0 |Raw M1| |Raw M2|.....|Raw M3|.........|Raw M4| |Raw M5| ...
        +------+ +------+     +------+         +------+ +------+

]]></artwork>
        </figure>
      </section>
    </section>
    <section anchor="representation-of-metrics">
      <name>Representation of Metrics</name>
      <t>A hierarchical view of metrics has been shown in Figure 1. This section includes the detailed representation of metrics.</t>
      <t><xref target="RFC9439"/> gives a good way to show the representation of some network metrics which is used for network capabilities exposure to
   applications. This document further describes the representation of CATS metrics.</t>
      <t>Basically, in each metric level and for each metric, there will be some common fields for representation, including metric type, unit, and precision.  Metric type is a label for network devices to recognize what the metric is. "unit" and "precision" are usually associated with the metric.  How many bits a metric occupies in protocols is also required.</t>
      <t>Beyond these basic representations, the source of the metrics must also be declared, since there are multiple levels of metrics and their sources are different.  As defined in <xref target="RFC9439"/>, there are three cost-sources, nominal, sla, and estimation.  This document further divide the estimation type into three sub-types, direct measurement, aggregation, and normalization, since different levels of metrics require different sources to acquire CATS metrics.  Directly measured metrics have physical meanings and units without any processing. Aggregated metrics can be either physically meaningful or not, and they maintain their meanings compared to the directly measured metrics.  Normalized metrics can have physical meanings or not, but they do not have units, and they are just numbers that used for routing decision making.</t>
      <t>To be more fine-grained, this document refers to the definition of <xref target="RFC9439"/>  on the metrics statistics.</t>
      <section anchor="level-0-metric-representation">
        <name>Level 0 Metric Representation</name>
        <t>Raw metrics have exact physical meanings and units.  They are directly measured from the underlying computing resources providers.
   Lots of definition on this level of metrics have been defined in IT industry and other standardizations<xref target="DMTF"/>, and this document only show some examples for different categories of metrics for reference.</t>
        <section anchor="compute-raw-metrics">
          <name>Compute Raw Metrics</name>
          <t>The metric type of compute resources are named as “compute_type:
   CPU” or “compute_type: GPU”. Their frequency unit is GHZ, the compute
   capabilities unit is FLOPS.  Format should support integer and FP8.
   It will occupy 4 octets. Example:</t>
          <figure anchor="fig-compute-raw-metric">
            <name>An Example for Compute Raw Metrics</name>
            <artwork><![CDATA[
Basic fields:
      Metric type: “compute type_CPU”
      Format: integer, FP8
      Bits occupation: 4 octets
Special fields:
      Frequency unit: GHZ
      Compute capabilities unit: FLOPs
Source: 
      Direct measurement
Statistics:
      Mean 
]]></artwork>
          </figure>
        </section>
        <section anchor="storage-raw-metrics">
          <name>Storage Raw Metrics</name>
          <t>The metric type of storage resources like SSD are named as
   “storage_type: SSD”. The storage space unit is megaBytes(MBs).
   Format is integer.  It will occupy 2 octets.  The unit of read or
   write speed is denoted as MB per second. Example:</t>
          <figure anchor="fig-storage-raw-metric">
            <name>An Example for Storage Raw Metrics</name>
            <artwork><![CDATA[
Basic fields:
      Metric type: “storage type_SSD”
      Format: integer
      Unit: GB
      Bits occupation: 2 octets
Source:
      nominal
Statistics:
      cur
]]></artwork>
          </figure>
        </section>
        <section anchor="network-raw-metrics">
          <name>Network Raw Metrics</name>
          <t>The metric type of network resources like bandwidth are named as
   "network_type: Bandwidth”. The unit is gigabits per second(Gb/s).
   Format is integer.  It will occupy 2 octets.  The unit of TXBytes and
   RXBytes is denoted as MB per second. Example:</t>
          <figure anchor="fig-network-raw-metric">
            <name>An Example for Network Raw Metrics</name>
            <artwork><![CDATA[
Basic fields:
      Metric type: “network type_Bandwidth”
      Format: integer
      Unit: Gb/s
      Bits occupation: 2 octets
Source:
      nominal
Statistics:
      cur
]]></artwork>
          </figure>
        </section>
        <section anchor="delay-raw-metrics">
          <name>Delay Raw Metrics</name>
          <t>Delay is a kind of synthesized metric which is influenced by
   computing, storage access, and network transmission.  It is named as
   “delay_raw”. Format should support integer and FP8.  Its unit is
   microsecond.  It will occupy 4 octets. Example:</t>
          <figure anchor="fig-delay-raw-metric">
            <name>An Example for Delay Raw Metrics</name>
            <artwork><![CDATA[
Basic fields:
      Metric type: “delay_raw”
      Format: integer, FP8
      Unit: Microsecond(us)
      Bits occupation: 4 octets
Source:
      aggregation
Statistics:
      max
]]></artwork>
          </figure>
        </section>
        <section anchor="considerations-on-the-sources-of-metrics-and-the-statistics">
          <name>Considerations on the Sources of Metrics and the Statistics</name>
          <t>The sources of L0 metrics can be nominal, directly measured, or aggregated.  Nominal L0 metrics are provided initially by resource
   providers.  Dynamic L0 metrics are measured and updated during service stage.  L0 metrics also support aggregation, in case that
   there are multiple service instances.</t>
          <t>The statistics of L0 metrics will follow the definition of Section 3.2 of <xref target="RFC9439"/>.</t>
        </section>
      </section>
      <section anchor="level-1-metric-representation">
        <name>Level 1 Metric Representation</name>
        <t>Normalized metrics in categories have physical meanings but they do not have unit.  They are numbers after some ways of abstraction, but they can represent their type, in case that in some use cases, some specific types of metrics require more attention.</t>
        <section anchor="normalized-compute-metrics">
          <name>Normalized Compute Metrics</name>
          <t>The metric type of normalized compute metrics is “compute_norm”,
   and its format is integer.  It has no unit.  It will occupy an octet. Example:</t>
          <figure anchor="fig-normalized-compute-metric">
            <name>An Example for Normalized Compute Metrics</name>
            <artwork><![CDATA[
Basic fields:
      Metric type: “compute_norm”
      Format: integer
      Bits occupation: an octet
      Score: 1
Source:
      normalization
]]></artwork>
          </figure>
        </section>
        <section anchor="normalized-storage-metrics">
          <name>Normalized Storage Metrics</name>
          <t>The metric type of normalized compute metrics is “storage_norm”, and its format is integer.  It has no unit.  It will occupy a octet. Example:</t>
          <figure anchor="fig-normalized-storage-metric">
            <name>An Example for Normalized Storage Metrics</name>
            <artwork><![CDATA[
Basic fields:
      Metric type: “storage_norm”
      Format: integer
      Bits occupation: an octet
      Score: 1
Source:
      normalization
]]></artwork>
          </figure>
        </section>
        <section anchor="normalized-network-metrics">
          <name>Normalized Network Metrics</name>
          <t>The metric type of normalized compute metrics is “network_norm”, and its format is integer.  It has no unit.  It will occupy a octet. Example:</t>
          <figure anchor="fig-normalized-network-metric">
            <name>An Example for Normalized Network Metrics</name>
            <artwork><![CDATA[
Basic fields:
      Metric type: “network_norm”
      Format: integer
      Bits occupation: an octet
      Score: 1
Source:
      normalization
]]></artwork>
          </figure>
        </section>
        <section anchor="normalized-delay">
          <name>Normalized Delay</name>
          <t>The metric type of normalized compute metrics is “delay_norm”, and its format is integer.  It has no unit.  It will occupy a octet. Example:</t>
          <figure anchor="fig-normalized-metric">
            <name>An Example for Normalized Delay Metrics</name>
            <artwork><![CDATA[
Basic fields:
      Metric type: “delay_norm”
      Format: integer
      Bits occupation: an octet
      Score: 1
Source:
      normalization
]]></artwork>
          </figure>
        </section>
        <section anchor="considerations-on-the-sources-of-metrics-and-the-statistics-1">
          <name>Considerations on the Sources of Metrics and the Statistics</name>
          <t>The sources of L1 metrics is normalized. Based on L0 metrics, service providers design their own algorithms to normalize metrics.  For example, assigning different cost values to each raw metric and do summation.  L1 metric do not need further statistical values.</t>
        </section>
      </section>
      <section anchor="level-2-metric-representation">
        <name>Level 2 Metric Representation</name>
        <t>A fully normalized metric is a single value which does not have any physical meaning or unit.  Each provider may have its own methods to derive the value, but all providers must follow the definition in this section to represent the fully normalized value.</t>
        <t>Metric type is “norm_fi”. The format of the value is non-negative integer.  It has no unit.  It will occupy a octet. Example:</t>
        <figure anchor="fig-level-2-metric">
          <name>An Example for Fully Normalized Metric</name>
          <artwork><![CDATA[
Basic fields:
      Metric type: “norm_fi”
      Format: non-negative integer
      Bits occupation: an octet
      Score: 1
Source:
      normalization
]]></artwork>
        </figure>
        <t>The fully normalized value also supports aggregation when there are multiple service instances providing these fully normalized values. When providing fully normalized values, service instances do not need to do further statistics.</t>
      </section>
    </section>
    <section anchor="comparison-of-three-layers-of-metric">
      <name>Comparison of three layers of metric</name>
      <t>From L0 to L1 to L2, the computing metric is consolidated. Different level of abstraction can meet the requirements from different services. Table 1 shows the comparison among metric levels.</t>
      <table anchor="comparison">
        <name>Comparison among Metrics Levels</name>
        <thead>
          <tr>
            <th align="center">Level</th>
            <th align="left">Encoding Complexity</th>
            <th align="left">Extensibility</th>
            <th align="left">Stability</th>
            <th align="left">Accuracy</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="center">Level 0</td>
            <td align="left">Complicated</td>
            <td align="left">Bad</td>
            <td align="left">Bad</td>
            <td align="left">Good</td>
          </tr>
          <tr>
            <td align="center">Level 1</td>
            <td align="left">Medium</td>
            <td align="left">Medium</td>
            <td align="left">Medium</td>
            <td align="left">Medium</td>
          </tr>
          <tr>
            <td align="center">Level 2</td>
            <td align="left">Simple</td>
            <td align="left">Good</td>
            <td align="left">Good</td>
            <td align="left">Medium</td>
          </tr>
        </tbody>
      </table>
      <t>Since Level 0 metrics are raw metrics, therefore, different services may have their own metrics, resulting in hundreds or thousands of metrics in total, this brings huge complexity in protocol encoding and standardization. Therefore, this kind of metrics are always used in customized IT systems case by case. In Level 1 metrics, metrics are categorized into several categories and each category is normalized into a value, therefore they can be encoded into the protocol and standardized. Regarding the Level 2 metrics, all the metrics are normalized into one single metric, it is easier to be encoded in protocol and standardized. Therefore, from the encoding complexity aspect, Level 2 and Level 1 metrics are suggested.</t>
      <t>Similarly, when considering extensibility, new services can define their own new L0 metrics, which requires protocol to be extended as needed. Too many metrics type can create a lot of overhead to the protocol resulting in a bad extensibility of the protocol. Level 1 introduce only several metrics categories, which is acceptable for protocol extension. Level 2 metric only need one single metric, so it brings least burden to the protocol. Therefore, from the extensibility aspect, Level 2 and Level 1 metrics are suggested.</t>
      <t>Regarding Stability, new Level 0 raw metrics may require new extension in protocol, which brings unstable format for protocol, therefore, this document does not recommend to standardize Level 0 metrics in protocol. Level 1 metrics request only few categories, and Level 2 Metric only introduce one metric to the protocol, so they are preferred from the stability aspect.</t>
      <t>In conclusion, for computing-aware traffic steering, it is recommended to use the L2 metric due to its simplicity. If advanced scheduling is needed, L1 metric can be used. L2 metrics are the most comprehensive and dynamic, therefore transferring them to network devices is discouraged due to their high overhead.</t>
      <t>Editor notes: this draft can be updated according to the discussion of metric definition in CATS WG.</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 anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="I-D.ietf-cats-framework">
          <front>
            <title>A Framework for Computing-Aware Traffic Steering (CATS)</title>
            <author fullname="Cheng Li" initials="C." surname="Li">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Zongpeng Du" initials="Z." surname="Du">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
              <organization>Telefonica</organization>
            </author>
            <author fullname="John Drake" initials="J." surname="Drake">
              <organization>Juniper Networks, Inc.</organization>
            </author>
            <date day="17" month="October" year="2024"/>
            <abstract>
              <t>   This document describes a framework for Computing-Aware Traffic
   Steering (CATS).  Particularly, the document identifies a set of CATS
   components, describes their interactions, and exemplifies the
   workflow of the control and data planes.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-cats-framework-04"/>
        </reference>
        <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>
        <reference anchor="I-D.ietf-cats-usecases-requirements">
          <front>
            <title>Computing-Aware Traffic Steering (CATS) Problem Statement, Use Cases, and Requirements</title>
            <author fullname="Kehan Yao" initials="K." surname="Yao">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
              <organization>Telefonica</organization>
            </author>
            <author fullname="Hang Shi" initials="H." surname="Shi">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Shuai Zhang" initials="S." surname="Zhang">
              <organization>China Unicom</organization>
            </author>
            <author fullname="Qing An" initials="Q." surname="An">
              <organization>Alibaba Group</organization>
            </author>
            <date day="21" month="October" year="2024"/>
            <abstract>
              <t>   Distributed computing is a tool that service providers can use to
   achieve better service response time and optimized energy
   consumption.  In such a distributed computing environment, providing
   services by utilizing computing resources hosted in various computing
   facilities aids support of services such as computationally intensive
   and delay sensitive services.  Ideally, compute services are balanced
   across servers and network resources to enable higher throughput and
   lower response times.  To achieve this, the choice of server and
   network resources should consider metrics that are oriented towards
   compute capabilities and resources instead of simply dispatching the
   service requests in a static way or optimizing solely on connectivity
   metrics.  The process of selecting servers or service instance
   locations, and of directing traffic to them on chosen network
   resources is called "Computing-Aware Traffic Steering" (CATS).

   This document provides the problem statement and the typical
   scenarios for CATS, which shows the necessity of considering more
   factors when steering traffic to the appropriate computing resource
   to best meet the customer's expectations and deliver the requested
   service.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-cats-usecases-requirements-04"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="performance-metrics" target="https://www.iana.org/assignments/performance-metrics/performance-metrics.xhtml">
          <front>
            <title>performance-metrics</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="DMTF" target="https://www.dmtf.org/">
          <front>
            <title>DMTF</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="I-D.du-cats-computing-modeling-description">
          <front>
            <title>Computing Information Description in Computing-Aware Traffic Steering</title>
            <author fullname="Zongpeng Du" initials="Z." surname="Du">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Kehan Yao" initials="K." surname="Yao">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Cheng Li" initials="C." surname="Li">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Daniel Huang" initials="D." surname="Huang">
              <organization>ZTE</organization>
            </author>
            <author fullname="Zhihua Fu" initials="Z." surname="Fu">
              <organization>New H3C Technologies</organization>
            </author>
            <date day="6" month="July" year="2024"/>
            <abstract>
              <t>   This document describes the considerations and requirements of the
   computing information that needs to be notified into the network in
   Computing-Aware Traffic Steering (CATS).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-du-cats-computing-modeling-description-03"/>
        </reference>
        <reference anchor="RFC9439">
          <front>
            <title>Application-Layer Traffic Optimization (ALTO) Performance Cost Metrics</title>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <author fullname="Y. Yang" initials="Y." surname="Yang"/>
            <author fullname="Y. Lee" initials="Y." surname="Lee"/>
            <author fullname="D. Dhody" initials="D." surname="Dhody"/>
            <author fullname="S. Randriamasy" initials="S." surname="Randriamasy"/>
            <author fullname="L. Contreras" initials="L." surname="Contreras"/>
            <date month="August" year="2023"/>
            <abstract>
              <t>The cost metric is a basic concept in Application-Layer Traffic
Optimization (ALTO), and different applications may use different
types of cost metrics. Since the ALTO base protocol (RFC 7285)
defines only a single cost metric (namely, the generic "routingcost"
metric), if an application wants to issue a cost map or an endpoint
cost request in order to identify a resource provider that offers
better performance metrics (e.g., lower delay or loss rate), the base
protocol does not define the cost metric to be used.</t>
              <t>This document addresses this issue by extending the specification to
provide a variety of network performance metrics, including network
delay, delay variation (a.k.a. jitter), packet loss rate, hop count,
and bandwidth.</t>
              <t>There are multiple sources (e.g., estimations based on measurements
or a Service Level Agreement) available for deriving a performance
metric. This document introduces an additional "cost-context" field
to the ALTO "cost-type" field to convey the source of a performance
metric.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9439"/>
          <seriesInfo name="DOI" value="10.17487/RFC9439"/>
        </reference>
        <reference anchor="I-D.rcr-opsawg-operational-compute-metrics">
          <front>
            <title>Joint Exposure of Network and Compute Information for Infrastructure-Aware Service Deployment</title>
            <author fullname="Sabine Randriamasy" initials="S." surname="Randriamasy">
              <organization>Nokia Bell Labs</organization>
            </author>
            <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
              <organization>Telefonica</organization>
            </author>
            <author fullname="Jordi Ros-Giralt" initials="J." surname="Ros-Giralt">
              <organization>Qualcomm Europe, Inc.</organization>
            </author>
            <author fullname="Roland Schott" initials="R." surname="Schott">
              <organization>Deutsche Telekom</organization>
            </author>
            <date day="21" month="October" year="2024"/>
            <abstract>
              <t>   Service providers are starting to deploy computing capabilities
   across the network for hosting applications such as distributed AI
   workloads, AR/VR, vehicle networks, and IoT, among others.  In this
   network-compute environment, knowing information about the
   availability and state of the underlying communication and compute
   resources is necessary to determine both the proper deployment
   location of the applications and the most suitable servers on which
   to run them.  Further, this information is used by numerous use cases
   with different interpretations.  This document proposes an initial
   approach towards a common exposure scheme for metrics reflecting
   compute and communication capabilities.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-rcr-opsawg-operational-compute-metrics-08"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
/hv9bzIznr1N/g+1pphyt0sAAA==

-->

</rfc>
