<?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-ietf-cats-framework-08" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.1 -->
  <front>
    <title abbrev="CATS Framework">A Framework for Computing-Aware Traffic Steering (CATS)</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-cats-framework-08"/>
    <author initials="C." surname="Li" fullname="Cheng Li" role="editor">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>c.l@huawei.com</email>
      </address>
    </author>
    <author initials="Z." surname="Du" fullname="Zongpeng Du">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>duzongpeng@chinamobile.com</email>
      </address>
    </author>
    <author fullname="Mohamed Boucadair" role="editor">
      <organization>Orange</organization>
      <address>
        <postal>
          <country>France</country>
        </postal>
        <email>mohamed.boucadair@orange.com</email>
      </address>
    </author>
    <author fullname="Luis M. Contreras">
      <organization>Telefonica</organization>
      <address>
        <postal>
          <country>Spain</country>
        </postal>
        <email>luismiguel.contrerasmurillo@telefonica.com</email>
      </address>
    </author>
    <author initials="J." surname="Drake" fullname="John E Drake">
      <organization>Independent</organization>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>je_drake@yahoo.com</email>
      </address>
    </author>
    <date year="2025" month="June" day="11"/>
    <area>Routing area</area>
    <workgroup>cats</workgroup>
    <keyword>Computing Computing-Aware Traffic Steering</keyword>
    <keyword>User Experience</keyword>
    <keyword>Collaborative Networking</keyword>
    <keyword>Service optimization</keyword>
    <abstract>
      <?line 110?>

<t>This document describes a framework for Computing-Aware Traffic Steering (CATS). Specifically, the document identifies a set of CATS components, describes their interactions, and provides illustrative workflows of the control and data planes.</t>
    </abstract>
  </front>
  <middle>
    <?line 114?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Computing service architectures have evolved from single service site to multiple, sometimes collaborative, service sites to address various issues such as long response times or suboptimal utilization of service and network resources (e.g., resource under-utilization or exhaustion).</t>
      <t>The underlying networking infrastructures that include computing resources usually provide relatively static service dispatching, e.g., the selection of the service instances for a request. In such infrastructures, service-specific traffic is often directed to the closest service site from a routing perspective without considering the actual network state (e.g., traffic congestion conditions) or the service site state.</t>
      <t>As described in <xref target="I-D.ietf-cats-usecases-requirements"/>, traffic steering that takes into account computing resource metrics would benefit several services, including latency-sensitive services such as immersive services that rely upon the use of augmented reality or virtual reality (AR/VR) techniques. This document provides an architectural framework that aims at facilitating the making of compute- and network-aware traffic steering decisions in networking environments where computing service resources are deployed.</t>
      <t>The Computing-Aware Traffic Steering (CATS) framework assumes that there might be multiple service instances that are providing one given service, which are running in one or more service sites. Each of these service instances can be accessed via a service contact instance, which is a client-facing service function instance. A single service site may host one or multiple service contact instances. A single service site may have limited computing resources available at a given time, whereas the various service sites may experience different resource availability issues over time. Therefore, steering traffic among different service sites can address the issues of lacking resources in a specific service site.</t>
      <t>Steering in CATS is about selecting the appropriate service contact instance that will service a request according to a set of network and computing metrics. This selection may not necessarily reveal the actual service instance that will be invoked, e.g., in hierarchical or recursive contexts. Therefore, the metrics of the service contact instance may be the aggregated metrics from multiple service instances.</t>
      <t>The CATS framework is an overlay framework for the selection of the suitable service contact instance(s) from a set of candidates. The exact characterization of 'suitable' is determined by a combination of networking and computing metrics.</t>
      <t>Furthermore, this document describes a workflow of the main CATS procedures in <xref target="sec-cats-workflow"/>, which are executed in both the control and data planes.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>This document makes use of the following terms:</t>
      <dl>
        <dt>Client:</dt>
        <dd>
          <t>An endpoint that is connected to a service provider network.</t>
        </dd>
        <dt>Flow:</dt>
        <dd>
          <t>A flow is identified by the 5-tuple transport coordinates (source address and destination address, source and destination port numbers, and protocol).</t>
        </dd>
        <dt>Computing-Aware Traffic Steering (CATS):</dt>
        <dd>
          <t>A traffic engineering approach <xref target="RFC9522"/> that takes into account the dynamic nature of computing resources (e.g., compute and storage) and network state to optimize service-specific traffic forwarding towards a given service contact instance. Various relevant metrics may be used to enable such computing-aware traffic steering policies.</t>
        </dd>
        <dt>Metric:</dt>
        <dd>
          <t>A piece of information that provides suitable input to a selection mechanism to determine a CATS egress node.</t>
        </dd>
        <dt>Computing metrics:</dt>
        <dd>
          <t>Computing metrics are the metrics that come specifically from the computing side of the system as distinct from other metrics that may be used in a CATS system, such as the metrics from network side.</t>
        </dd>
        <dt>Service:</dt>
        <dd>
          <t>An offering that is made available by a service provider by orchestrating a set of resources (networking, compute, storage, etc.).</t>
        </dd>
        <dt/>
        <dd>
          <t>Which and how these resources are used is part of the service logic which is internal to the service provider. For example, these resources may be:
</t>
          <ul spacing="normal">
            <li>
              <t>Exposed by one or multiple processes.</t>
            </li>
            <li>
              <t>Provided by virtual instances, physical, or a combination thereof.</t>
            </li>
            <li>
              <t>Hosted within the same or distinct nodes.</t>
            </li>
            <li>
              <t>Hosted within the same or multiple service sites.</t>
            </li>
            <li>
              <t>Chained to provide a service using a variety of means.</t>
            </li>
          </ul>
        </dd>
        <dt/>
        <dd>
          <t>How a service is structured is out of the scope of CATS.</t>
        </dd>
        <dt/>
        <dd>
          <t>The same service can be provided in many locations; each of them constitutes a service instance.</t>
        </dd>
        <dt>Computing Service:</dt>
        <dd>
          <t>An offering is made available by a service provider by orchestrating a set of computing resources.</t>
        </dd>
        <dt>CATS Service ID (CS-ID):</dt>
        <dd>
          <t>An identifier representing a service, which the clients use to access it. See <xref target="cats-ids"/>.</t>
        </dd>
        <dt>Service instance:</dt>
        <dd>
          <t>An instance of running resources according to a given service logic.</t>
        </dd>
        <dt/>
        <dd>
          <t>Many such instances can be enabled by a service provider. Instances that adhere to the same service logic provide the same service.</t>
        </dd>
        <dt/>
        <dd>
          <t>An instance is running in a service site. Clients' requests are serviced by one or more of these instances.</t>
        </dd>
        <dt>Service site:</dt>
        <dd>
          <t>A location that hosts the resources that are required to offer a service.</t>
        </dd>
        <dt/>
        <dd>
          <t>A service site may be a node or a set of nodes.</t>
        </dd>
        <dt/>
        <dd>
          <t>A CATS-serviced site is a service site that is connected to a CATS-Forwarder.</t>
        </dd>
        <dt>Service contact instance:</dt>
        <dd>
          <t>A client-facing service function instance that is responsible for receiving requests in the context of a given service.</t>
        </dd>
        <dt/>
        <dd>
          <t>A service contact instance can handle one or more service instances.</t>
        </dd>
        <dt/>
        <dd>
          <t>Steering beyond a service contact instance is hidden to both clients and CATS components.</t>
        </dd>
        <dt/>
        <dd>
          <t>A service request is processed according to the service logic (e.g., handle locally or solicit backend resources).</t>
        </dd>
        <dt/>
        <dd>
          <t>A service contact instance is reachable via at least one Egress CATS-Forwarder.</t>
        </dd>
        <dt/>
        <dd>
          <t>A service can be accessed via multiple service contact instances running at the same or different locations (service sites).</t>
        </dd>
        <dt/>
        <dd>
          <t>A service contact instance may dispatch service requests to one or more service instances (e.g., a service contact instance that behaves as a service load-balancer).</t>
        </dd>
        <dt>CATS Service Contact Instance ID (CSCI-ID):</dt>
        <dd>
          <t>An identifier of a specific service contact instance. See <xref target="cats-ids"/>.</t>
        </dd>
        <dt>Service request:</dt>
        <dd>
          <t>A request to access or invoke a specific service. Such a request is steered to a service contact instance via CATS-Forwarders.</t>
        </dd>
        <dt/>
        <dd>
          <t>A service request is placed using service-specific protocols.</t>
        </dd>
        <dt/>
        <dd>
          <t>Service requests are not explicitly sent by clients to CATS-Forwarders.</t>
        </dd>
        <dt>CATS-Forwarder:</dt>
        <dd>
          <t>A network entity that steers traffic specific to a service request towards a corresponding yet selected service contact instance according to provisioned forwarding decisions. These decisions are supplied by a C-PS, which may or may not be on the CATS-Forwarder.</t>
        </dd>
        <dt/>
        <dd>
          <t>A CATS-Forwarder may behave as Ingress or Egress CATS-Forwarder.</t>
        </dd>
        <dt>Ingress CATS-Forwarder:</dt>
        <dd>
          <t>An entity that steers service-specific traffic along a CATS-computed path that leads to an Egress CATS-Forwarder that connects to the most suitable service site that host the service contact instance selected to satisfy the initial service request.</t>
        </dd>
        <dt>Egress CATS-Forwarder:</dt>
        <dd>
          <t>An entity that is located at the end of a CATS-computed path and which connects to a CATS-serviced site.</t>
        </dd>
        <dt>CATS Path Selector (C-PS):</dt>
        <dd>
          <t>A functional entity that selects paths towards service locations and instances and which accommodates the requirements of service requests. Such a path selection engine takes into account the service and network status information. See <xref target="sec-cps"/>.</t>
        </dd>
        <dt>CATS Service Metric Agent (C-SMA):</dt>
        <dd>
          <t>A functional entity that is responsible for collecting service capabilities and status, and for reporting them to a CATS Path Selector (C-PS). See <xref target="sec-csma"/>.</t>
        </dd>
        <dt>CATS Network Metric Agent (C-NMA):</dt>
        <dd>
          <t>A functional entity that is responsible for collecting network capabilities and status, and for reporting them to a C-PS. See <xref target="sec-cnma"/>.</t>
        </dd>
        <dt>CATS Traffic Classifier (C-TC):</dt>
        <dd>
          <t>A functional entity that is responsible for determining which packets belong to a traffic flow for a specific service request. It is also responsible for forwarding such packets along a C-PS computed path that leads to the relevant service contact instance. See <xref target="sec-ctc"/>.</t>
        </dd>
      </dl>
    </section>
    <section anchor="Framework-and-concepts">
      <name>CATS Framework and Components</name>
      <section anchor="assumptions">
        <name>Assumptions</name>
        <t>CATS assumes that there are multiple service instances running on different service sites, which provide a given service that is represented by the same service identifier (see <xref target="cats-ids"/>). However, CATS does not make any assumption about these instances other than they are reachable via one or multiple service contact instances.</t>
      </section>
      <section anchor="cats-ids">
        <name>CATS Identifiers</name>
        <t>CATS uses the following identifiers:</t>
        <dl>
          <dt>CATS Service ID (CS-ID):</dt>
          <dd>
            <t>An identifier representing a service, which the clients use to access it. Such an ID identifies all the instances of a given service, regardless of their location.</t>
          </dd>
          <dt/>
          <dd>
            <t>The CS-ID is independent of which service contact instance serves the service request.</t>
          </dd>
          <dt/>
          <dd>
            <t>Service requests are spread over the service contact instances that can accommodate them, considering the location of the initiator of the service request and the availability (in terms of resource/traffic load, for example) of the service instances resource-wise among other considerations like traffic congestion conditions.</t>
          </dd>
          <dt>CATS Service Contact Instance ID (CSCI-ID):</dt>
          <dd>
            <t>An identifier of a specific service contact instance.</t>
          </dd>
        </dl>
      </section>
      <section anchor="sec-cats-framework">
        <name>Framework Overview</name>
        <t>A high-level view of the CATS framework, without expanding the functional entities in the network, is illustrated in <xref target="fig-cats-fw"/>.</t>
        <figure anchor="fig-cats-fw">
          <name>Main CATS Interactions</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="384" width="488" viewBox="0 0 488 384" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,96" fill="none" stroke="black"/>
                <path d="M 8,160 L 8,192" fill="none" stroke="black"/>
                <path d="M 288,32 L 288,96" fill="none" stroke="black"/>
                <path d="M 288,160 L 288,192" fill="none" stroke="black"/>
                <path d="M 312,32 L 312,336" fill="none" stroke="black"/>
                <path d="M 392,32 L 392,96" fill="none" stroke="black"/>
                <path d="M 392,160 L 392,208" fill="none" stroke="black"/>
                <path d="M 392,272 L 392,320" fill="none" stroke="black"/>
                <path d="M 408,176 L 408,240" fill="none" stroke="black"/>
                <path d="M 408,288 L 408,336" fill="none" stroke="black"/>
                <path d="M 424,96 L 424,152" fill="none" stroke="black"/>
                <path d="M 464,32 L 464,96" fill="none" stroke="black"/>
                <path d="M 480,176 L 480,240" fill="none" stroke="black"/>
                <path d="M 480,288 L 480,336" fill="none" stroke="black"/>
                <path d="M 8,32 L 288,32" fill="none" stroke="black"/>
                <path d="M 392,32 L 464,32" fill="none" stroke="black"/>
                <path d="M 8,64 L 288,64" fill="none" stroke="black"/>
                <path d="M 320,62 L 384,62" fill="none" stroke="black"/>
                <path d="M 320,66 L 384,66" fill="none" stroke="black"/>
                <path d="M 8,96 L 288,96" fill="none" stroke="black"/>
                <path d="M 392,96 L 464,96" fill="none" stroke="black"/>
                <path d="M 8,160 L 288,160" fill="none" stroke="black"/>
                <path d="M 392,160 L 464,160" fill="none" stroke="black"/>
                <path d="M 408,176 L 480,176" fill="none" stroke="black"/>
                <path d="M 8,192 L 288,192" fill="none" stroke="black"/>
                <path d="M 320,190 L 384,190" fill="none" stroke="black"/>
                <path d="M 320,194 L 384,194" fill="none" stroke="black"/>
                <path d="M 408,240 L 480,240" fill="none" stroke="black"/>
                <path d="M 392,272 L 464,272" fill="none" stroke="black"/>
                <path d="M 408,288 L 480,288" fill="none" stroke="black"/>
                <path d="M 408,336 L 480,336" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="392,192 380,186.4 380,197.6" fill="black" transform="rotate(0,384,192)"/>
                <polygon class="arrowhead" points="392,64 380,58.4 380,69.6" fill="black" transform="rotate(0,384,64)"/>
                <polygon class="arrowhead" points="328,192 316,186.4 316,197.6" fill="black" transform="rotate(180,320,192)"/>
                <polygon class="arrowhead" points="328,64 316,58.4 316,69.6" fill="black" transform="rotate(180,320,64)"/>
                <g class="text">
                  <text x="124" y="52">Management</text>
                  <text x="192" y="52">Plane</text>
                  <text x="424" y="68">C-SMA</text>
                  <text x="128" y="84">Control</text>
                  <text x="184" y="84">Plane</text>
                  <text x="140" y="116">/\</text>
                  <text x="140" y="132">||</text>
                  <text x="140" y="148">\/</text>
                  <text x="116" y="180">Data</text>
                  <text x="160" y="180">Plane</text>
                  <text x="440" y="196">Service</text>
                  <text x="400" y="212">-</text>
                  <text x="440" y="212">Contact</text>
                  <text x="444" y="228">Instance</text>
                  <text x="448" y="260">|</text>
                  <text x="440" y="308">Service</text>
                  <text x="400" y="324">-</text>
                  <text x="444" y="324">Instance</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
   +----------------------------------+  |         +--------+
   |         Management Plane         |  |         |        |
   +----------------------------------+  |<=======>| C-SMA  |
   |           Control Plane          |  |         |        |
   +----------------------------------+  |         +---+----+
                   /\                    |             |
                   ||                    |             |
                   \/                    |             |
   +----------------------------------+  |         +--------+
   |           Data Plane             |  |         | +--------+
   +----------------------------------+  |<=======>| |Service |
                                         |         +-|Contact |
                                         |           |Instance|
                                         |           +--------+
                                         |                |
                                         |         +--------+
                                         |         | +--------+
                                         |         | |Service |
                                         |         +-|Instance|
                                         |           +--------+

]]></artwork>
          </artset>
        </figure>
        <t>For the sake of illustration, "Service Instance" is shown as a single box in <xref target="fig-cats-fw"/>. However,
this does not imply that a service instance is hosted in a single node. Whether  a service instance
is realized by invoking resources within a same node or by chaining resources exposed by several nodes
is deployment specific.</t>
        <t>The following planes are defined:</t>
        <ul spacing="normal">
          <li>
            <t>CATS Management Plane: Responsible for monitoring, configuring, and maintaining CATS network devices.</t>
          </li>
          <li>
            <t>CATS Control Plane: Responsible for scheduling services based on computing and network information. It is also responsible for making decisions about how packets should be forwarded by involved forwarding nodes and communicating such decisions to the CATS Data Plane for execution.</t>
          </li>
          <li>
            <t>CATS Data Plane: Responsible for computing-aware routing, including handling packets in the data path, such as packet forwarding.</t>
          </li>
        </ul>
        <t>Depending on implementation and deployment, these planes may consist of several functional elements/components, and the details will be described in the following sections.</t>
      </section>
      <section anchor="sec-cats-arch">
        <name>CATS Functional Components</name>
        <t>CATS nodes make forwarding decisions for a given service request that has been received from a client according to the capabilities and status information of both service contact instances and network. The main CATS functional elements and their interactions are shown in <xref target="fig-cats-components"/>.</t>
        <figure anchor="fig-cats-components">
          <name>CATS Functional Components</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="688" width="480" viewBox="0 0 480 688" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,48 L 8,80" fill="none" stroke="black"/>
                <path d="M 24,320 L 24,368" fill="none" stroke="black"/>
                <path d="M 40,80 L 40,128" fill="none" stroke="black"/>
                <path d="M 56,112 L 56,208" fill="none" stroke="black"/>
                <path d="M 64,48 L 64,80" fill="none" stroke="black"/>
                <path d="M 72,32 L 72,64" fill="none" stroke="black"/>
                <path d="M 72,464 L 72,528" fill="none" stroke="black"/>
                <path d="M 104,152 L 104,176" fill="none" stroke="black"/>
                <path d="M 104,368 L 104,440" fill="none" stroke="black"/>
                <path d="M 104,592 L 104,640" fill="none" stroke="black"/>
                <path d="M 160,320 L 160,368" fill="none" stroke="black"/>
                <path d="M 176,48 L 176,80" fill="none" stroke="black"/>
                <path d="M 176,464 L 176,552" fill="none" stroke="black"/>
                <path d="M 184,336 L 184,448" fill="none" stroke="black"/>
                <path d="M 192,112 L 192,208" fill="none" stroke="black"/>
                <path d="M 192,464 L 192,512" fill="none" stroke="black"/>
                <path d="M 192,592 L 192,640" fill="none" stroke="black"/>
                <path d="M 208,80 L 208,128" fill="none" stroke="black"/>
                <path d="M 208,576 L 208,624" fill="none" stroke="black"/>
                <path d="M 224,560 L 224,608" fill="none" stroke="black"/>
                <path d="M 232,48 L 232,80" fill="none" stroke="black"/>
                <path d="M 232,160 L 232,208" fill="none" stroke="black"/>
                <path d="M 248,32 L 248,64" fill="none" stroke="black"/>
                <path d="M 248,336 L 248,368" fill="none" stroke="black"/>
                <path d="M 264,128 L 264,152" fill="none" stroke="black"/>
                <path d="M 288,160 L 288,208" fill="none" stroke="black"/>
                <path d="M 296,320 L 296,400" fill="none" stroke="black"/>
                <path d="M 304,464 L 304,528" fill="none" stroke="black"/>
                <path d="M 312,112 L 312,208" fill="none" stroke="black"/>
                <path d="M 328,48 L 328,80" fill="none" stroke="black"/>
                <path d="M 328,576 L 328,624" fill="none" stroke="black"/>
                <path d="M 360,80 L 360,112" fill="none" stroke="black"/>
                <path d="M 360,400 L 360,440" fill="none" stroke="black"/>
                <path d="M 368,240 L 368,272" fill="none" stroke="black"/>
                <path d="M 384,48 L 384,80" fill="none" stroke="black"/>
                <path d="M 400,32 L 400,64" fill="none" stroke="black"/>
                <path d="M 408,464 L 408,528" fill="none" stroke="black"/>
                <path d="M 416,576 L 416,624" fill="none" stroke="black"/>
                <path d="M 424,464 L 424,512" fill="none" stroke="black"/>
                <path d="M 432,240 L 432,272" fill="none" stroke="black"/>
                <path d="M 432,320 L 432,400" fill="none" stroke="black"/>
                <path d="M 432,560 L 432,608" fill="none" stroke="black"/>
                <path d="M 448,112 L 448,208" fill="none" stroke="black"/>
                <path d="M 24,32 L 72,32" fill="none" stroke="black"/>
                <path d="M 192,32 L 248,32" fill="none" stroke="black"/>
                <path d="M 344,32 L 400,32" fill="none" stroke="black"/>
                <path d="M 8,48 L 56,48" fill="none" stroke="black"/>
                <path d="M 176,48 L 232,48" fill="none" stroke="black"/>
                <path d="M 328,48 L 384,48" fill="none" stroke="black"/>
                <path d="M 8,80 L 56,80" fill="none" stroke="black"/>
                <path d="M 176,80 L 232,80" fill="none" stroke="black"/>
                <path d="M 328,80 L 384,80" fill="none" stroke="black"/>
                <path d="M 56,112 L 192,112" fill="none" stroke="black"/>
                <path d="M 312,112 L 448,112" fill="none" stroke="black"/>
                <path d="M 40,128 L 56,128" fill="none" stroke="black"/>
                <path d="M 192,128 L 208,128" fill="none" stroke="black"/>
                <path d="M 264,128 L 312,128" fill="none" stroke="black"/>
                <path d="M 64,144 L 184,144" fill="none" stroke="black"/>
                <path d="M 320,144 L 440,144" fill="none" stroke="black"/>
                <path d="M 232,160 L 288,160" fill="none" stroke="black"/>
                <path d="M 104,176 L 184,176" fill="none" stroke="black"/>
                <path d="M 56,208 L 192,208" fill="none" stroke="black"/>
                <path d="M 232,208 L 288,208" fill="none" stroke="black"/>
                <path d="M 312,208 L 448,208" fill="none" stroke="black"/>
                <path d="M 368,240 L 432,240" fill="none" stroke="black"/>
                <path d="M 368,272 L 432,272" fill="none" stroke="black"/>
                <path d="M 24,320 L 160,320" fill="none" stroke="black"/>
                <path d="M 296,320 L 432,320" fill="none" stroke="black"/>
                <path d="M 184,336 L 248,336" fill="none" stroke="black"/>
                <path d="M 24,368 L 160,368" fill="none" stroke="black"/>
                <path d="M 184,368 L 248,368" fill="none" stroke="black"/>
                <path d="M 296,368 L 432,368" fill="none" stroke="black"/>
                <path d="M 296,400 L 432,400" fill="none" stroke="black"/>
                <path d="M 88,448 L 176,448" fill="none" stroke="black"/>
                <path d="M 320,448 L 408,448" fill="none" stroke="black"/>
                <path d="M 72,464 L 168,464" fill="none" stroke="black"/>
                <path d="M 304,464 L 400,464" fill="none" stroke="black"/>
                <path d="M 72,528 L 176,528" fill="none" stroke="black"/>
                <path d="M 304,528 L 408,528" fill="none" stroke="black"/>
                <path d="M 136,560 L 224,560" fill="none" stroke="black"/>
                <path d="M 344,560 L 432,560" fill="none" stroke="black"/>
                <path d="M 120,576 L 208,576" fill="none" stroke="black"/>
                <path d="M 328,576 L 416,576" fill="none" stroke="black"/>
                <path d="M 104,592 L 192,592" fill="none" stroke="black"/>
                <path d="M 328,624 L 416,624" fill="none" stroke="black"/>
                <path d="M 104,640 L 192,640" fill="none" stroke="black"/>
                <path d="M 56,48 C 64.83064,48 72,55.16936 72,64" fill="none" stroke="black"/>
                <path d="M 56,48 C 64.83064,48 72,40.83064 72,32" fill="none" stroke="black"/>
                <path d="M 56,80 C 64.83064,80 72,72.83064 72,64" fill="none" stroke="black"/>
                <path d="M 88,448 C 79.16936,448 72,455.16936 72,464" fill="none" stroke="black"/>
                <path d="M 176,448 C 184.83064,448 192,455.16936 192,464" fill="none" stroke="black"/>
                <path d="M 320,448 C 311.16936,448 304,455.16936 304,464" fill="none" stroke="black"/>
                <path d="M 408,448 C 416.83064,448 424,455.16936 424,464" fill="none" stroke="black"/>
                <path d="M 168,464 C 176.83064,464 184,456.83064 184,448" fill="none" stroke="black"/>
                <path d="M 400,464 C 408.83064,464 416,456.83064 416,448" fill="none" stroke="black"/>
                <g class="text">
                  <text x="36" y="68">client</text>
                  <text x="204" y="68">client</text>
                  <text x="240" y="68">-</text>
                  <text x="356" y="68">client</text>
                  <text x="392" y="68">-</text>
                  <text x="116" y="132">C-TC#1</text>
                  <text x="372" y="132">C-TC#2</text>
                  <text x="132" y="164">C-PS#1</text>
                  <text x="372" y="164">CATS-Forwarder</text>
                  <text x="440" y="164">4</text>
                  <text x="28" y="180">......</text>
                  <text x="212" y="180">....</text>
                  <text x="260" y="180">C-PS#2</text>
                  <text x="300" y="180">..</text>
                  <text x="464" y="180">...</text>
                  <text x="8" y="196">:</text>
                  <text x="116" y="196">CATS-Forwarder</text>
                  <text x="184" y="196">2</text>
                  <text x="472" y="196">.</text>
                  <text x="8" y="212">:</text>
                  <text x="472" y="212">:</text>
                  <text x="8" y="228">:</text>
                  <text x="472" y="228">:</text>
                  <text x="8" y="244">:</text>
                  <text x="472" y="244">:</text>
                  <text x="8" y="260">:</text>
                  <text x="244" y="260">Underlay</text>
                  <text x="400" y="260">C-NMA</text>
                  <text x="472" y="260">:</text>
                  <text x="8" y="276">:</text>
                  <text x="244" y="276">Infrastructure</text>
                  <text x="472" y="276">:</text>
                  <text x="8" y="292">:</text>
                  <text x="472" y="292">:</text>
                  <text x="8" y="308">:</text>
                  <text x="472" y="308">:</text>
                  <text x="8" y="324">:</text>
                  <text x="472" y="324">:</text>
                  <text x="8" y="340">:</text>
                  <text x="84" y="340">CATS-Forwarder</text>
                  <text x="152" y="340">1</text>
                  <text x="356" y="340">CATS-Forwarder</text>
                  <text x="424" y="340">3</text>
                  <text x="472" y="340">:</text>
                  <text x="12" y="356">:.</text>
                  <text x="172" y="356">..</text>
                  <text x="216" y="356">C-SMA#1</text>
                  <text x="268" y="356">....</text>
                  <text x="456" y="356">....:</text>
                  <text x="352" y="388">C-SMA#2</text>
                  <text x="120" y="484">Service</text>
                  <text x="352" y="484">Service</text>
                  <text x="120" y="500">Contact</text>
                  <text x="352" y="500">Contact</text>
                  <text x="124" y="516">Instance</text>
                  <text x="184" y="516">-</text>
                  <text x="356" y="516">Instance</text>
                  <text x="416" y="516">-</text>
                  <text x="384" y="548">|</text>
                  <text x="368" y="596">Service</text>
                  <text x="144" y="612">Service</text>
                  <text x="216" y="612">-</text>
                  <text x="372" y="612">Instance</text>
                  <text x="424" y="612">-</text>
                  <text x="148" y="628">Instance</text>
                  <text x="200" y="628">-</text>
                  <text x="104" y="660">Service</text>
                  <text x="156" y="660">Site</text>
                  <text x="184" y="660">1</text>
                  <text x="328" y="660">Service</text>
                  <text x="380" y="660">Site</text>
                  <text x="408" y="660">2</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
    +-----+              +------+           +------+
  +------+|            +------+ |         +------+ |
  |client|+            |client|-+         |client|-+
  +---+--+             +---+--+           +---+--+
      |                    |                  |
      | +----------------+ |            +-----+----------+
      '-+    C-TC#1      +-'      .-----+    C-TC#2      |
        |----------------|        |     |----------------|
        |     |C-PS#1    |    +------+  |CATS-Forwarder 4|
  ......|     +----------|....|C-PS#2|..|                |...
  :     |CATS-Forwarder 2|    |      |  |                |  .
  :     +----------------+    +------+  +----------------+  :
  :                                                         :
  :                                            +-------+    :
  :                         Underlay           | C-NMA |    :
  :                      Infrastructure        +-------+    :
  :                                                         :
  :                                                         :
  : +----------------+                +----------------+    :
  : |CATS-Forwarder 1|  +-------+     |CATS-Forwarder 3|    :
  :.|                |..|C-SMA#1|.... |                |....:
    +---------+------+  +-------+     +----------------+
              |         |             |   C-SMA#2      |
              |         |             +-------+--------+
              |         |                     |
              |         |                     |
           +------------+               +------------+
          +------------+ |             +------------+ |
          |  Service   | |             |  Service   | |
          |  Contact   | |             |  Contact   | |
          |  Instance  |-+             |  Instance  |-+
          +------------+               +------------+
                       |                         |
                  +----------+              +----------+
                +----------+ |            +----------+ |
              +----------+ | |            | Service  | |
              | Service  | |-+            | Instance |-+
              | Instance |-+              +----------+
              +----------+
           Service Site 1              Service Site 2
]]></artwork>
          </artset>
        </figure>
        <section anchor="sec-service-sites">
          <name>Service Sites, Services Instances, and Service Contact Instances</name>
          <t>Service sites are locations that host resources (including computing resources) that are required to offer a service.</t>
          <t>A compute service (e.g., for face recognition purposes or a game server) is identified by a CATS Service Identifier (CS-ID). The CS-ID does not need to be globally unique, but must be sufficiently unique to unambiguously identify the service at all of the components of a CATS system.</t>
          <t>A single service can be represented and accessed via several contact instances that run in same or different regions of a network.</t>
          <t>As service instances are accessed via a service contact instance, a client will not see the service instances but only the service contact instance.</t>
          <t><xref target="fig-cats-components"/> shows two CATS nodes ("CATS-Forwarder 1" and "CATS-Forwarder 3") that provide access to service contact instances.  These nodes behave as Egress CATS-Forwarders (<xref target="sec-ocr"/>).</t>
          <ul empty="true">
            <li>
              <t>Note: "Egress" is used here in reference to the direction of the service request placement.  The directionality is called to explicitly identify the exit node of the CATS infrastructure.</t>
            </li>
          </ul>
        </section>
        <section anchor="sec-csma">
          <name>CATS Service Metric Agent (C-SMA)</name>
          <t>The CATS Service Metric Agent (C-SMA) is a functional component that gathers information about service sites and server resources, as well as the status of the different service instances. A C-SMA may be co-located or located adjacent to a service contact instance, hosted by or adjacent to an Egress CATS-Forwarder (<xref target="sec-ocr"/>), etc.</t>
          <t><xref target="fig-cats-components"/> shows one C-SMA embedded in "CATS-Forwarder 3", and another C-SMA that is adjacent to "CATS-Forwarder 1".</t>
        </section>
        <section anchor="sec-cnma">
          <name>CATS Network Metric Agent (C-NMA)</name>
          <t>The CATS Network Metric Agent (C-NMA) is a functional component that gathers information about the state of the underlay network. The C-NMAs may be implemented as standalone components or may be hosted by other components, such as CATS-Forwarders or CATS Path Selectors (C-PS) (<xref target="sec-cps"/>).</t>
          <t>C-NMA is likely to leverage existing techniques (e.g., <xref target="RFC7471"/>, <xref target="RFC8570"/>, and <xref target="RFC8571"/>).</t>
          <t><xref target="fig-cats-components"/> shows a single, standalone C-NMA within the underlay network. There may be one or more C-NMAs for an underlay network.</t>
        </section>
        <section anchor="sec-cps">
          <name>CATS Path Selector (C-PS)</name>
          <t>The C-SMAs and C-NMAs share the collected information with CATS Path Selectors (C-PSes) that use such information to select the Egress CATS-Forwarders (and potentially the service contact instances) where to forward traffic for a given service request. C-PSes also determine the best paths (possibly using tunnels) to forward traffic, according to various criteria that include network state and traffic congestion conditions. The collected information is encoded into one or more metrics that feed the C-PS path selection logic. Such information also includes CS-ID and possibly CSCI-IDs.</t>
          <t>There might be one or more C-PSes used to select CATS paths in a CATS infrastructure.</t>
          <t>A C-PS can be integrated into CATS-Forwarders (e.g., "C-PS#1" in <xref target="fig-cats-components"/>) or may be deployed as a standalone component (e.g., "C-PS#2" in <xref target="fig-cats-components"/>). Generally, a standalone C-PS can be a functional component of a centralized controller (e.g., a Path Computation Element (PCE) <xref target="RFC4655"/>).</t>
          <t>Refer to <xref target="sec-met-dist"/> for a discussion on metric distribution (including, interaction with routing protocols).</t>
        </section>
        <section anchor="sec-ctc">
          <name>CATS Traffic Classifier (C-TC)</name>
          <t>The CATS Traffic Classifier (C-TC) is a functional component that is responsible for associating incoming packets from clients with service requests. CATS classifiers also ensure that packets that are bound to a specific service contact instance are all forwarded towards that same service contact instance, as instructed by a C-PS.</t>
          <t>CATS classifiers are typically hosted in CATS-Forwarders.</t>
        </section>
        <section anchor="sec-ocr">
          <name>CATS-Forwarders</name>
          <t>Ingress CATS-Forwarder are resposnible for steering service-specific traffic along a CATS-computed path that leads to an Egress CATS-
Forwarder. Egress CATS-Forwarders are the endpoints that behave as an egress for service requests that are forwarded over a CATS infrastructure. A service site that hosts service instances may be connected to one or more Egress CATS-Forwarders (e.g., multi-homing design). If a C-PS has selected a specific service contact instance and the C-TC has marked the traffic with the CSCI-ID related information, the Egress CATS-Forwarder then forwards traffic to the relevant service contact instance accordingly. In some cases, the choice of the service contact instance may be left open to the Egress CATS-Forwarder (i.e., traffic is marked only with the CS-ID). In such cases, the Egress CATS-Forwarder selects a service contact instance using its knowledge of service and network capabilities as well as the current load as observed by the CATS-Forwarder, among other considerations. In the absence of an explicit policy, an Egress CATS-Forwarder must make sure to forward all packets that pertain to a given service request towards the same service contact instance.</t>
          <t>Note that, depending on the design considerations and service requirements, per-service  contact instance computing-related metrics or aggregated per-site computing related metrics (and a combination thereof) can be used by a C-PS. Using aggregated per-site computing related metrics appears as a preferred option scalability-wise, but relies on Egress CATS-Forwarders that connect to various service contact instances to select the proper service contact instance. An Egress CATS-Forwarder may choose to aggregate the metrics from different sites as well. In this case, the Egress CATS-Forwarder will choose the best site by itself when the packets arrive at it.</t>
        </section>
        <section anchor="underlay-infrastructure">
          <name>Underlay Infrastructure</name>
          <t>The "underlay infrastructure" in <xref target="fig-cats-components"/> indicates an IP and/or MPLS network that is not necessarily CATS-aware. The CATS paths that are computed by a C-PS will be distributed among the CATS-Forwarders (<xref target="sec-ocr"/>), and will not affect the underlay nodes. Underlay nodes are typically P routers (<xref section="5.3.1" sectionFormat="of" target="RFC4026"/>).</t>
        </section>
      </section>
      <section anchor="deployment-considerations">
        <name>Deployment Considerations</name>
        <t>This document does not make any assumption about how the various CATS functional elements are implemented and deployed. Concretely, whether a CATS deployment follows a fully distributed design or relies upon a mix of centralized (e.g., a C-PS) and distributed CATS functions (e.g., CATS traffic classifiers) is deployment-specific and may reflect the preferences and policies of the (CATS) service provider.</t>
        <t>For example, in a centralized design, both the computing related metrics from the C-SMAs and the network metrics are collected by a (logically) centralized path computation logic (e.g., a PCE). In this case, the CATS computation logic may process incoming service requests to compute paths to service contact instances. More generally, the paths might be computed before the service request comes. Based on the metrics and computed paths, the C-PS can select the most appropriate path and then synchronize with CATS traffic classifiers (C-TCs).</t>
        <t>According to the method of distributing and collecting the computing related metrics, three deployment models can be considered for the deployment of the CATS framework:</t>
        <ul spacing="normal">
          <li>
            <dl>
              <dt><strong>Distributed model</strong>:</dt>
              <dd>
                <t>Computing metrics are distributed among network devices directly using distributed protocols without interactions with a centralized control plane. Service scheduling function is performed by the CATS-Forwarders in the distribution model, Therefore, the C-PS is integrated into an Ingress CATS-Forwarder.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt><strong>Centralized model</strong>:</dt>
              <dd>
                <t>Computing metrics are collected by a centralized control plane, and then the centralized control plane computes the forwarding path for service requests and syncs up with the Ingress CATS-Forwarder. In this model, C-PS is implemented in the centralized control plane.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt><strong>Hybrid model</strong>:</dt>
              <dd>
                <t>Is a combination of distribution and centralized models.</t>
              </dd>
              <dt/>
              <dd>
                <t>A part of computing metrics are distributed among involved network devices, and others may be collected by a centralized control plane. For example, some static information (e.g., capabilities information) can be distributed among network devices since they are quite stable (change infrequently). Frequent changing information (e.g., resource utilization) can be collected by a centralized control plane to avoid frequent flooding in the distributed control plane. Service scheduling function can be performed by a centralized control plane and/or the CATS-Forwarder. The entire or partial C-PS function may be implemented in the centralized control plane, depending on the specific implementation and deployment.</t>
              </dd>
            </dl>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="sec-cats-workflow">
      <name>CATS Framework Workflow</name>
      <t>The following subsections provide an overview of how the CATS workflow operates.</t>
      <section anchor="provisioning-of-cats-components">
        <name>Provisioning of CATS Components</name>
        <t>TBC: --detail required provisioning at CATS elements (booptsrapping, credentials of peer CATS nodes, services, optimization metrics per service, etc.)--</t>
      </section>
      <section anchor="service-announcement">
        <name>Service Announcement</name>
        <t>A service is associated with a unique identifier called a CS-ID. A CS-ID may be a network identifier, such as an IP address. The mapping of CS-IDs to network identifiers may be learned through a name resolution service (e.g., DNS <xref target="RFC1034"/>). Note that CATS framework does not assume nor preclude any specific name resolution service.</t>
      </section>
      <section anchor="sec-met-dist">
        <name>Metrics Distribution</name>
        <t>As described in <xref target="sec-cats-arch"/>, a C-SMA collects both computing-related capabilities and metrics, and associates them with a CS-ID that identifies the service. The C-SMA may aggregate the metrics for multiple service contact  instances, or maintain them separately or both.</t>
        <t>The C-SMA then advertises CS-IDs along with metrics to related C-PSes in the network. Depending on deployment choice, CS-IDs with metrics may be distributed in different ways.</t>
        <t>For example, in a distributed model, CS-IDs with metrics can be distributed from the C-SMA to an Egress CATS-Forwarder firstly and then be redistributed by the Egress CATS-Forwarder to related C-PSes that are integrated into Ingress CATS-Forwarders.</t>
        <t>In the centralized model, CS-IDs with metrics can be distributed from the C-SMA to a centralized control plane, for instance, a standalone C-PS.</t>
        <t>In the hybrid model, the metrics can be distributed to C-PSes in combination of distributed and centralized ways. The specific combination of metric distribution is an implementation choice, which is determined by the requirements of specific services.</t>
        <t>The Computing metrics include computing-related metrics and potentially other service-specific metrics like the number of end-users who access the service contact instance at any given time, etc.</t>
        <t>Computing metrics may change very frequently (see <xref target="I-D.ietf-cats-usecases-requirements"/> for a discussion). How frequently such information is distributed is to be determined as part of the specification of any communication protocol (including routing protocols) that may be used to distribute the information. Various options can be considered, such as (but not limited to) interval-based updates, threshold-triggered updates, or policy-based updates.</t>
        <t>Additionally, the C-NMA collects network-related capabilities and metrics. These may be collected and distributed by existing measurement protocols and/or routing protocols, although extensions to such protocols may be required to carry additional information (e.g., link latency). The C-NMA distributes the network metrics to the C-PSes so that they can use the combination of service and network metrics to determine the best Egress CATS-Forwarder to provide access to a service contact instance and invoke the compute function required by a service request. Similar to computing-related metrics, the network-related metrics can be distributed using distributed, centralized, or hybrid schemes. This document does not describe such details since this is deployment-specific.</t>
        <t>Network metrics may also change over time. Dynamic routing protocols may take advantage of some information or capabilities to prevent the network from being flooded with state change information (e.g., Partial Route Computation (PRC) of OSPFv3 <xref target="RFC5340"/>). C-NMAs should also be configured or instructed like C-SMAs to determine when and how often updates should be notified to the C-PSes.</t>
        <t><xref target="fig-cats-example-overlay"/> shows an example of how CATS metrics can be disseminated in the distributed model. There is a client attached to the network via "CATS-Forwarder 1". There are three service contact instances of the service with CS-ID "1": two service contact instances with CSCI-IDs "1" and "2", respectively, are located at "Service Site 2" attached via "CATS-Forwarder 2"; the third service contact instance is located at "Service Site 3" attached via "CATS-Forwarder 3" and with CSCI-ID "3". There is also a second service with CS-ID "2" with only one service contact instance located at "Service Site 3".</t>
        <t>In <xref target="fig-cats-example-overlay"/>, the C-SMA collocated with "CATS-Forwarder 2" distributes the computing metrics for both service contact instances (i.e., (CS-ID 1, CSCI-ID 1) and (CS-ID 1, CSCI-ID 2)). Note that this information may be aggregated into a single advertisement, but in this case, the metrics for each service contact instance are indicated separately. Similarly, the C-SMA agent located at "Service Site 3" advertises the computing metrics for the two services hosted by "Service Site 3".</t>
        <t>The computing metric advertisements are processed by the C-PS hosted by "CATS-Forwarder 1". The C-PS also processes network metric advertisements sent by the C-NMA. All metrics are used by the C-PS to select the most relevant path that leads to the Egress CATS-Forwarder according to the initial client's service request, the service that is requested ("CS-ID 1" or "CS-ID 2"), the state of the service contact instances as reported by the metrics, and the state of the network.</t>
        <figure anchor="fig-cats-example-overlay">
          <name>An Example of CATS Metric Dissemination in a Distributed Model</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="576" width="584" viewBox="0 0 584 576" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,224 L 8,256" fill="none" stroke="black"/>
                <path d="M 8,304 L 8,336" fill="none" stroke="black"/>
                <path d="M 48,264 L 48,296" fill="none" stroke="black"/>
                <path d="M 80,224 L 80,256" fill="none" stroke="black"/>
                <path d="M 184,304 L 184,336" fill="none" stroke="black"/>
                <path d="M 224,240 L 224,264" fill="none" stroke="black"/>
                <path d="M 224,280 L 224,384" fill="none" stroke="black"/>
                <path d="M 224,416 L 224,448" fill="none" stroke="black"/>
                <path d="M 240,256 L 240,288" fill="none" stroke="black"/>
                <path d="M 256,144 L 256,208" fill="none" stroke="black"/>
                <path d="M 304,256 L 304,288" fill="none" stroke="black"/>
                <path d="M 360,416 L 360,448" fill="none" stroke="black"/>
                <path d="M 384,416 L 384,448" fill="none" stroke="black"/>
                <path d="M 392,144 L 392,208" fill="none" stroke="black"/>
                <path d="M 408,240 L 408,384" fill="none" stroke="black"/>
                <path d="M 424,384 L 424,408" fill="none" stroke="black"/>
                <path d="M 424,456 L 424,480" fill="none" stroke="black"/>
                <path d="M 432,128 L 432,192" fill="none" stroke="black"/>
                <path d="M 448,416 L 448,448" fill="none" stroke="black"/>
                <path d="M 456,96 L 456,144" fill="none" stroke="black"/>
                <path d="M 456,176 L 456,224" fill="none" stroke="black"/>
                <path d="M 456,352 L 456,400" fill="none" stroke="black"/>
                <path d="M 456,464 L 456,496" fill="none" stroke="black"/>
                <path d="M 520,464 L 520,496" fill="none" stroke="black"/>
                <path d="M 536,96 L 536,144" fill="none" stroke="black"/>
                <path d="M 536,176 L 536,224" fill="none" stroke="black"/>
                <path d="M 536,352 L 536,400" fill="none" stroke="black"/>
                <path d="M 144,80 L 320,80" fill="none" stroke="black"/>
                <path d="M 456,96 L 536,96" fill="none" stroke="black"/>
                <path d="M 432,128 L 448,128" fill="none" stroke="black"/>
                <path d="M 256,144 L 392,144" fill="none" stroke="black"/>
                <path d="M 456,144 L 536,144" fill="none" stroke="black"/>
                <path d="M 400,160 L 424,160" fill="none" stroke="black"/>
                <path d="M 256,176 L 392,176" fill="none" stroke="black"/>
                <path d="M 456,176 L 536,176" fill="none" stroke="black"/>
                <path d="M 432,192 L 448,192" fill="none" stroke="black"/>
                <path d="M 256,208 L 392,208" fill="none" stroke="black"/>
                <path d="M 8,224 L 80,224" fill="none" stroke="black"/>
                <path d="M 456,224 L 536,224" fill="none" stroke="black"/>
                <path d="M 224,240 L 408,240" fill="none" stroke="black"/>
                <path d="M 8,256 L 80,256" fill="none" stroke="black"/>
                <path d="M 240,256 L 304,256" fill="none" stroke="black"/>
                <path d="M 160,272 L 232,272" fill="none" stroke="black"/>
                <path d="M 240,288 L 304,288" fill="none" stroke="black"/>
                <path d="M 8,304 L 184,304" fill="none" stroke="black"/>
                <path d="M 192,320 L 216,320" fill="none" stroke="black"/>
                <path d="M 8,336 L 184,336" fill="none" stroke="black"/>
                <path d="M 456,352 L 536,352" fill="none" stroke="black"/>
                <path d="M 224,384 L 408,384" fill="none" stroke="black"/>
                <path d="M 424,384 L 448,384" fill="none" stroke="black"/>
                <path d="M 464,400 L 536,400" fill="none" stroke="black"/>
                <path d="M 224,416 L 360,416" fill="none" stroke="black"/>
                <path d="M 384,416 L 440,416" fill="none" stroke="black"/>
                <path d="M 224,448 L 360,448" fill="none" stroke="black"/>
                <path d="M 384,448 L 440,448" fill="none" stroke="black"/>
                <path d="M 464,464 L 520,464" fill="none" stroke="black"/>
                <path d="M 424,480 L 448,480" fill="none" stroke="black"/>
                <path d="M 456,496 L 520,496" fill="none" stroke="black"/>
                <path d="M 144,512 L 392,512" fill="none" stroke="black"/>
                <path d="M 464,400 C 455.16936,400 448,407.16936 448,416" fill="none" stroke="black"/>
                <path d="M 440,416 C 448.83064,416 456,408.83064 456,400" fill="none" stroke="black"/>
                <path d="M 440,448 C 448.83064,448 456,455.16936 456,464" fill="none" stroke="black"/>
                <path d="M 464,464 C 455.16936,464 448,456.83064 448,448" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="168,272 156,266.4 156,277.6" fill="black" transform="rotate(180,160,272)"/>
                <polygon class="arrowhead" points="152,512 140,506.4 140,517.6" fill="black" transform="rotate(180,144,512)"/>
                <polygon class="arrowhead" points="152,80 140,74.4 140,85.6" fill="black" transform="rotate(180,144,80)"/>
                <g class="text">
                  <text x="104" y="36">Service</text>
                  <text x="160" y="36">CS-ID</text>
                  <text x="196" y="36">1,</text>
                  <text x="240" y="36">contact</text>
                  <text x="308" y="36">instance</text>
                  <text x="376" y="36">CSCI-ID</text>
                  <text x="416" y="36">1</text>
                  <text x="468" y="36">&lt;computing</text>
                  <text x="548" y="36">metrics&gt;</text>
                  <text x="104" y="52">Service</text>
                  <text x="160" y="52">CS-ID</text>
                  <text x="196" y="52">1,</text>
                  <text x="240" y="52">contact</text>
                  <text x="308" y="52">instance</text>
                  <text x="376" y="52">CSCI-ID</text>
                  <text x="416" y="52">2</text>
                  <text x="468" y="52">&lt;computing</text>
                  <text x="548" y="52">metrics&gt;</text>
                  <text x="136" y="84">:</text>
                  <text x="328" y="84">:</text>
                  <text x="136" y="100">:</text>
                  <text x="328" y="100">:</text>
                  <text x="136" y="116">:</text>
                  <text x="328" y="116">:</text>
                  <text x="480" y="116">CS-ID</text>
                  <text x="512" y="116">1</text>
                  <text x="136" y="132">:</text>
                  <text x="328" y="132">:</text>
                  <text x="488" y="132">CSCI-ID</text>
                  <text x="528" y="132">1</text>
                  <text x="136" y="148">:</text>
                  <text x="136" y="164">:</text>
                  <text x="312" y="164">C-SMA</text>
                  <text x="488" y="164">Service</text>
                  <text x="540" y="164">Site</text>
                  <text x="568" y="164">2</text>
                  <text x="136" y="180">:</text>
                  <text x="136" y="196">:</text>
                  <text x="316" y="196">CATS-Forwarder</text>
                  <text x="384" y="196">2</text>
                  <text x="480" y="196">CS-ID</text>
                  <text x="512" y="196">1</text>
                  <text x="136" y="212">:</text>
                  <text x="488" y="212">CSCI-ID</text>
                  <text x="528" y="212">2</text>
                  <text x="136" y="228">:</text>
                  <text x="336" y="228">|</text>
                  <text x="44" y="244">Client</text>
                  <text x="136" y="244">:</text>
                  <text x="184" y="244">Network</text>
                  <text x="136" y="260">:</text>
                  <text x="184" y="260">metrics</text>
                  <text x="136" y="276">:</text>
                  <text x="152" y="276">:</text>
                  <text x="272" y="276">C-NMA</text>
                  <text x="136" y="292">:</text>
                  <text x="152" y="292">:</text>
                  <text x="68" y="324">CATS-Forwarder</text>
                  <text x="156" y="324">1|C-PS</text>
                  <text x="316" y="340">Underlay</text>
                  <text x="136" y="356">:</text>
                  <text x="324" y="356">Infrastructure</text>
                  <text x="136" y="372">:</text>
                  <text x="480" y="372">CS-ID</text>
                  <text x="512" y="372">1</text>
                  <text x="136" y="388">:</text>
                  <text x="488" y="388">CSCI-ID</text>
                  <text x="528" y="388">3</text>
                  <text x="136" y="404">:</text>
                  <text x="304" y="404">|</text>
                  <text x="136" y="420">:</text>
                  <text x="136" y="436">:</text>
                  <text x="284" y="436">CATS-Forwarder</text>
                  <text x="352" y="436">3</text>
                  <text x="372" y="436">--</text>
                  <text x="416" y="436">C-SMA</text>
                  <text x="488" y="436">Service</text>
                  <text x="540" y="436">Site</text>
                  <text x="568" y="436">3</text>
                  <text x="136" y="452">:</text>
                  <text x="136" y="468">:</text>
                  <text x="400" y="468">:</text>
                  <text x="136" y="484">:</text>
                  <text x="400" y="484">:</text>
                  <text x="480" y="484">CS-ID</text>
                  <text x="512" y="484">2</text>
                  <text x="136" y="500">:</text>
                  <text x="400" y="500">:</text>
                  <text x="136" y="516">:</text>
                  <text x="400" y="516">:</text>
                  <text x="104" y="532">Service</text>
                  <text x="160" y="532">CS-ID</text>
                  <text x="196" y="532">1,</text>
                  <text x="240" y="532">contact</text>
                  <text x="308" y="532">instance</text>
                  <text x="376" y="532">CSCI-ID</text>
                  <text x="416" y="532">3</text>
                  <text x="468" y="532">&lt;computing</text>
                  <text x="548" y="532">metrics&gt;</text>
                  <text x="104" y="548">Service</text>
                  <text x="160" y="548">CS-ID</text>
                  <text x="196" y="548">2,</text>
                  <text x="252" y="548">&lt;computing</text>
                  <text x="332" y="548">metrics&gt;</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
          Service CS-ID 1, contact instance CSCI-ID 1 <computing metrics>
          Service CS-ID 1, contact instance CSCI-ID 2 <computing metrics>

                 :<----------------------:
                 :                       :               +---------+
                 :                       :               |CS-ID 1  |
                 :                       :            .--|CSCI-ID 1|
                 :              +----------------+    |  +---------+
                 :              |    C-SMA       |----|   Service Site 2
                 :              +----------------+    |  +---------+
                 :              |CATS-Forwarder 2|    '--|CS-ID 1  |
                 :              +----------------+       |CSCI-ID 2|
 +--------+      :                        |              +---------+
 | Client |      :  Network +----------------------+
 +--------+      :  metrics | +-------+            |
      |          : :<---------| C-NMA |            |
      |          : :        | +-------+            |
 +---------------------+    |                      |
 |CATS-Forwarder 1|C-PS|----|                      |
 +---------------------+    |       Underlay       |
                 :          |     Infrastructure   |     +---------+
                 :          |                      |     |CS-ID 1  |
                 :          +----------------------+ .---|CSCI-ID 3|
                 :                    |              |   +---------+
                 :          +----------------+  +-------+
                 :          |CATS-Forwarder 3|--| C-SMA | Service Site 3
                 :          +----------------+  +-------+
                 :                                :  |   +-------+
                 :                                :  '---|CS-ID 2|
                 :                                :      +-------+
                 :<-------------------------------:
          Service CS-ID 1, contact instance CSCI-ID 3 <computing metrics>
          Service CS-ID 2, <computing metrics>
]]></artwork>
          </artset>
        </figure>
        <t>The example in <xref target="fig-cats-example-overlay"/> mainly describes a per-instance computing-related metric distribution. In the case of distributing aggregated per-site computing-related metrics, the per-instance CSCI-ID information will not be included in the advertisement. Instead, a per-site CSCI-ID may be used in case multiple sites are connected to the Egress CATS-Forwarder to explicitly indicate the site from where the aggregated metrics come.</t>
        <t>If the CATS framework is implemented using a centralized model, the metric can be, e.g., distributed as illustrated in <xref target="fig-cats-centralized"/>.</t>
        <figure anchor="fig-cats-centralized">
          <name>An Example of CATS Metric Distribution in a Centralized Model</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="608" width="608" viewBox="0 0 608 608" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,288 L 8,320" fill="none" stroke="black"/>
                <path d="M 8,368 L 8,416" fill="none" stroke="black"/>
                <path d="M 48,328 L 48,360" fill="none" stroke="black"/>
                <path d="M 80,288 L 80,320" fill="none" stroke="black"/>
                <path d="M 144,368 L 144,416" fill="none" stroke="black"/>
                <path d="M 160,112 L 160,160" fill="none" stroke="black"/>
                <path d="M 176,496 L 176,528" fill="none" stroke="black"/>
                <path d="M 184,168 L 184,384" fill="none" stroke="black"/>
                <path d="M 208,208 L 208,272" fill="none" stroke="black"/>
                <path d="M 208,304 L 208,328" fill="none" stroke="black"/>
                <path d="M 208,344 L 208,464" fill="none" stroke="black"/>
                <path d="M 216,112 L 216,160" fill="none" stroke="black"/>
                <path d="M 224,320 L 224,352" fill="none" stroke="black"/>
                <path d="M 280,144 L 280,200" fill="none" stroke="black"/>
                <path d="M 288,320 L 288,352" fill="none" stroke="black"/>
                <path d="M 288,536 L 288,560" fill="none" stroke="black"/>
                <path d="M 312,496 L 312,528" fill="none" stroke="black"/>
                <path d="M 344,208 L 344,272" fill="none" stroke="black"/>
                <path d="M 376,176 L 376,256" fill="none" stroke="black"/>
                <path d="M 392,304 L 392,464" fill="none" stroke="black"/>
                <path d="M 408,160 L 408,208" fill="none" stroke="black"/>
                <path d="M 408,240 L 408,288" fill="none" stroke="black"/>
                <path d="M 408,544 L 408,576" fill="none" stroke="black"/>
                <path d="M 416,464 L 416,512" fill="none" stroke="black"/>
                <path d="M 432,432 L 432,480" fill="none" stroke="black"/>
                <path d="M 448,336 L 448,384" fill="none" stroke="black"/>
                <path d="M 472,544 L 472,576" fill="none" stroke="black"/>
                <path d="M 480,392 L 480,424" fill="none" stroke="black"/>
                <path d="M 488,160 L 488,208" fill="none" stroke="black"/>
                <path d="M 488,240 L 488,288" fill="none" stroke="black"/>
                <path d="M 496,336 L 496,384" fill="none" stroke="black"/>
                <path d="M 512,432 L 512,480" fill="none" stroke="black"/>
                <path d="M 520,128 L 520,560" fill="none" stroke="black"/>
                <path d="M 160,112 L 216,112" fill="none" stroke="black"/>
                <path d="M 104,128 L 152,128" fill="none" stroke="black"/>
                <path d="M 224,128 L 520,128" fill="none" stroke="black"/>
                <path d="M 224,144 L 280,144" fill="none" stroke="black"/>
                <path d="M 160,160 L 216,160" fill="none" stroke="black"/>
                <path d="M 408,160 L 488,160" fill="none" stroke="black"/>
                <path d="M 376,176 L 400,176" fill="none" stroke="black"/>
                <path d="M 208,208 L 344,208" fill="none" stroke="black"/>
                <path d="M 408,208 L 488,208" fill="none" stroke="black"/>
                <path d="M 352,224 L 368,224" fill="none" stroke="black"/>
                <path d="M 208,240 L 344,240" fill="none" stroke="black"/>
                <path d="M 408,240 L 488,240" fill="none" stroke="black"/>
                <path d="M 376,256 L 400,256" fill="none" stroke="black"/>
                <path d="M 208,272 L 344,272" fill="none" stroke="black"/>
                <path d="M 8,288 L 80,288" fill="none" stroke="black"/>
                <path d="M 408,288 L 488,288" fill="none" stroke="black"/>
                <path d="M 208,304 L 392,304" fill="none" stroke="black"/>
                <path d="M 8,320 L 80,320" fill="none" stroke="black"/>
                <path d="M 224,320 L 288,320" fill="none" stroke="black"/>
                <path d="M 184,336 L 216,336" fill="none" stroke="black"/>
                <path d="M 448,336 L 496,336" fill="none" stroke="black"/>
                <path d="M 224,352 L 288,352" fill="none" stroke="black"/>
                <path d="M 504,352 L 520,352" fill="none" stroke="black"/>
                <path d="M 8,368 L 144,368" fill="none" stroke="black"/>
                <path d="M 152,384 L 184,384" fill="none" stroke="black"/>
                <path d="M 448,384 L 496,384" fill="none" stroke="black"/>
                <path d="M 152,400 L 200,400" fill="none" stroke="black"/>
                <path d="M 8,416 L 144,416" fill="none" stroke="black"/>
                <path d="M 432,432 L 504,432" fill="none" stroke="black"/>
                <path d="M 208,464 L 392,464" fill="none" stroke="black"/>
                <path d="M 432,480 L 504,480" fill="none" stroke="black"/>
                <path d="M 176,496 L 312,496" fill="none" stroke="black"/>
                <path d="M 320,512 L 416,512" fill="none" stroke="black"/>
                <path d="M 176,528 L 312,528" fill="none" stroke="black"/>
                <path d="M 408,544 L 472,544" fill="none" stroke="black"/>
                <path d="M 288,560 L 400,560" fill="none" stroke="black"/>
                <path d="M 480,560 L 520,560" fill="none" stroke="black"/>
                <path d="M 408,576 L 472,576" fill="none" stroke="black"/>
                <path d="M 504,432 C 512.83064,432 520,439.16936 520,448" fill="none" stroke="black"/>
                <path d="M 504,432 C 512.83064,432 520,424.83064 520,416" fill="none" stroke="black"/>
                <path d="M 504,480 C 512.83064,480 520,487.16936 520,496" fill="none" stroke="black"/>
                <path d="M 504,480 C 512.83064,480 520,472.83064 520,464" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="488,392 476,386.4 476,397.6" fill="black" transform="rotate(270,480,392)"/>
                <polygon class="arrowhead" points="232,144 220,138.4 220,149.6" fill="black" transform="rotate(180,224,144)"/>
                <polygon class="arrowhead" points="232,128 220,122.4 220,133.6" fill="black" transform="rotate(180,224,128)"/>
                <polygon class="arrowhead" points="192,168 180,162.4 180,173.6" fill="black" transform="rotate(270,184,168)"/>
                <polygon class="arrowhead" points="160,400 148,394.4 148,405.6" fill="black" transform="rotate(180,152,400)"/>
                <polygon class="arrowhead" points="160,384 148,378.4 148,389.6" fill="black" transform="rotate(180,152,384)"/>
                <polygon class="arrowhead" points="112,128 100,122.4 100,133.6" fill="black" transform="rotate(180,104,128)"/>
                <g class="text">
                  <text x="192" y="36">Service</text>
                  <text x="248" y="36">CS-ID</text>
                  <text x="284" y="36">1,</text>
                  <text x="332" y="36">instance</text>
                  <text x="400" y="36">CSCI-ID</text>
                  <text x="440" y="36">1</text>
                  <text x="492" y="36">&lt;computing</text>
                  <text x="572" y="36">metrics&gt;</text>
                  <text x="192" y="52">Service</text>
                  <text x="248" y="52">CS-ID</text>
                  <text x="284" y="52">1,</text>
                  <text x="332" y="52">instance</text>
                  <text x="400" y="52">CSCI-ID</text>
                  <text x="440" y="52">2</text>
                  <text x="492" y="52">&lt;computing</text>
                  <text x="572" y="52">metrics&gt;</text>
                  <text x="192" y="68">Service</text>
                  <text x="248" y="68">CS-ID</text>
                  <text x="284" y="68">1,</text>
                  <text x="332" y="68">instance</text>
                  <text x="400" y="68">CSCI-ID</text>
                  <text x="440" y="68">3</text>
                  <text x="492" y="68">&lt;computing</text>
                  <text x="572" y="68">metrics&gt;</text>
                  <text x="192" y="84">Service</text>
                  <text x="248" y="84">CS-ID</text>
                  <text x="284" y="84">2,</text>
                  <text x="340" y="84">&lt;computing</text>
                  <text x="420" y="84">metrics&gt;</text>
                  <text x="96" y="132">:</text>
                  <text x="188" y="132">C-PS</text>
                  <text x="96" y="148">:</text>
                  <text x="96" y="164">:</text>
                  <text x="96" y="180">:</text>
                  <text x="432" y="180">CS-ID</text>
                  <text x="464" y="180">1</text>
                  <text x="96" y="196">:</text>
                  <text x="440" y="196">CSCI-ID</text>
                  <text x="480" y="196">1</text>
                  <text x="96" y="212">:</text>
                  <text x="96" y="228">:</text>
                  <text x="264" y="228">C-SMA</text>
                  <text x="416" y="228">Service</text>
                  <text x="468" y="228">Site</text>
                  <text x="496" y="228">2</text>
                  <text x="96" y="244">:</text>
                  <text x="96" y="260">:</text>
                  <text x="268" y="260">CATS-Forwarder</text>
                  <text x="336" y="260">2</text>
                  <text x="432" y="260">CS-ID</text>
                  <text x="464" y="260">1</text>
                  <text x="96" y="276">:</text>
                  <text x="440" y="276">CSCI-ID</text>
                  <text x="480" y="276">2</text>
                  <text x="96" y="292">:</text>
                  <text x="288" y="292">|</text>
                  <text x="44" y="308">Client</text>
                  <text x="96" y="308">:</text>
                  <text x="144" y="308">Network</text>
                  <text x="96" y="324">:</text>
                  <text x="144" y="324">metrics</text>
                  <text x="96" y="340">:</text>
                  <text x="256" y="340">C-NMA</text>
                  <text x="96" y="356">:</text>
                  <text x="472" y="356">C-SMA</text>
                  <text x="508" y="372">&lt;-</text>
                  <text x="68" y="388">CATS-Forwarder</text>
                  <text x="136" y="388">1</text>
                  <text x="300" y="420">Underlay</text>
                  <text x="308" y="436">Infrastructure</text>
                  <text x="456" y="452">CS-ID</text>
                  <text x="488" y="452">1</text>
                  <text x="424" y="468">-</text>
                  <text x="464" y="468">CSCI-ID</text>
                  <text x="504" y="468">3</text>
                  <text x="288" y="484">|</text>
                  <text x="236" y="516">CATS-Forwarder</text>
                  <text x="304" y="516">3</text>
                  <text x="416" y="532">Service</text>
                  <text x="468" y="532">Site</text>
                  <text x="496" y="532">3</text>
                  <text x="432" y="564">CS-ID</text>
                  <text x="464" y="564">2</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
                        Service CS-ID 1, instance CSCI-ID 1 <computing metrics>
                        Service CS-ID 1, instance CSCI-ID 2 <computing metrics>
                        Service CS-ID 1, instance CSCI-ID 3 <computing metrics>
                        Service CS-ID 2, <computing metrics>

                       +------+
               :<------| C-PS |<------------------------------------.
               :       |      |<------.                             |
               :       +------+       |               +---------+   |
               :          ^           |           +---|CS-ID 1  |   |
               :          |           |           |   |CSCI-ID 1|   |
               :          |  +----------------+   |   +---------+   |
               :          |  |    C-SMA       |---| Service Site 2  |
               :          |  +----------------+   |   +---------+   |
               :          |  |CATS-Forwarder 2|   +---|CS-ID 1  |   |
               :          |  +----------------+       |CSCI-ID 2|   |
    +--------+ :          |            |              +---------+   |
    | Client | :  Network |  +----------------------+               |
    +--------+ :  metrics |  | +-------+            |               |
         |     :          +----| C-NMA |            |      +-----+  |
         |     :          |  | +-------+            |      |C-SMA|--+
    +----------------+    |  |                      |      |     |<-.
    |CATS-Forwarder 1|<---'  |                      |      +-----+  |
    |                |<------|                      |          ^    |
    +----------------+       |       Underlay       |          |    |
                             |     Infrastructure   |    +---------+|
                             |                      |    |CS-ID 1  ||
                             +----------------------+  +-|CSCI-ID 3||
                                       |               | +---------+|
                         +----------------+            |            |
                         |CATS-Forwarder 3|------------+            |
                         +----------------+         Service Site 3  |
                                       |              +-------+     |
                                       +--------------|CS-ID 2|-----+
                                                      +-------+
]]></artwork>
          </artset>
        </figure>
        <t>In <xref target="fig-cats-centralized"/>, the C-SMA collocated with "CATS-Forwarder 2" distributes the computing metrics for both service contact instances (i.e., (CS-ID 1, CSCI-ID 1) and (CS-ID 1, CSCI-ID 2)) to the centralized C-PS. In this case, the C-PS is a logically centralized element deployed independently with the CATS-Forwarder 1. Similarly, the C-SMA agent located at "Service Site 3" advertises the computing metrics for the two services hosted by "Service Site 3" to the centralized C-PS as well. Furthermore, the C-PS receives the network metrics sent from the C-NMA.  All metrics are used by the C-PS to select the most relevant path that leads to the Egress CATS-Forwarder. The selected paths will be sent from the C-PS to CATS-Forwarder 1 to indicate traffic steering.</t>
        <t>If the CATS framework is implemented using an hybrid model, the metric can be distributed, e.g., as illustrated in the <xref target="fig-cats-hybrid"/>. For example, the metrics 1,2,3 associated with the CS-ID1 are collected by the centralized C-PS, and the metrics 4 and 5 are distributed via distributed protocols to the ingress CATS-Forwarder directly. For a service with CS-ID2, all the metrics are collected by the centralized C-PS. The CATS-computed path result will be distributed to the Ingress CATS-Forwarders from the C-PS by considering both the metrics from the C-SMA and C-NMA. Furthermore, the Ingress CATS-Forwarder may also have some ability to compute the path for the subsequent service accessing packets.</t>
        <figure anchor="fig-cats-hybrid">
          <name>An Example of CATS Metric Distribution in Hybrid Model</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="624" width="592" viewBox="0 0 592 624" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,272 L 8,304" fill="none" stroke="black"/>
                <path d="M 8,368 L 8,448" fill="none" stroke="black"/>
                <path d="M 48,312 L 48,360" fill="none" stroke="black"/>
                <path d="M 48,424 L 48,448" fill="none" stroke="black"/>
                <path d="M 80,272 L 80,304" fill="none" stroke="black"/>
                <path d="M 144,368 L 144,416" fill="none" stroke="black"/>
                <path d="M 168,96 L 168,144" fill="none" stroke="black"/>
                <path d="M 192,152 L 192,384" fill="none" stroke="black"/>
                <path d="M 192,480 L 192,512" fill="none" stroke="black"/>
                <path d="M 224,96 L 224,144" fill="none" stroke="black"/>
                <path d="M 224,192 L 224,256" fill="none" stroke="black"/>
                <path d="M 224,288 L 224,312" fill="none" stroke="black"/>
                <path d="M 224,328 L 224,448" fill="none" stroke="black"/>
                <path d="M 240,304 L 240,336" fill="none" stroke="black"/>
                <path d="M 296,128 L 296,184" fill="none" stroke="black"/>
                <path d="M 304,304 L 304,336" fill="none" stroke="black"/>
                <path d="M 304,520 L 304,544" fill="none" stroke="black"/>
                <path d="M 328,480 L 328,512" fill="none" stroke="black"/>
                <path d="M 360,192 L 360,256" fill="none" stroke="black"/>
                <path d="M 392,160 L 392,240" fill="none" stroke="black"/>
                <path d="M 408,288 L 408,448" fill="none" stroke="black"/>
                <path d="M 424,144 L 424,192" fill="none" stroke="black"/>
                <path d="M 424,224 L 424,272" fill="none" stroke="black"/>
                <path d="M 424,528 L 424,560" fill="none" stroke="black"/>
                <path d="M 432,448 L 432,496" fill="none" stroke="black"/>
                <path d="M 448,416 L 448,464" fill="none" stroke="black"/>
                <path d="M 464,320 L 464,368" fill="none" stroke="black"/>
                <path d="M 488,528 L 488,560" fill="none" stroke="black"/>
                <path d="M 496,376 L 496,408" fill="none" stroke="black"/>
                <path d="M 504,144 L 504,192" fill="none" stroke="black"/>
                <path d="M 504,224 L 504,272" fill="none" stroke="black"/>
                <path d="M 512,320 L 512,368" fill="none" stroke="black"/>
                <path d="M 528,416 L 528,464" fill="none" stroke="black"/>
                <path d="M 536,112 L 536,544" fill="none" stroke="black"/>
                <path d="M 168,96 L 224,96" fill="none" stroke="black"/>
                <path d="M 112,112 L 160,112" fill="none" stroke="black"/>
                <path d="M 232,112 L 536,112" fill="none" stroke="black"/>
                <path d="M 232,128 L 296,128" fill="none" stroke="black"/>
                <path d="M 168,144 L 224,144" fill="none" stroke="black"/>
                <path d="M 424,144 L 504,144" fill="none" stroke="black"/>
                <path d="M 392,160 L 416,160" fill="none" stroke="black"/>
                <path d="M 224,192 L 360,192" fill="none" stroke="black"/>
                <path d="M 424,192 L 504,192" fill="none" stroke="black"/>
                <path d="M 368,208 L 384,208" fill="none" stroke="black"/>
                <path d="M 224,224 L 360,224" fill="none" stroke="black"/>
                <path d="M 424,224 L 504,224" fill="none" stroke="black"/>
                <path d="M 392,240 L 416,240" fill="none" stroke="black"/>
                <path d="M 224,256 L 360,256" fill="none" stroke="black"/>
                <path d="M 8,272 L 80,272" fill="none" stroke="black"/>
                <path d="M 424,272 L 504,272" fill="none" stroke="black"/>
                <path d="M 224,288 L 408,288" fill="none" stroke="black"/>
                <path d="M 8,304 L 80,304" fill="none" stroke="black"/>
                <path d="M 240,304 L 304,304" fill="none" stroke="black"/>
                <path d="M 192,320 L 232,320" fill="none" stroke="black"/>
                <path d="M 464,320 L 512,320" fill="none" stroke="black"/>
                <path d="M 240,336 L 304,336" fill="none" stroke="black"/>
                <path d="M 520,336 L 536,336" fill="none" stroke="black"/>
                <path d="M 8,368 L 144,368" fill="none" stroke="black"/>
                <path d="M 464,368 L 512,368" fill="none" stroke="black"/>
                <path d="M 152,384 L 192,384" fill="none" stroke="black"/>
                <path d="M 152,400 L 216,400" fill="none" stroke="black"/>
                <path d="M 16,416 L 144,416" fill="none" stroke="black"/>
                <path d="M 448,416 L 520,416" fill="none" stroke="black"/>
                <path d="M 8,448 L 48,448" fill="none" stroke="black"/>
                <path d="M 224,448 L 408,448" fill="none" stroke="black"/>
                <path d="M 448,464 L 520,464" fill="none" stroke="black"/>
                <path d="M 192,480 L 328,480" fill="none" stroke="black"/>
                <path d="M 336,496 L 432,496" fill="none" stroke="black"/>
                <path d="M 192,512 L 328,512" fill="none" stroke="black"/>
                <path d="M 424,528 L 488,528" fill="none" stroke="black"/>
                <path d="M 304,544 L 416,544" fill="none" stroke="black"/>
                <path d="M 496,544 L 536,544" fill="none" stroke="black"/>
                <path d="M 424,560 L 488,560" fill="none" stroke="black"/>
                <path d="M 112,576 L 360,576" fill="none" stroke="black"/>
                <path d="M 520,416 C 528.83064,416 536,423.16936 536,432" fill="none" stroke="black"/>
                <path d="M 520,416 C 528.83064,416 536,408.83064 536,400" fill="none" stroke="black"/>
                <path d="M 520,464 C 528.83064,464 536,471.16936 536,480" fill="none" stroke="black"/>
                <path d="M 520,464 C 528.83064,464 536,456.83064 536,448" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="504,376 492,370.4 492,381.6" fill="black" transform="rotate(270,496,376)"/>
                <polygon class="arrowhead" points="240,128 228,122.4 228,133.6" fill="black" transform="rotate(180,232,128)"/>
                <polygon class="arrowhead" points="240,112 228,106.4 228,117.6" fill="black" transform="rotate(180,232,112)"/>
                <polygon class="arrowhead" points="200,152 188,146.4 188,157.6" fill="black" transform="rotate(270,192,152)"/>
                <polygon class="arrowhead" points="160,384 148,378.4 148,389.6" fill="black" transform="rotate(180,152,384)"/>
                <polygon class="arrowhead" points="120,576 108,570.4 108,581.6" fill="black" transform="rotate(180,112,576)"/>
                <polygon class="arrowhead" points="120,112 108,106.4 108,117.6" fill="black" transform="rotate(180,112,112)"/>
                <g class="text">
                  <text x="136" y="36">Service</text>
                  <text x="192" y="36">CS-ID</text>
                  <text x="228" y="36">1,</text>
                  <text x="276" y="36">instance</text>
                  <text x="344" y="36">CSCI-ID</text>
                  <text x="384" y="36">1</text>
                  <text x="436" y="36">&lt;computing</text>
                  <text x="508" y="36">metric</text>
                  <text x="564" y="36">1,2,3&gt;</text>
                  <text x="136" y="52">Service</text>
                  <text x="192" y="52">CS-ID</text>
                  <text x="228" y="52">1,</text>
                  <text x="276" y="52">instance</text>
                  <text x="344" y="52">CSCI-ID</text>
                  <text x="384" y="52">2</text>
                  <text x="436" y="52">&lt;computing</text>
                  <text x="508" y="52">metric</text>
                  <text x="564" y="52">1,2,3&gt;</text>
                  <text x="136" y="68">Service</text>
                  <text x="192" y="68">CS-ID</text>
                  <text x="228" y="68">1,</text>
                  <text x="276" y="68">instance</text>
                  <text x="344" y="68">CSCI-ID</text>
                  <text x="384" y="68">3</text>
                  <text x="436" y="68">&lt;computing</text>
                  <text x="508" y="68">metric</text>
                  <text x="564" y="68">1,2,3&gt;</text>
                  <text x="136" y="84">Service</text>
                  <text x="192" y="84">CS-ID</text>
                  <text x="228" y="84">2,</text>
                  <text x="284" y="84">&lt;computing</text>
                  <text x="364" y="84">metrics&gt;</text>
                  <text x="104" y="116">:</text>
                  <text x="196" y="116">C-PS</text>
                  <text x="104" y="132">:</text>
                  <text x="104" y="148">:</text>
                  <text x="104" y="164">:</text>
                  <text x="448" y="164">CS-ID</text>
                  <text x="480" y="164">1</text>
                  <text x="104" y="180">:</text>
                  <text x="456" y="180">CSCI-ID</text>
                  <text x="496" y="180">1</text>
                  <text x="104" y="196">:</text>
                  <text x="104" y="212">:</text>
                  <text x="280" y="212">C-SMA</text>
                  <text x="432" y="212">Service</text>
                  <text x="484" y="212">Site</text>
                  <text x="512" y="212">2</text>
                  <text x="104" y="228">:</text>
                  <text x="104" y="244">:</text>
                  <text x="284" y="244">CATS-Forwarder</text>
                  <text x="352" y="244">2</text>
                  <text x="448" y="244">CS-ID</text>
                  <text x="480" y="244">1</text>
                  <text x="104" y="260">:</text>
                  <text x="456" y="260">CSCI-ID</text>
                  <text x="496" y="260">2</text>
                  <text x="104" y="276">:</text>
                  <text x="304" y="276">|</text>
                  <text x="44" y="292">Client</text>
                  <text x="104" y="292">:</text>
                  <text x="152" y="292">Network</text>
                  <text x="104" y="308">:</text>
                  <text x="152" y="308">metrics</text>
                  <text x="104" y="324">:</text>
                  <text x="272" y="324">C-NMA</text>
                  <text x="104" y="340">:</text>
                  <text x="488" y="340">C-SMA</text>
                  <text x="104" y="356">:</text>
                  <text x="524" y="356">&lt;-</text>
                  <text x="68" y="388">CATS-Forwarder</text>
                  <text x="136" y="388">1</text>
                  <text x="316" y="404">Underlay</text>
                  <text x="324" y="420">Infrastructure</text>
                  <text x="28" y="436">C-PS</text>
                  <text x="104" y="436">:</text>
                  <text x="472" y="436">CS-ID</text>
                  <text x="504" y="436">1</text>
                  <text x="104" y="452">:</text>
                  <text x="440" y="452">-</text>
                  <text x="480" y="452">CSCI-ID</text>
                  <text x="520" y="452">3</text>
                  <text x="104" y="468">:</text>
                  <text x="304" y="468">|</text>
                  <text x="104" y="484">:</text>
                  <text x="104" y="500">:</text>
                  <text x="252" y="500">CATS-Forwarder</text>
                  <text x="320" y="500">3</text>
                  <text x="104" y="516">:</text>
                  <text x="432" y="516">Service</text>
                  <text x="484" y="516">Site</text>
                  <text x="512" y="516">3</text>
                  <text x="104" y="532">:</text>
                  <text x="104" y="548">:</text>
                  <text x="448" y="548">CS-ID</text>
                  <text x="480" y="548">2</text>
                  <text x="104" y="564">:</text>
                  <text x="368" y="564">:</text>
                  <text x="104" y="580">:</text>
                  <text x="368" y="580">:</text>
                  <text x="72" y="596">Service</text>
                  <text x="128" y="596">CS-ID</text>
                  <text x="164" y="596">1,</text>
                  <text x="208" y="596">contact</text>
                  <text x="276" y="596">instance</text>
                  <text x="344" y="596">CSCI-ID</text>
                  <text x="388" y="596">3,</text>
                  <text x="444" y="596">&lt;computing</text>
                  <text x="516" y="596">metric</text>
                  <text x="564" y="596">4,5&gt;</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
              Service CS-ID 1, instance CSCI-ID 1 <computing metric 1,2,3>
              Service CS-ID 1, instance CSCI-ID 2 <computing metric 1,2,3>
              Service CS-ID 1, instance CSCI-ID 3 <computing metric 1,2,3>
              Service CS-ID 2, <computing metrics>
                     +------+
             :<------| C-PS |<-------------------------------------.
             :       |      |<-------.                             |
             :       +------+        |               +---------+   |
             :          ^            |           +---|CS-ID 1  |   |
             :          |            |           |   |CSCI-ID 1|   |
             :          |   +----------------+   |   +---------+   |
             :          |   |    C-SMA       |---| Service Site 2  |
             :          |   +----------------+   |   +---------+   |
             :          |   |CATS-Forwarder 2|   +---|CS-ID 1  |   |
             :          |   +----------------+       |CSCI-ID 2|   |
 +--------+  :          |             |              +---------+   |
 | Client |  :  Network |   +----------------------+               |
 +--------+  :  metrics |   | +-------+            |               |
      |      :          +-----| C-NMA |            |      +-----+  |
      |      :          |   | +-------+            |      |C-SMA|--+
      |      :          |   |                      |      |     |<-.
 +----------------+     |   |                      |      +-----+  |
 |CATS-Forwarder 1|<----'   |                      |          ^    |
 |                |---------|       Underlay       |          |    |
 |----------------+         |     Infrastructure   |    +---------+|
 |C-PS|      :              |                      |    |CS-ID 1  ||
 +----+      :              +----------------------+  +-|CSCI-ID 3||
             :                        |               | +---------+|
             :          +----------------+            |            |
             :          |CATS-Forwarder 3|------------+            |
             :          +----------------+         Service Site 3  |
             :                        |              +-------+     |
             :                        '-------+------|CS-ID 2|-----'
             :                                :      +-------+
             :<-------------------------------:
      Service CS-ID 1, contact instance CSCI-ID 3, <computing metric 4,5>
]]></artwork>
          </artset>
        </figure>
      </section>
      <section anchor="service-access-processing">
        <name>Service Access Processing</name>
        <t>A C-PS selects paths that lead to Egress CATS-Forwarders according to both service and network metrics that were advertised. A C-PS may be collocated with an Ingress CATS-Forwarder (as shown in <xref target="fig-cats-example-overlay"/>) or logically centralized (in a centralized model or hybrid model).</t>
        <t>This document does not specify any specific algorithm for path selection purposes to be supported by C-PSes in order to not constrain the CATS framework to one possible selection only. Instead, it is expected that a service request or local policy may feed the C-PS with appropriate information on that selection logic that takes the suitable metric information as input and the selected service contact instance as output. Such "appropriate information" may be utilized to differentiate selection mechanisms to enable service-specific selections.</t>
        <t>In the example shown in <xref target="fig-cats-example-overlay"/>, the client sends a service access via the network through the "CATS-Forwarder 1", which is an Ingress CATS-Forwarder. Note that, a service access may consist of one or more service packets (e.g., Session Initiation Protocol (SIP) <xref target="RFC3261"/>, HTTP <xref target="RFC9112"/>, IPv6 <xref target="RFC8200"/>, SRv6 <xref target="RFC8754"/> or Real-Time Streaming Protocol (RTSP) <xref target="RFC7826"/>) that carry the CS-ID and potential parameters. The Ingress CATS-Forwarder classifies the packets using the information provided by the CATS classifier (C-TC). When a matching classification entry is found for the packets, the Ingress CATS-Forwarder encapsulates and forwards them to the C-PS selected Egress CATS-Forwarder. When these packets reach the Egress CATS-Forwarder, the outer header of the possible overlay encapsulation will be removed and the inner packets will be sent to the relevant service contact instance.</t>
        <ul empty="true">
          <li>
            <t>Note that multi-homed clients may be connected to multiple CATS infrastructures that may be operated by the same or distinct service providers. This version of the framework does not cover multihoming specifics.</t>
          </li>
        </ul>
      </section>
      <section anchor="service-contact-instance-affinity">
        <name>Service Contact Instance Affinity</name>
        <t>Service contact instance affinity means that packets that belong to a flow associated with a service should always be sent to the same service contact instance. Furthermore, packets of a given flow should be forwarded along the same path to avoid mis-ordering and to prevent the introduction of unpredictable latency variations. The CATS framework must ensure that service instance selection and path steering decisions remain consistent for a flow. Specifically, the same Egress CATS-Forwarder need to be solicited to forward the packets.</t>
        <t>The affinity is configured on the C-PS when the service is deployed, or is determined at the time of newly formulated service requests.</t>
        <t>Note that different services may have different notions of what constitutes a 'flow' and may, thus, identify a flow differently. Typically, a flow is identified by the 5-tuple transport coordinates (source address and destination address, source and destination port numbers, and protocol). However, for instance, an RTP video stream may use different port numbers for video and audio channels: in that case, affinity may be identified as a combination of the two 5-tuple flow identifiers so that both flows are addressed to the same service contact instance.</t>
        <t>Hence, when specifying a protocol to communicate information about service contact instance affinity, the protocol should support
flexible mechanisms for identifying flows. Or, from a more general perspective, there should be a mechanism to specify and identify the set of packets that are subject to a service contact instance affinity.</t>
        <t>More importantly, the means for identifying a flow for ensuring instance affinity should be application-independent to avoid the need for service-specific instance affinity methods. However, service contact instance affinity information may be configurable on a per-service basis. For each service, the information can include the flow/packets identification type and means, affinity timeout value, etc.</t>
        <t>This document does not define any mechanism for defining or enforcing service contact instance affinity.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The computing resource information changes over time very frequently, especially with the creation and termination of service instances. When such information is carried in a routing protocol, too many updates may affect network stability. This issue could be exploited by an attacker (e.g., by spawning and deleting service contact instances very rapidly). CATS solutions must support guards against such misbehaviors. For example, these solutions should support aggregation techniques, dampening mechanisms, and threshold-triggered distribution updates.</t>
      <t>The information distributed by the C-SMAs and C-NMAs may be sensitive. Such information could indeed disclose intelligence about the network and the location of compute resources hosted in service sites. This information may be used by an attacker to identify weak spots in an operator's network. Furthermore, such information may be modified by an attacker resulting in disrupted service delivery for the clients, even including misdirection of traffic to an attacker's service implementation. CATS solutions must support authentication and integrity-protection mechanisms between C-SMAs/C-NMAs and C-PSes, and between C-PSes and Ingress CATS-Forwarders. Also, C-SMA agents need to support a mechanism to authenticate the services for which they provide information to C-PS computation logics, among other CATS functions.</t>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>CATS solutions must support preventing on-path nodes in the underlay infrastructure to fingerprint and track clients (e.g., determine which client accesses which service). More generally, personal data must not be exposed to external parties by CATS beyond what is carried in the packet that was originally issued by the client.</t>
      <t>In some cases, the service will need to know about applications, clients, and even user identity. This information is sensitive and should be encrypted. To prevent the information leaking between CATS components, the C-PS computed path information should be encrypted in distribution. The specific encryption method may be applied at the network layer, transport layer, or at the application/protocol level depending on the implementation, so this is out of the scope of this document.</t>
      <t>For more discussion about privacy, refer to <xref target="RFC6462"/> and <xref target="RFC6973"/>.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document makes no requests for IANA action.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-informative-references">
      <name>Informative References</name>
      <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="10" month="June" year="2025"/>
          <abstract>
            <t>   Distributed computing is a computing pattern that service providers
   can follow and use to achieve better service response time and
   optimized energy consumption.  In such a distributed computing
   environment, compute intensive and delay sensitive services can be
   improved by utilizing computing resources hosted in various computing
   facilities.  Ideally, compute services are balanced across servers
   and network resources to enable higher throughput and lower response
   time.  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 better meet the customer's expectations.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-cats-usecases-requirements-07"/>
      </reference>
      <reference anchor="RFC9522">
        <front>
          <title>Overview and Principles of Internet Traffic Engineering</title>
          <author fullname="A. Farrel" initials="A." role="editor" surname="Farrel"/>
          <date month="January" year="2024"/>
          <abstract>
            <t>This document describes the principles of traffic engineering (TE) in the Internet. The document is intended to promote better understanding of the issues surrounding traffic engineering in IP networks and the networks that support IP networking and to provide a common basis for the development of traffic-engineering capabilities for the Internet. The principles, architectures, and methodologies for performance evaluation and performance optimization of operational networks are also discussed.</t>
            <t>This work was first published as RFC 3272 in May 2002. This document obsoletes RFC 3272 by making a complete update to bring the text in line with best current practices for Internet traffic engineering and to include references to the latest relevant work in the IETF.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9522"/>
        <seriesInfo name="DOI" value="10.17487/RFC9522"/>
      </reference>
      <reference anchor="RFC7471">
        <front>
          <title>OSPF Traffic Engineering (TE) Metric Extensions</title>
          <author fullname="S. Giacalone" initials="S." surname="Giacalone"/>
          <author fullname="D. Ward" initials="D." surname="Ward"/>
          <author fullname="J. Drake" initials="J." surname="Drake"/>
          <author fullname="A. Atlas" initials="A." surname="Atlas"/>
          <author fullname="S. Previdi" initials="S." surname="Previdi"/>
          <date month="March" year="2015"/>
          <abstract>
            <t>In certain networks, such as, but not limited to, financial information networks (e.g., stock market data providers), network performance information (e.g., link propagation delay) is becoming critical to data path selection.</t>
            <t>This document describes common extensions to RFC 3630 "Traffic Engineering (TE) Extensions to OSPF Version 2" and RFC 5329 "Traffic Engineering Extensions to OSPF Version 3" to enable network performance information to be distributed in a scalable fashion. The information distributed using OSPF TE Metric Extensions can then be used to make path selection decisions based on network performance.</t>
            <t>Note that this document only covers the mechanisms by which network performance information is distributed. The mechanisms for measuring network performance information or using that information, once distributed, are outside the scope of this document.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7471"/>
        <seriesInfo name="DOI" value="10.17487/RFC7471"/>
      </reference>
      <reference anchor="RFC8570">
        <front>
          <title>IS-IS Traffic Engineering (TE) Metric Extensions</title>
          <author fullname="L. Ginsberg" initials="L." role="editor" surname="Ginsberg"/>
          <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
          <author fullname="S. Giacalone" initials="S." surname="Giacalone"/>
          <author fullname="D. Ward" initials="D." surname="Ward"/>
          <author fullname="J. Drake" initials="J." surname="Drake"/>
          <author fullname="Q. Wu" initials="Q." surname="Wu"/>
          <date month="March" year="2019"/>
          <abstract>
            <t>In certain networks, such as, but not limited to, financial information networks (e.g., stock market data providers), network-performance criteria (e.g., latency) are becoming as critical to data-path selection as other metrics.</t>
            <t>This document describes extensions to IS-IS Traffic Engineering Extensions (RFC 5305). These extensions provide a way to distribute and collect network-performance information in a scalable fashion. The information distributed using IS-IS TE Metric Extensions can then be used to make path-selection decisions based on network performance.</t>
            <t>Note that this document only covers the mechanisms with which network-performance information is distributed. The mechanisms for measuring network performance or acting on that information, once distributed, are outside the scope of this document.</t>
            <t>This document obsoletes RFC 7810.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8570"/>
        <seriesInfo name="DOI" value="10.17487/RFC8570"/>
      </reference>
      <reference anchor="RFC8571">
        <front>
          <title>BGP - Link State (BGP-LS) Advertisement of IGP Traffic Engineering Performance Metric Extensions</title>
          <author fullname="L. Ginsberg" initials="L." role="editor" surname="Ginsberg"/>
          <author fullname="S. Previdi" initials="S." surname="Previdi"/>
          <author fullname="Q. Wu" initials="Q." surname="Wu"/>
          <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
          <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
          <date month="March" year="2019"/>
          <abstract>
            <t>This document defines new BGP - Link State (BGP-LS) TLVs in order to carry the IGP Traffic Engineering Metric Extensions defined in the IS-IS and OSPF protocols.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8571"/>
        <seriesInfo name="DOI" value="10.17487/RFC8571"/>
      </reference>
      <reference anchor="RFC4655">
        <front>
          <title>A Path Computation Element (PCE)-Based Architecture</title>
          <author fullname="A. Farrel" initials="A." surname="Farrel"/>
          <author fullname="J.-P. Vasseur" initials="J.-P." surname="Vasseur"/>
          <author fullname="J. Ash" initials="J." surname="Ash"/>
          <date month="August" year="2006"/>
          <abstract>
            <t>Constraint-based path computation is a fundamental building block for traffic engineering systems such as Multiprotocol Label Switching (MPLS) and Generalized Multiprotocol Label Switching (GMPLS) networks. Path computation in large, multi-domain, multi-region, or multi-layer networks is complex and may require special computational components and cooperation between the different network domains.</t>
            <t>This document specifies the architecture for a Path Computation Element (PCE)-based model to address this problem space. This document does not attempt to provide a detailed description of all the architectural components, but rather it describes a set of building blocks for the PCE architecture from which solutions may be constructed. This memo provides information for the Internet community.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="4655"/>
        <seriesInfo name="DOI" value="10.17487/RFC4655"/>
      </reference>
      <reference anchor="RFC4026">
        <front>
          <title>Provider Provisioned Virtual Private Network (VPN) Terminology</title>
          <author fullname="L. Andersson" initials="L." surname="Andersson"/>
          <author fullname="T. Madsen" initials="T." surname="Madsen"/>
          <date month="March" year="2005"/>
          <abstract>
            <t>The widespread interest in provider-provisioned Virtual Private Network (VPN) solutions lead to memos proposing different and overlapping solutions. The IETF working groups (first Provider Provisioned VPNs and later Layer 2 VPNs and Layer 3 VPNs) have discussed these proposals and documented specifications. This has lead to the development of a partially new set of concepts used to describe the set of VPN services.</t>
            <t>To a certain extent, more than one term covers the same concept, and sometimes the same term covers more than one concept. This document seeks to make the terminology in the area clearer and more intuitive. This memo provides information for the Internet community.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="4026"/>
        <seriesInfo name="DOI" value="10.17487/RFC4026"/>
      </reference>
      <reference anchor="RFC1034">
        <front>
          <title>Domain names - concepts and facilities</title>
          <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
          <date month="November" year="1987"/>
          <abstract>
            <t>This RFC is the revised basic definition of The Domain Name System. It obsoletes RFC-882. This memo describes the domain style names and their used for host address look up and electronic mail forwarding. It discusses the clients and servers in the domain name system and the protocol used between them.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="13"/>
        <seriesInfo name="RFC" value="1034"/>
        <seriesInfo name="DOI" value="10.17487/RFC1034"/>
      </reference>
      <reference anchor="RFC5340">
        <front>
          <title>OSPF for IPv6</title>
          <author fullname="R. Coltun" initials="R." surname="Coltun"/>
          <author fullname="D. Ferguson" initials="D." surname="Ferguson"/>
          <author fullname="J. Moy" initials="J." surname="Moy"/>
          <author fullname="A. Lindem" initials="A." surname="Lindem"/>
          <date month="July" year="2008"/>
          <abstract>
            <t>This document describes the modifications to OSPF to support version 6 of the Internet Protocol (IPv6). The fundamental mechanisms of OSPF (flooding, Designated Router (DR) election, area support, Short Path First (SPF) calculations, etc.) remain unchanged. However, some changes have been necessary, either due to changes in protocol semantics between IPv4 and IPv6, or simply to handle the increased address size of IPv6. These modifications will necessitate incrementing the protocol version from version 2 to version 3. OSPF for IPv6 is also referred to as OSPF version 3 (OSPFv3).</t>
            <t>Changes between OSPF for IPv4, OSPF Version 2, and OSPF for IPv6 as described herein include the following. Addressing semantics have been removed from OSPF packets and the basic Link State Advertisements (LSAs). New LSAs have been created to carry IPv6 addresses and prefixes. OSPF now runs on a per-link basis rather than on a per-IP-subnet basis. Flooding scope for LSAs has been generalized. Authentication has been removed from the OSPF protocol and instead relies on IPv6's Authentication Header and Encapsulating Security Payload (ESP).</t>
            <t>Even with larger IPv6 addresses, most packets in OSPF for IPv6 are almost as compact as those in OSPF for IPv4. Most fields and packet- size limitations present in OSPF for IPv4 have been relaxed. In addition, option handling has been made more flexible.</t>
            <t>All of OSPF for IPv4's optional capabilities, including demand circuit support and Not-So-Stubby Areas (NSSAs), are also supported in OSPF for IPv6. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5340"/>
        <seriesInfo name="DOI" value="10.17487/RFC5340"/>
      </reference>
      <reference anchor="RFC3261">
        <front>
          <title>SIP: Session Initiation Protocol</title>
          <author fullname="J. Rosenberg" initials="J." surname="Rosenberg"/>
          <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
          <author fullname="G. Camarillo" initials="G." surname="Camarillo"/>
          <author fullname="A. Johnston" initials="A." surname="Johnston"/>
          <author fullname="J. Peterson" initials="J." surname="Peterson"/>
          <author fullname="R. Sparks" initials="R." surname="Sparks"/>
          <author fullname="M. Handley" initials="M." surname="Handley"/>
          <author fullname="E. Schooler" initials="E." surname="Schooler"/>
          <date month="June" year="2002"/>
          <abstract>
            <t>This document describes Session Initiation Protocol (SIP), an application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants. These sessions include Internet telephone calls, multimedia distribution, and multimedia conferences. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="3261"/>
        <seriesInfo name="DOI" value="10.17487/RFC3261"/>
      </reference>
      <reference anchor="RFC9112">
        <front>
          <title>HTTP/1.1</title>
          <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
          <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
          <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
          <date month="June" year="2022"/>
          <abstract>
            <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document specifies the HTTP/1.1 message syntax, message parsing, connection management, and related security concerns.</t>
            <t>This document obsoletes portions of RFC 7230.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="99"/>
        <seriesInfo name="RFC" value="9112"/>
        <seriesInfo name="DOI" value="10.17487/RFC9112"/>
      </reference>
      <reference anchor="RFC8200">
        <front>
          <title>Internet Protocol, Version 6 (IPv6) Specification</title>
          <author fullname="S. Deering" initials="S." surname="Deering"/>
          <author fullname="R. Hinden" initials="R." surname="Hinden"/>
          <date month="July" year="2017"/>
          <abstract>
            <t>This document specifies version 6 of the Internet Protocol (IPv6). It obsoletes RFC 2460.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="86"/>
        <seriesInfo name="RFC" value="8200"/>
        <seriesInfo name="DOI" value="10.17487/RFC8200"/>
      </reference>
      <reference anchor="RFC8754">
        <front>
          <title>IPv6 Segment Routing Header (SRH)</title>
          <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
          <author fullname="D. Dukes" initials="D." role="editor" surname="Dukes"/>
          <author fullname="S. Previdi" initials="S." surname="Previdi"/>
          <author fullname="J. Leddy" initials="J." surname="Leddy"/>
          <author fullname="S. Matsushima" initials="S." surname="Matsushima"/>
          <author fullname="D. Voyer" initials="D." surname="Voyer"/>
          <date month="March" year="2020"/>
          <abstract>
            <t>Segment Routing can be applied to the IPv6 data plane using a new type of Routing Extension Header called the Segment Routing Header (SRH). This document describes the SRH and how it is used by nodes that are Segment Routing (SR) capable.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8754"/>
        <seriesInfo name="DOI" value="10.17487/RFC8754"/>
      </reference>
      <reference anchor="RFC7826">
        <front>
          <title>Real-Time Streaming Protocol Version 2.0</title>
          <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
          <author fullname="A. Rao" initials="A." surname="Rao"/>
          <author fullname="R. Lanphier" initials="R." surname="Lanphier"/>
          <author fullname="M. Westerlund" initials="M." surname="Westerlund"/>
          <author fullname="M. Stiemerling" initials="M." role="editor" surname="Stiemerling"/>
          <date month="December" year="2016"/>
          <abstract>
            <t>This memorandum defines the Real-Time Streaming Protocol (RTSP) version 2.0, which obsoletes RTSP version 1.0 defined in RFC 2326.</t>
            <t>RTSP is an application-layer protocol for the setup and control of the delivery of data with real-time properties. RTSP provides an extensible framework to enable controlled, on-demand delivery of real-time data, such as audio and video. Sources of data can include both live data feeds and stored clips. This protocol is intended to control multiple data delivery sessions; provide a means for choosing delivery channels such as UDP, multicast UDP, and TCP; and provide a means for choosing delivery mechanisms based upon RTP (RFC 3550).</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7826"/>
        <seriesInfo name="DOI" value="10.17487/RFC7826"/>
      </reference>
      <reference anchor="RFC6462">
        <front>
          <title>Report from the Internet Privacy Workshop</title>
          <author fullname="A. Cooper" initials="A." surname="Cooper"/>
          <date month="January" year="2012"/>
          <abstract>
            <t>On December 8-9, 2010, the IAB co-hosted an Internet privacy workshop with the World Wide Web Consortium (W3C), the Internet Society (ISOC), and MIT's Computer Science and Artificial Intelligence Laboratory (CSAIL). The workshop revealed some of the fundamental challenges in designing, deploying, and analyzing privacy-protective Internet protocols and systems. Although workshop participants and the community as a whole are still far from understanding how best to systematically address privacy within Internet standards development, workshop participants identified a number of potential next steps. For the IETF, these included the creation of a privacy directorate to review Internet-Drafts, further work on documenting privacy considerations for protocol developers, and a number of exploratory efforts concerning fingerprinting and anonymized routing. Potential action items for the W3C included investigating the formation of a privacy interest group and formulating guidance about fingerprinting, referrer headers, data minimization in APIs, usability, and general considerations for non-browser-based protocols.</t>
            <t>Note that this document is a report on the proceedings of the workshop. The views and positions documented in this report are those of the workshop participants and do not necessarily reflect the views of the IAB, W3C, ISOC, or MIT CSAIL. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6462"/>
        <seriesInfo name="DOI" value="10.17487/RFC6462"/>
      </reference>
      <reference anchor="RFC6973">
        <front>
          <title>Privacy Considerations for Internet Protocols</title>
          <author fullname="A. Cooper" initials="A." surname="Cooper"/>
          <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
          <author fullname="B. Aboba" initials="B." surname="Aboba"/>
          <author fullname="J. Peterson" initials="J." surname="Peterson"/>
          <author fullname="J. Morris" initials="J." surname="Morris"/>
          <author fullname="M. Hansen" initials="M." surname="Hansen"/>
          <author fullname="R. Smith" initials="R." surname="Smith"/>
          <date month="July" year="2013"/>
          <abstract>
            <t>This document offers guidance for developing privacy considerations for inclusion in protocol specifications. It aims to make designers, implementers, and users of Internet protocols aware of privacy-related design choices. It suggests that whether any individual RFC warrants a specific privacy considerations section will depend on the document's content.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6973"/>
        <seriesInfo name="DOI" value="10.17487/RFC6973"/>
      </reference>
      <reference anchor="I-D.yao-cats-awareness-architecture">
        <front>
          <title>Computing and Network Information Awareness (CNIA) system architecture for CATS</title>
          <author fullname="Huijuan Yao" initials="H." surname="Yao">
            <organization>China Mobile</organization>
          </author>
          <author fullname="xuewei wang" initials="X." surname="wang">
            <organization>Ruijie Networks</organization>
          </author>
          <author fullname="Zhiqiang Li" initials="Z." surname="Li">
            <organization>China Mobile</organization>
          </author>
          <author fullname="Daniel Huang" initials="D." surname="Huang">
            <organization>New H3C Technologies</organization>
          </author>
          <author fullname="Changwang Lin" initials="C." surname="Lin">
            <organization>New H3C Technologies</organization>
          </author>
          <date day="22" month="October" year="2023"/>
          <abstract>
            <t>   This document describes a Computing and Network Information
   Awareness (CNIA)system architecture for Computing-Aware Traffic
   Steering (CATS). Based on the CATS framework, this document further
   describes a proposal detailed awareness architecture about the
   network information and computing information. It includes a new
   component and the corresponding interfaces and workflows in the CATS
   control plane.



            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-yao-cats-awareness-architecture-02"/>
      </reference>
    </references>
    <?line 610?>

<section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors would like to thank Joel Halpern, John Scudder, Dino Farinacci, Adrian Farrel,
Cullen Jennings, Linda Dunbar, Jeffrey Zhang, Peng Liu, Fang Gao, Aijun Wang, Cong Li,
Xinxin Yi, Jari Arkko, Mingyu Wu, Haibo Wang, Xia Chen, Jianwei Mao, Guofeng Qian, Zhenbin Li,
Xinyue Zhang, Weier Li, and Nagendra Kumar for their comments and suggestions.</t>
      <t>Some text about various deployment models was originally documented in <xref target="I-D.yao-cats-awareness-architecture"/>.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="G." surname="Huang" fullname="Guangping Huang">
        <organization>ZTE</organization>
        <address>
          <email>huang.guangping@zte.com.cn</email>
        </address>
      </contact>
      <contact initials="G." surname="Mishra" fullname="Gyan Mishra">
        <organization>Verizon Inc.</organization>
        <address>
          <email>hayabusagsm@gmail.com</email>
        </address>
      </contact>
      <contact initials="H." surname="Yao" fullname="Huijuan Yao">
        <organization>China Mobile</organization>
        <address>
          <email>yaohuijuan@chinamobile.com</email>
        </address>
      </contact>
      <contact initials="Y." surname="Li" fullname="Yizhou Li">
        <organization>Huawei Technologies</organization>
        <address>
          <email>liyizhou@huawei.com</email>
        </address>
      </contact>
      <contact initials="D." surname="Trossen" fullname="Dirk Trossen">
        <organization>Huawei Technologies</organization>
        <address>
          <email>dirk.trossen@huawei.com</email>
        </address>
      </contact>
      <contact initials="L." surname="Iannone" fullname="Luigi Iannone">
        <organization>Huawei Technologies</organization>
        <address>
          <email>luigi.iannone@huawei.com</email>
        </address>
      </contact>
      <contact initials="H." surname="Shi" fullname="Hang Shi">
        <organization>Huawei Technologies</organization>
        <address>
          <email>shihang9@huawei.com</email>
        </address>
      </contact>
      <contact initials="C." surname="Lin" fullname="Changwang Lin">
        <organization>New H3C Technologies</organization>
        <address>
          <email>linchangwang.04414@h3c.com</email>
        </address>
      </contact>
      <contact initials="X." surname="Wang" fullname="Xueshun Wang">
        <organization>CICT</organization>
        <address>
          <email>xswang@fiberhome.com</email>
        </address>
      </contact>
      <contact initials="X." surname="Wang" fullname="Xuewei Wang">
        <organization>Ruijie Networks</organization>
        <address>
          <email>wangxuewei1@ruijie.com.cn</email>
        </address>
      </contact>
      <contact initials="C." surname="Jacquenet" fullname="Christian Jacquenet">
        <organization>Orange</organization>
        <address>
          <email>christian.jacquenet@orange.com</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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
3rSmxHF3HfT8qVyAwu+vFxOR1SEBqCWC0tugtFOxVAvDKhbgMr00Noz1FJXP
jzTtu2mTXkFYLGxrJ0ODBel5Wq+XDcQRJdgx4qdoK0ZGp6Xnm/KU9c7bNJ9w
TmC7paI/rGTX6zJfTGDo1YrUafsSOSS5F8JWqPEvOEDCWTQ4ssYyM70b4RAX
03pZPdWjaxqb7Vzo0Mak6MvQ2x1ExRaxtwdsoCY5Kt8gUJiPDd5NIfmFXBrG
tpcp+IG/87QCnEztYmPKA8jqH/Tqi1MvPMubfR01c2mGI9Onuky0xsuOdret
NRYooDsxT5TXYySgZpBJ9MNF9zjGuIYUlaRzdhuvjKQFW1BC1Ab9XAMu5mnl
bGcRWjX2wdQjZBHq3jO4jH0iTvgr3ALVqk3/ahArE6qwplmonFip+iZq/FFL
Kzq5OntAwhTGKghV8y5ceCUVwnsYSo0aMnQv0B2bitMRFeog3bEKzxHtobk1
UmdL0YE478yQDokaqIr8HPPk9OQuJr8TdRAvaDRBkMvTd++vqPLJH6/ffXf7
XGTul89ffEkyt41foyRgWj3TJkp15ihTL16CeIzYgAOUJb+NVpHmq3qE5HgJ
xrBdHCwfnJ8wHFBktolcVOBiAgsV51QvJCWhj2K12VCl+kVMdSfRQwMFvWtH
gO/BmVm7qemGYKR5JABVeuB4CbR1DvvpOv51NsySjH/y7OSCAseHG8vXHC6G
DTiK/PyELB9yqRFFTGn6hKESd7ZgAOeBnLj1xRZ0fvIvHLiwzqo91RTDKnrh
EM8PDPH8RJxWbj3JyfMTfysQ95D8YAhfFFywDPqTQglQuhyc6Z5psjS6D+HG
nuiLTE36oqH7kOvxir5Zbylq1J59lrAJzhNJno0tjJ6xp6n/4vw00JiZ0nmE
QRV/59pmm7Dmd1gNjpPbZ2Tg7vpa/BVQDfC9QVnqRV14KqRlH07YQLimK6MF
aYewyWmYw1AlpHUHqPYCpCP7fhPpJ4RDrTcmSZ6JmuYpRMh1HacH/BmhsS1P
3+Hz3dG0sKqVwqbJZZ4H9uC2O4/Q77/hHCmJBRoohxcXI3pp+1pnk0nik7or
CowDQubiB+klekhPBEtPkGvIH+cnp9LOj43fk/VfS7FDt+zAatLrygVxhzn8
YT6cPT89zLUnLflND8l++6iezqM99fMeL34zif4uIp/2nsSfn8UzBh/Wyb0s
MZqseVQn08nk3sL1cCfxhOn7hy2H8jilSBc/wHb4tJMT+R8zm2hFgCcEl6OB
O5hqboF7Dp2cdd4OJrh3knKD5dxLwX79CDpR8XigjtZZdGQlXfedzHKdQr8Y
xYV/DoJKAfsbuVUNjRSf+Fmnq06jfoI+Ul2LS/FGR4zUKYuwf/O5Ua8cQrdI
xX40HJou//dINBzafKrjYdHw+bGE4r7/57HLiR2Gs6Na9isqMKJdE6KFcsK/
0xTiv4sQAo/s4snEUpXzBxDs7gf7ZjHAqOzv4lF88vmDOO75OPp5L8O9I89r
mjvGPzr9kct/sUz2yuqMfKcGyMh+mMlbVBlPxHmpKmi2X4UgjwqGmnlXz2Fk
6cGo18AobeOHUSDvR+TsC1qN22eCKeguhGlqElNISUNkn7ZqdCC68r0yBius
pm547bJzWxZN3/mibLp/EMu/1yfi5wyLksGCoL3tV/LZ1tH7EjH+CvW+WGBR
NyZEr16KeE+cLCrmBr0LMnBH7KuC6nUaqToV+/VO04Pl1of2F5deH9/foVO+
r7+BMz/U2ivHFfyUft2zBnV/iJzRb9rrRf6vZZ2kl+nQUviroV461cS6zNrj
ivt6gd9/90fr9OBx+QO9BGVIO//2RPnDvURl1g6fP9xLVJjv8Orz/6i5xET5
B0P3GFne9uIJ1kMC3bAwb3vxZHpPnI/NJZyRHSIyFyffDwre0V68V12BKi7z
+8s629/Lwblwiax7pQyDCt5eiVkF598IZegrCkgQnhzqpbOifr0uS6v29YI/
Ovj3e1bkfd7VPjodHqh6u08d8RDvqF7ij72jdKCXYdw98/WRo+v49tD1yBXt
LwMX1V9jo0dUk6EuHzWXULs5uNMDK+jVqDu2l87MrJrCfR1fazk+l0h5K09q
O0bw9wJAKJnea27l/o6/IJDh/r/xFdjSrN4KOQUukmEhodJpYlM3gnYSI+kK
AHjXUARJnh0C+f+ML2AIGC6lrXOduMBE6t/GYwLIlu9FTpE1/z/OnC8hT5rD
zFkqmmTWnRuP290ffObUq84N0Q/Un4rBYK9INIDqUX3dCZt5Z4/7xIrmQXif
76p6Nj4fP++FzNK88Vg86yczxDDB+Rq03xf05GUvRh+dnfG8EetViWq1mnrC
S0kjDs/zsb00ZjARI36kb/TwhdUBYBqghEczD2WuAzGFHdSZ7YILXWz6WDxZ
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

-->

</rfc>
