<?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.35 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-cats-framework-24" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.32.0 -->
  <front>
    <title abbrev="CATS Framework">A Framework for Computing-Aware Traffic Steering (CATS)</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-cats-framework-24"/>
    <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="2026" month="April" day="02"/>
    <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 109?>

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

<section anchor="introduction">
      <name>Introduction</name>
      <t>Computing service architectures evolved from a 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 dynamic networking environments with variable computing service resources.</t>
      <t>Today, organizations often distribute user services across on-premises and cloud service provider networks. To support both redundancy and responsiveness, the Computing-Aware Traffic Steering (CATS) framework supports single or multiple service instances providing one given service, which may exist in one or more service sites. Clients access service instances via client-facing service functions known as service contact instances. 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 resource limitations in a specific service site.</t>
      <t>Steering in CATS aims to select the appropriate service contact instance to service a request according to a set of network and computing metrics. This selection may not reveal the actual service instance that a client will invoke, e.g., in hierarchical or recursive contexts. Therefore, the metrics of the service contact instance may be aggregate metrics from multiple service instances.</t>
      <t>The CATS framework is an overlay framework for the selection of the suitable service contact instances from a set of candidates. The overlay is realized by means of encapsulation between CATS Forwarders. A combination of networking and computing metrics determines the exact characterization of services as 'suitable' or not.</t>
      <t>Furthermore, this document describes a workflow of the main CATS procedures (<xref target="sec-cats-workflow"/>) executed in both the control and data planes. The framework covers only the case of a single service provider.</t>
      <t>This document assumes that CATS functional elements are hosted in a provider network. As such, it is out of scope to discuss deployment options where such elements are co-located with a client.</t>
      <t>It is out of the scope of this document to provide a comprehensive list of CATS realization techniques or assess how existing mechanisms meet all CATS requirements.</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 connects to a service provider network.</t>
        </dd>
        <dt>Flow:</dt>
        <dd>
          <t>A logical grouping of packets during a time interval, identified by some fields from the packet header, such as the 5-tuple transport coordinates (source address and destination address, source and destination port numbers, and protocol). Flow identification should also cover contexts where port numbers are not present (non-initial fragments, IP Encapsulating Security Payload (ESP) <xref target="RFC4303"/>, etc.).</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. The CATS framework leverages various metrics to enable computing-aware traffic steering policies.</t>
        </dd>
        <dt>Metric:</dt>
        <dd>
          <t>A quantitative measure that provides suitable input to a selection mechanism for CATS decision-making. It can be a network metric or a computing metric.</t>
        </dd>
        <dt>Computing metrics:</dt>
        <dd>
          <t>Metrics specific to the computing resources in the underlying CATS systems as opposed to other metrics, such as network metrics. Examples of computing metrics are discussed in <xref target="I-D.ietf-cats-metric-definition"/>.</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>The service provider retains control of internal resources and the service logic. 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 provider structures its services remains out of the scope of CATS.</t>
        </dd>
        <dt/>
        <dd>
          <t>Service providers may provide the same service in many locations; each of them constitutes a service instance.</t>
        </dd>
        <dt>Computing Service:</dt>
        <dd>
          <t>A service offered to a client 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>A collection of running resources that are orchestrated following a service logic. When invoked by a client request, these resources will collectively provide the intended service.</t>
        </dd>
        <dt/>
        <dd>
          <t>A service provider may enable many service instances that adhere to the same service logic to provide the same service.</t>
        </dd>
        <dt/>
        <dd>
          <t>A service instance runs in a service site and one or more instances may service clients' requests.</t>
        </dd>
        <dt>Service site:</dt>
        <dd>
          <t>A location that hosts the resources that implement one or more service instances.</t>
        </dd>
        <dt/>
        <dd>
          <t>A service site may be a node or a set of nodes.</t>
        </dd>
        <dt>Service contact instance:</dt>
        <dd>
          <t>A client-facing function 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 contact instance processes a client's service request 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>Clients may access a service 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. CATS-Forwarders steer a service request to a service contact instance.</t>
        </dd>
        <dt/>
        <dd>
          <t>Clients generate service requests using service-specific protocols.</t>
        </dd>
        <dt/>
        <dd>
          <t>Clients send service requests to a service instance (identified by a CS-ID), without explicit knowledge of CATS-Forwarders.</t>
        </dd>
        <dt>CATS-Forwarder:</dt>
        <dd>
          <t>A network entity that steers traffic specific to a service request towards a service contact instance according to forwarding decisions supplied by a CATS Path Selector (C-PS), which may or may not be part of a CATS-Forwarder.</t>
        </dd>
        <dt/>
        <dd>
          <t>A CATS-Forwarder may behave as an Ingress or Egress CATS-Forwarder. See <xref target="sec-ocr"/>.</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 hosts the service contact instance selected to satisfy the initial service request.</t>
        </dd>
        <dt>Egress CATS-Forwarder:</dt>
        <dd>
          <t>An entity located at the end of a CATS-computed path which connects to a service site.</t>
        </dd>
        <dt>CATS Path Selector (C-PS):</dt>
        <dd>
          <t>A functional entity that selects paths towards service sites and instances (and thus service contact instances) in order to accommodate the requirements of service requests. The 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 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 coordinates with the Ingress CATS-Forwarder so that such packets are placed onto a path computed by the C-PS that leads to the selected 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 a service might be provided by one or multiple service instances. Such instances may be hosted within the same or distinct service sites. A given service is represented by the same service identifier (<xref target="cats-ids"/>). CATS does not make any additional assumption about these instances other than that 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 (ID) representing a service, which the clients use to access it. Such an ID identifies all the instances of a given service, regardless of their locations.</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>
          <dt/>
          <dd>
            <t>This document makes no assumptions about the structure or semantics of this identifier. One example of such an ID is a unicast IP address, which uniquely identifies the location of a service 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="368" width="488" viewBox="0 0 488 368" 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 144,104 L 144,152" 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,224" 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,160" fill="none" stroke="black"/>
                <path d="M 448,240 L 448,272" fill="none" stroke="black"/>
                <path d="M 464,160 L 464,176" fill="none" stroke="black"/>
                <path d="M 464,272 L 464,288" fill="none" stroke="black"/>
                <path d="M 472,32 L 472,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 472,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 472,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 392,224 L 408,224" 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 392,320 L 408,320" 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)"/>
                <polygon class="arrowhead" points="152,152 140,146.4 140,157.6" fill="black" transform="rotate(90,144,152)"/>
                <polygon class="arrowhead" points="152,104 140,98.4 140,109.6" fill="black" transform="rotate(270,144,104)"/>
                <g class="text">
                  <text x="124" y="52">Management</text>
                  <text x="192" y="52">Plane</text>
                  <text x="432" y="68">C-SMA</text>
                  <text x="128" y="84">Control</text>
                  <text x="184" y="84">Plane</text>
                  <text x="116" y="180">Data</text>
                  <text x="160" y="180">Plane</text>
                  <text x="440" y="196">Service</text>
                  <text x="440" y="212">Contact</text>
                  <text x="444" y="228">Instance</text>
                  <text x="440" y="308">Service</text>
                  <text x="444" y="324">Instance</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
   .----------------------------------.  |         .---------.
   |         Management Plane         |  |         |         |
   +----------------------------------+  |<=======>|  C-SMA  |
   |           Control Plane          |  |         |         |
   '----------------------------------'  |         '---+-----'
                    ^                    |             |
                    |                    |             |
                    v                    |             |
   .----------------------------------.  |         .---+----.
   |           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 the 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 forwarding, including classifying packets, steering them onto chosen paths toward selected service contact instances, and forwarding the packets along the paths to the service contact instances.</t>
          </li>
        </ul>
        <t>Depending on implementation and deployment, these planes may consist of several functional components, and the details will be described in the following sections. For example, the control plane may consist of C-PS, C-NMA, etc. The data plane may consist of CATS-Forwarders, C-TC, etc.</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 components and their interactions are shown in <xref target="fig-cats-components"/>. These components are described in the subsections that follow.</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,32 L 24,48" 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 56,592 L 56,640" fill="none" stroke="black"/>
                <path d="M 64,48 L 64,80" fill="none" stroke="black"/>
                <path d="M 64,464 L 64,528" fill="none" stroke="black"/>
                <path d="M 72,576 L 72,592" fill="none" stroke="black"/>
                <path d="M 80,32 L 80,64" fill="none" stroke="black"/>
                <path d="M 80,448 L 80,464" fill="none" stroke="black"/>
                <path d="M 88,560 L 88,576" fill="none" stroke="black"/>
                <path d="M 96,368 L 96,448" fill="none" stroke="black"/>
                <path d="M 104,144 L 104,176" fill="none" stroke="black"/>
                <path d="M 136,528 L 136,560" fill="none" stroke="black"/>
                <path d="M 144,592 L 144,640" fill="none" stroke="black"/>
                <path d="M 160,320 L 160,368" fill="none" stroke="black"/>
                <path d="M 160,576 L 160,624" fill="none" stroke="black"/>
                <path d="M 176,48 L 176,80" fill="none" stroke="black"/>
                <path d="M 176,560 L 176,608" fill="none" stroke="black"/>
                <path d="M 184,336 L 184,368" fill="none" stroke="black"/>
                <path d="M 192,32 L 192,48" fill="none" stroke="black"/>
                <path d="M 192,112 L 192,208" fill="none" stroke="black"/>
                <path d="M 192,464 L 192,528" fill="none" stroke="black"/>
                <path d="M 200,368 L 200,448" fill="none" stroke="black"/>
                <path d="M 208,80 L 208,128" fill="none" stroke="black"/>
                <path d="M 216,448 L 216,512" 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,160" fill="none" stroke="black"/>
                <path d="M 288,160 L 288,208" fill="none" stroke="black"/>
                <path d="M 288,576 L 288,624" fill="none" stroke="black"/>
                <path d="M 296,320 L 296,400" fill="none" stroke="black"/>
                <path d="M 296,464 L 296,528" fill="none" stroke="black"/>
                <path d="M 304,560 L 304,576" fill="none" stroke="black"/>
                <path d="M 312,112 L 312,208" fill="none" stroke="black"/>
                <path d="M 312,448 L 312,464" fill="none" stroke="black"/>
                <path d="M 328,48 L 328,80" fill="none" stroke="black"/>
                <path d="M 344,32 L 344,48" fill="none" stroke="black"/>
                <path d="M 352,528 L 352,560" fill="none" stroke="black"/>
                <path d="M 360,80 L 360,112" fill="none" stroke="black"/>
                <path d="M 360,400 L 360,448" fill="none" stroke="black"/>
                <path d="M 368,240 L 368,272" fill="none" stroke="black"/>
                <path d="M 376,576 L 376,624" fill="none" stroke="black"/>
                <path d="M 384,48 L 384,80" fill="none" stroke="black"/>
                <path d="M 392,560 L 392,608" fill="none" stroke="black"/>
                <path d="M 400,32 L 400,64" fill="none" stroke="black"/>
                <path d="M 400,464 L 400,528" fill="none" stroke="black"/>
                <path d="M 424,448 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 448,112 L 448,208" fill="none" stroke="black"/>
                <path d="M 24,32 L 80,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 64,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 64,64 L 80,64" fill="none" stroke="black"/>
                <path d="M 232,64 L 248,64" fill="none" stroke="black"/>
                <path d="M 384,64 L 400,64" fill="none" stroke="black"/>
                <path d="M 8,80 L 64,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 56,144 L 192,144" fill="none" stroke="black"/>
                <path d="M 312,144 L 448,144" fill="none" stroke="black"/>
                <path d="M 232,160 L 288,160" fill="none" stroke="black"/>
                <path d="M 104,176 L 192,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 80,448 L 216,448" fill="none" stroke="black"/>
                <path d="M 312,448 L 424,448" fill="none" stroke="black"/>
                <path d="M 64,464 L 192,464" fill="none" stroke="black"/>
                <path d="M 296,464 L 400,464" fill="none" stroke="black"/>
                <path d="M 192,512 L 216,512" fill="none" stroke="black"/>
                <path d="M 400,512 L 424,512" fill="none" stroke="black"/>
                <path d="M 64,528 L 192,528" fill="none" stroke="black"/>
                <path d="M 296,528 L 400,528" fill="none" stroke="black"/>
                <path d="M 88,560 L 176,560" fill="none" stroke="black"/>
                <path d="M 304,560 L 392,560" fill="none" stroke="black"/>
                <path d="M 72,576 L 160,576" fill="none" stroke="black"/>
                <path d="M 288,576 L 376,576" fill="none" stroke="black"/>
                <path d="M 56,592 L 144,592" fill="none" stroke="black"/>
                <path d="M 160,608 L 176,608" fill="none" stroke="black"/>
                <path d="M 376,608 L 392,608" fill="none" stroke="black"/>
                <path d="M 144,624 L 160,624" fill="none" stroke="black"/>
                <path d="M 288,624 L 376,624" fill="none" stroke="black"/>
                <path d="M 56,640 L 144,640" fill="none" stroke="black"/>
                <g class="text">
                  <text x="36" y="68">client</text>
                  <text x="204" y="68">client</text>
                  <text x="356" y="68">client</text>
                  <text x="116" y="132">C-TC#1</text>
                  <text x="372" y="132">C-TC#2</text>
                  <text x="148" y="164">C-PS#1</text>
                  <text x="372" y="164">CATS-Forwarder</text>
                  <text x="440" y="164">4</text>
                  <text x="260" y="180">C-PS#2</text>
                  <text x="28" y="196">......</text>
                  <text x="116" y="196">CATS-Forwarder</text>
                  <text x="184" y="196">2</text>
                  <text x="212" y="196">....</text>
                  <text x="300" y="196">..</text>
                  <text x="464" 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="272" y="356">.....</text>
                  <text x="456" y="356">....:</text>
                  <text x="352" y="388">C-SMA#2</text>
                  <text x="128" y="484">Service</text>
                  <text x="344" y="484">Service</text>
                  <text x="128" y="500">Contact</text>
                  <text x="344" y="500">Contact</text>
                  <text x="132" y="516">Instance</text>
                  <text x="348" y="516">Instance</text>
                  <text x="328" y="596">Service</text>
                  <text x="96" y="612">Service</text>
                  <text x="332" y="612">Instance</text>
                  <text x="100" y="628">Instance</text>
                  <text x="304" y="644">Service</text>
                  <text x="356" y="644">Site</text>
                  <text x="384" y="644">2</text>
                  <text x="72" y="660">Service</text>
                  <text x="124" y="660">Site</text>
                  <text x="152" y="660">1</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 2
          Service Site 1
]]></artwork>
          </artset>
        </figure>
        <section anchor="sec-service-sites">
          <name>Service Sites, Service 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 the 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. There may be one or more C-SMAs in a deployment.</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-PSes) (<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 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"/>, a Software-Defined Networking (SDN) controller <xref target="RFC7149"/><xref target="RFC7426"/>).</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. C-TCs 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. To that aim, a C-TC uses CS-IDs (or their resolution of CS-ID to network locators) to classify service requests. Refer to <xref target="sec-cats-provisioning"/> for more details about required provisioning actions.</t>
          <t>CS-IDs may be carried in packets if mechanisms such as TLS Server Name Indication extension (SNI) (<xref section="3" sectionFormat="of" target="RFC6066"/>) are used. Such exposure is not possible if extensions such as <xref target="RFC9849"/> are used. Relying upon non-volatile and explicit signals (e.g., <xref target="RFC8558"/>) is thus encouraged for efficient classification rules. Note that once classified, packets will be encapsulated as described in <xref target="sec-access"/>.</t>
          <t>C-TCs are typically hosted in CATS-Forwarders.</t>
        </section>
        <section anchor="sec-ocr">
          <name>CATS-Forwarders</name>
          <t>Ingress CATS-Forwarders are responsible for steering service-specific traffic along a CATS-computed path that leads to an Egress CATS-Forwarder. Egress CATS-Forwarders are the elements that behave as an egress for service requests that are forwarded over a CATS infrastructure.</t>
          <t>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 the traffic to the relevant service contact instance accordingly.</t>
          <t>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>
    <section anchor="sec-cats-workflow">
      <name>CATS Framework Workflow</name>
      <t>The following subsections provide an overview of a typical CATS workflow. In order to enable CATS in a given domain, some provisioning is needed; see more details in <xref target="sec-cats-provisioning"/>. <xref target="sec-cats-deployment"/> describes several deployment options (distributed, centralized, and hybrid models) to accommodate a variety of contexts.</t>
      <section anchor="service-announcement">
        <name>Service Announcement</name>
        <t>A service is associated by the service provider 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 or 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, 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 the deployment choice, CS-IDs with metrics may be distributed in different ways. Refer to <xref target="sec-metric-implementation"/> for more deployment considerations.</t>
        <t>The computing metrics include computing-related metrics and potentially other service-specific metrics like the number of clients that access the service contact instance at any given time, etc.</t>
        <t>Computing metrics may change very frequently (e.g., see <xref section="5.3" sectionFormat="of" 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, policy-based updates, or using normalized metrics.</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>
      </section>
      <section anchor="sec-access">
        <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 or logically centralized (in the centralized or hybrid models (<xref target="sec-cats-deployment"/>)).</t>
        <t>This document does not specify any specific algorithm for path selection purposes to be supported by C-PSes so as not to 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>Note that, a service request to access the service 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"/><xref target="RFC8986"/>, or Real-Time Streaming Protocol (RTSP) <xref target="RFC7826"/>) that carry the CS-ID and potential parameters. When a matching classification entry maintained by a C-TC 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>
      </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 request 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. A CATS framework implementation must ensure that service instance selection and path steering decisions remain consistent for a flow. Specifically, the same Egress CATS-Forwarder needs to be solicited to forward the packets.</t>
        <t>Ensuring service affinity for flows is a feature that can be configured on the C-PS when the service is deployed (i.e., all flows bound to a service) or determined at the time of newly formulated service requests (i.e., specific flow).</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 to C-TCs in particular, 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 or packet 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="operational-considerations">
      <name>Operational Considerations</name>
      <section anchor="sec-cats-provisioning">
        <name>Provisioning of CATS Components</name>
        <t>Enabling CATS in a network can be done incrementally. That is, not all ingress routers (Provider Edges (PEs), typically) need to be upgraded to support CATS.</t>
        <t>In addition to the CATS steering policies that are communicated by a C-PS to an Ingress CATS-Forwarder, some provisioning tasks are required. This includes, but is not limited to:</t>
        <ul spacing="normal">
          <li>
            <t>Provide C-PS elements with the locators of available Ingress CATS-Forwarders/C-TCs. Such locators may also be discovered from the network.</t>
          </li>
          <li>
            <t>Supply information needed to connect C-PS elements with C-NMAs and C-SMAs.</t>
          </li>
          <li>
            <t>Allocate identifiers CS-ID/CSCI-ID and bind them to specific service contact instances.</t>
          </li>
          <li>
            <t>Provide C-PS elements with the set of optimization metrics (per service) and an optimization policy.</t>
          </li>
          <li>
            <t>Configure specific encapsulation capabilities of CATS-Forwarders for use, including any credentials for mutual authentication between peer CATS-Forwarders.</t>
          </li>
          <li>
            <t>Reset the classification table of C-TC elements.</t>
          </li>
          <li>
            <t>Provide C-TCs with initial classification rules based on the classification capabilities (<xref target="sec-oam"/>).</t>
          </li>
          <li>
            <t>Set the traffic counters at CATS-Forwarders to ease correlation between both Ingress and Egress CATS-Forwarders. Such a correlation is needed to help identify issues induced by the underlying encapsulation.</t>
          </li>
        </ul>
        <t>Provisioning includes configuration as well as distribution through protocols. Specifically, the above tasks can be enabled using a variety of means (NETCONF <xref target="RFC6241"/>, IPFIX <xref target="RFC7011"/>, RESTCONF <xref target="RFC8040"/>, YANG-Push <xref target="RFC8639"/>, etc.). It is out of scope to discuss required CATS extensions to these protocols.</t>
      </section>
      <section anchor="sec-oam">
        <name>Supervision of CATS Components &amp; CATS OAM</name>
        <t>Also, companion supervision and OAM tools are needed to drive CATS provisioning but also to assess the overall CATS operations. This includes, but is not limited to:</t>
        <ul spacing="normal">
          <li>
            <t>Expose classification capabilities of C-TC elements.</t>
          </li>
          <li>
            <t>Expose encapsulation capabilities supported by CATS-Forwarders.</t>
          </li>
          <li>
            <t>Retrieve the active classification table of C-TC elements.</t>
          </li>
          <li>
            <t>Retrieve active steering rules in CATS-Forwarders.</t>
          </li>
          <li>
            <t>Retrieve active installed policies in C-PSes.</t>
          </li>
          <li>
            <t>Retrieve the traffic counters at CATS-Forwarders to ease correlation between both Ingress and Egress CATS-Forwarders.</t>
          </li>
          <li>
            <t>Enable OAM tools to check the correct behavior of various entities (e.g., classification rules, steering rules, and forwarding behavior). See also <xref target="sec-verify"/>.</t>
          </li>
          <li>
            <t>Enable OAM tools for performance measurement.</t>
          </li>
        </ul>
      </section>
      <section anchor="sec-cats-deployment">
        <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 centralized C-PS) and distributed CATS functions (e.g., C-TCs) is deployment-specific, which may reflect the preferences and policies of the (CATS) service provider. The deployment can also be informed by specific use case requirements <xref target="I-D.ietf-cats-usecases-requirements"/>.</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 a service request comes. Based on the metrics and computed paths, the C-PS can select the most appropriate path and then synchronize with C-TCs.</t>
        <t>According to the method of distributing and collecting the computing 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 element (e.g., network controller). 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 centralized control elements. These elements then compute the forwarding path for service requests and syncs up with Ingress CATS-Forwarders. In this model, C-PS is implemented in a centralized control element.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt><strong>Hybrid model</strong>:</dt>
              <dd>
                <t>Is a combination of distributed 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 element. For example, some static information (e.g., capabilities information) can be distributed among network devices since they are quite stable (i.e., change infrequently). Frequent changing information (e.g., resource utilization) can be collected by a centralized control element to avoid frequent flooding in the distributed control plane. Service scheduling function can be performed by a centralized control element, Ingress CATS-Forwarders (co-located with a C-PS), or both depending on the specific deployment policies.</t>
              </dd>
              <dt/>
              <dd>
                <t>When path computation is distributed, centralized control elements have to communicate the path information they collect to Ingress CATS-Forwarders (co-located with a C-PS) so that they take into account the full set of metrics for service scheduling.</t>
              </dd>
            </dl>
          </li>
        </ul>
        <t>Examples to illustrate these models are provided in <xref target="sec-appendix"/>.</t>
        <t>The framework covers only the case of a single service provider. Deployment considerations about the case of multiple service providers are out of scope.</t>
      </section>
      <section anchor="sec-metric-implementation">
        <name>Implementation Considerations on Using CATS Metrics</name>
        <t>Advertising per-instance computing-related metrics instead of aggregating them into per-site advertisements has scalability implications on involved CATS elements. Special care should be considered by providers when enabling per-instance metric distribution.</t>
        <t>Computing metrics need to be normalized (i.e., convert metric values with or without units into unitless scores), aggregated, or a combination thereof in order to soften the scalability impact while providing sufficient detail for effective CATS decision-making. See, e.g., <xref target="I-D.ietf-cats-metric-definition"/> for a discussion on metrics and distribution approaches.</t>
        <t>Depending on the resources and processing capabilities of CATS components, the normalization and aggregation functions can be located in different CATS components. An approach is to implement the normalization and aggregation functions located away from C-PSes, especially when C-PSes are co-located with CATS-Forwarders. With this in mind, the normalization and aggregation functions of CATS metrics can be placed at service contact instances or C-SMAs.</t>
        <t>When C-SMAs are co-located with CATS-Forwarders where there is limited resource for processing, the placement of normalization functions in a C-SMA may bring too much overhead and may influence the routing efficiency. Therefore, this document suggests implementing the normalization function at the service contact instances. Regarding the aggregation functions, it can be implemented in a C-SMA or the service contact instances.</t>
        <t>In order to ensure consistent CATS decisions, the same normalization and aggregation functions must be enabled in all involved CATS components. Also, in the case of service contact instances and C-SMAs are provided by different vendors, it is needed to use the same common normalization function and aggregation functions, so that the service contact instance selection result can be fair among all the service contact instances. To that aim, a set of normalization and aggregation functions must standardized. To accommodate contexts where multiple functions are supported, CATS implementations must expose a configuration parameter to control the activation of normalization and aggregation functions.</t>
      </section>
      <section anchor="sec-verify">
        <name>Verifying Correct Operations</name>
        <t>A CATS implementation must log error events for better network management and operation. Means to assess the reachability and trace CATS paths should be supported.</t>
      </section>
      <section anchor="impact-on-network-operations">
        <name>Impact on Network Operations</name>
        <t>Computing metrics are collected and distributed in CATS. A new function is needed to be deployed to manage the cooperation between network elements and computing elements. For example, this function may be provided by an orchestrator connecting with C-SMA and C-NMA. This might bring more complexity of the network management, especially if this function is not leveraged for other purposes beyond CATS.</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 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-SMAs need to support a mechanism to authenticate the services for which they provide information to C-PS computation logics, among other CATS functions.</t>
      <t>This document focuses on the scenario of a single service provider. Hence, security considerations relevant to deployment with multiple service providers are out of scope.</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., determining 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 a client.</t>
      <t>CATS involves user-related data (e.g., access patterns, service requests) across service sites. Identifying a service site does not necessarily identify the service that is being invoked (typically, a service site may host many services, let alone that service instances may be relocated to other sites). However, when unambiguous correlation can be established between a service request and a service site, the binding of a service request and a service contact instance is sensitive, and such information should be encrypted.</t>
      <t>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. As such, the exact implementation details are out of the scope of this document.</t>
      <t>This document focuses on the scenario of a single service provider. Hence, privacy considerations relevant to deployment with multiple service providers are out of scope.</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 request 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="2" month="February" year="2026"/>
          <abstract>
            <t>   Distributed computing enhances service response time and energy
   efficiency by utilizing diverse computing facilities for compute-
   intensive and delay-sensitive services.  To optimize throughput and
   response time, "Computing-Aware Traffic Steering" (CATS) selects
   servers and directs traffic based on compute capabilities and
   resources, rather than static dispatch or connectivity metrics alone.
   This document outlines the problem statement and scenarios for CATS
   within a single domain, and drives requirements for the CATS
   framework.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-cats-usecases-requirements-14"/>
      </reference>
      <reference anchor="RFC4303">
        <front>
          <title>IP Encapsulating Security Payload (ESP)</title>
          <author fullname="S. Kent" initials="S." surname="Kent"/>
          <date month="December" year="2005"/>
          <abstract>
            <t>This document describes an updated version of the Encapsulating Security Payload (ESP) protocol, which is designed to provide a mix of security services in IPv4 and IPv6. ESP is used to provide confidentiality, data origin authentication, connectionless integrity, an anti-replay service (a form of partial sequence integrity), and limited traffic flow confidentiality. This document obsoletes RFC 2406 (November 1998). [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="4303"/>
        <seriesInfo name="DOI" value="10.17487/RFC4303"/>
      </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="I-D.ietf-cats-metric-definition">
        <front>
          <title>CATS Metrics Definition</title>
          <author fullname="Kehan Yao" initials="K." surname="Yao">
            <organization>China Mobile</organization>
          </author>
          <author fullname="Cheng Li" initials="C." surname="Li">
            <organization>Huawei Technologies</organization>
          </author>
          <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
            <organization>Telefonica</organization>
          </author>
          <author fullname="Jordi Ros-Giralt" initials="J." surname="Ros-Giralt">
            <organization>Qualcomm Europe, Inc.</organization>
          </author>
          <author fullname="Guanming Zeng" initials="G." surname="Zeng">
            <organization>Huawei Technologies</organization>
          </author>
          <date day="1" month="March" year="2026"/>
          <abstract>
            <t>   Computing-Aware Traffic Steering (CATS) is a traffic engineering
   approach that optimizes the steering of traffic to a given service
   instance by considering the dynamic nature of computing and network
   resources.  In order to consider the computing and network resources,
   a system needs to share information (metrics) that describes the
   state of the resources.  Metrics from network domain have been in use
   in network systems for a long time.  This document defines a set of
   metrics from the computing domain used for CATS.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-cats-metric-definition-06"/>
      </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="RFC7149">
        <front>
          <title>Software-Defined Networking: A Perspective from within a Service Provider Environment</title>
          <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
          <author fullname="C. Jacquenet" initials="C." surname="Jacquenet"/>
          <date month="March" year="2014"/>
          <abstract>
            <t>Software-Defined Networking (SDN) has been one of the major buzz words of the networking industry for the past couple of years. And yet, no clear definition of what SDN actually covers has been broadly admitted so far. This document aims to clarify the SDN landscape by providing a perspective on requirements, issues, and other considerations about SDN, as seen from within a service provider environment.</t>
            <t>It is not meant to endlessly discuss what SDN truly means but rather to suggest a functional taxonomy of the techniques that can be used under an SDN umbrella and to elaborate on the various pending issues the combined activation of such techniques inevitably raises. As such, a definition of SDN is only mentioned for the sake of clarification.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7149"/>
        <seriesInfo name="DOI" value="10.17487/RFC7149"/>
      </reference>
      <reference anchor="RFC7426">
        <front>
          <title>Software-Defined Networking (SDN): Layers and Architecture Terminology</title>
          <author fullname="E. Haleplidis" initials="E." role="editor" surname="Haleplidis"/>
          <author fullname="K. Pentikousis" initials="K." role="editor" surname="Pentikousis"/>
          <author fullname="S. Denazis" initials="S." surname="Denazis"/>
          <author fullname="J. Hadi Salim" initials="J." surname="Hadi Salim"/>
          <author fullname="D. Meyer" initials="D." surname="Meyer"/>
          <author fullname="O. Koufopavlou" initials="O." surname="Koufopavlou"/>
          <date month="January" year="2015"/>
          <abstract>
            <t>Software-Defined Networking (SDN) refers to a new approach for network programmability, that is, the capacity to initialize, control, change, and manage network behavior dynamically via open interfaces. SDN emphasizes the role of software in running networks through the introduction of an abstraction for the data forwarding plane and, by doing so, separates it from the control plane. This separation allows faster innovation cycles at both planes as experience has already shown. However, there is increasing confusion as to what exactly SDN is, what the layer structure is in an SDN architecture, and how layers interface with each other. This document, a product of the IRTF Software-Defined Networking Research Group (SDNRG), addresses these questions and provides a concise reference for the SDN research community based on relevant peer-reviewed literature, the RFC series, and relevant documents by other standards organizations.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7426"/>
        <seriesInfo name="DOI" value="10.17487/RFC7426"/>
      </reference>
      <reference anchor="RFC6066">
        <front>
          <title>Transport Layer Security (TLS) Extensions: Extension Definitions</title>
          <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd"/>
          <date month="January" year="2011"/>
          <abstract>
            <t>This document provides specifications for existing TLS extensions. It is a companion document for RFC 5246, "The Transport Layer Security (TLS) Protocol Version 1.2". The extensions specified are server_name, max_fragment_length, client_certificate_url, trusted_ca_keys, truncated_hmac, and status_request. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6066"/>
        <seriesInfo name="DOI" value="10.17487/RFC6066"/>
      </reference>
      <reference anchor="RFC9849">
        <front>
          <title>TLS Encrypted Client Hello</title>
          <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
          <author fullname="K. Oku" initials="K." surname="Oku"/>
          <author fullname="N. Sullivan" initials="N." surname="Sullivan"/>
          <author fullname="C. A. Wood" initials="C. A." surname="Wood"/>
          <date month="March" year="2026"/>
          <abstract>
            <t>This document describes a mechanism in Transport Layer Security (TLS) for encrypting a message under a server public key.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9849"/>
        <seriesInfo name="DOI" value="10.17487/RFC9849"/>
      </reference>
      <reference anchor="RFC8558">
        <front>
          <title>Transport Protocol Path Signals</title>
          <author fullname="T. Hardie" initials="T." role="editor" surname="Hardie"/>
          <date month="April" year="2019"/>
          <abstract>
            <t>This document discusses the nature of signals seen by on-path elements examining transport protocols, contrasting implicit and explicit signals. For example, TCP's state machine uses a series of well-known messages that are exchanged in the clear. Because these are visible to network elements on the path between the two nodes setting up the transport connection, they are often used as signals by those network elements. In transports that do not exchange these messages in the clear, on-path network elements lack those signals. Often, the removal of those signals is intended by those moving the messages to confidential channels. Where the endpoints desire that network elements along the path receive these signals, this document recommends explicit signals be used.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8558"/>
        <seriesInfo name="DOI" value="10.17487/RFC8558"/>
      </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="RFC8986">
        <front>
          <title>Segment Routing over IPv6 (SRv6) Network Programming</title>
          <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
          <author fullname="P. Camarillo" initials="P." role="editor" surname="Camarillo"/>
          <author fullname="J. Leddy" initials="J." surname="Leddy"/>
          <author fullname="D. Voyer" initials="D." surname="Voyer"/>
          <author fullname="S. Matsushima" initials="S." surname="Matsushima"/>
          <author fullname="Z. Li" initials="Z." surname="Li"/>
          <date month="February" year="2021"/>
          <abstract>
            <t>The Segment Routing over IPv6 (SRv6) Network Programming framework enables a network operator or an application to specify a packet processing program by encoding a sequence of instructions in the IPv6 packet header.</t>
            <t>Each instruction is implemented on one or several nodes in the network and identified by an SRv6 Segment Identifier in the packet.</t>
            <t>This document defines the SRv6 Network Programming concept and specifies the base set of SRv6 behaviors that enables the creation of interoperable overlays with underlay optimization.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8986"/>
        <seriesInfo name="DOI" value="10.17487/RFC8986"/>
      </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="RFC6241">
        <front>
          <title>Network Configuration Protocol (NETCONF)</title>
          <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
          <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
          <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
          <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
          <date month="June" year="2011"/>
          <abstract>
            <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6241"/>
        <seriesInfo name="DOI" value="10.17487/RFC6241"/>
      </reference>
      <reference anchor="RFC7011">
        <front>
          <title>Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of Flow Information</title>
          <author fullname="B. Claise" initials="B." role="editor" surname="Claise"/>
          <author fullname="B. Trammell" initials="B." role="editor" surname="Trammell"/>
          <author fullname="P. Aitken" initials="P." surname="Aitken"/>
          <date month="September" year="2013"/>
          <abstract>
            <t>This document specifies the IP Flow Information Export (IPFIX) protocol, which serves as a means for transmitting Traffic Flow information over the network. In order to transmit Traffic Flow information from an Exporting Process to a Collecting Process, a common representation of flow data and a standard means of communicating them are required. This document describes how the IPFIX Data and Template Records are carried over a number of transport protocols from an IPFIX Exporting Process to an IPFIX Collecting Process. This document obsoletes RFC 5101.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="77"/>
        <seriesInfo name="RFC" value="7011"/>
        <seriesInfo name="DOI" value="10.17487/RFC7011"/>
      </reference>
      <reference anchor="RFC8040">
        <front>
          <title>RESTCONF Protocol</title>
          <author fullname="A. Bierman" initials="A." surname="Bierman"/>
          <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
          <author fullname="K. Watsen" initials="K." surname="Watsen"/>
          <date month="January" year="2017"/>
          <abstract>
            <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8040"/>
        <seriesInfo name="DOI" value="10.17487/RFC8040"/>
      </reference>
      <reference anchor="RFC8639">
        <front>
          <title>Subscription to YANG Notifications</title>
          <author fullname="E. Voit" initials="E." surname="Voit"/>
          <author fullname="A. Clemm" initials="A." surname="Clemm"/>
          <author fullname="A. Gonzalez Prieto" initials="A." surname="Gonzalez Prieto"/>
          <author fullname="E. Nilsen-Nygaard" initials="E." surname="Nilsen-Nygaard"/>
          <author fullname="A. Tripathy" initials="A." surname="Tripathy"/>
          <date month="September" year="2019"/>
          <abstract>
            <t>This document defines a YANG data model and associated mechanisms enabling subscriber-specific subscriptions to a publisher's event streams. Applying these elements allows a subscriber to request and receive a continuous, customized feed of publisher-generated information.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8639"/>
        <seriesInfo name="DOI" value="10.17487/RFC8639"/>
      </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 535?>

<section anchor="sec-appendix">
      <name>Deployment Examples</name>
      <t>This section provides examples to illustrate examples of CATS metrics distribution. These examples are not deployment recommendations.</t>
      <t>The following example mainly describes a per-instance computing-related metric distribution for illustration purposes. Such information may be aggregated into a single advertisement.</t>
      <section anchor="sec-met-dist1">
        <name>Distributed Model</name>
        <t><xref target="fig-cats-example-overlay"/> shows an example of how CATS metrics can be disseminated in the distributed model.</t>
        <t>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>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)). Similarly, the C-SMA located at "Service Site 3" advertises the computing metrics for the two services hosted by "Service Site 3". The C-SMA may distribute the computing metrics to the Egress "CATS-Forwarder 3". Then, the computing metrics can be redistributed by the Egress CATS-Forwarder to the Ingress CATS-Forwarder. The C-SMA also may directly distribute the computing metrics to the Ingress CATS-Forwarder.</t>
        <t>The computing metrics 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>
        <t>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>
        <figure anchor="fig-cats-example-overlay">
          <name>An Example of CATS Metric Dissemination in the Distributed Model</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="592" width="576" viewBox="0 0 576 592" 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,256 L 48,304" 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 200,416 L 200,448" 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 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 304,384 L 304,416" fill="none" stroke="black"/>
                <path d="M 304,456 L 304,496" fill="none" stroke="black"/>
                <path d="M 336,208 L 336,240" fill="none" stroke="black"/>
                <path d="M 336,416 L 336,448" fill="none" stroke="black"/>
                <path d="M 376,416 L 376,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,416" fill="none" stroke="black"/>
                <path d="M 424,448 L 424,496" fill="none" stroke="black"/>
                <path d="M 432,128 L 432,192" fill="none" stroke="black"/>
                <path d="M 440,416 L 440,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,480 L 456,512" fill="none" stroke="black"/>
                <path d="M 520,480 L 520,512" 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 456,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 392,160 L 432,160" fill="none" stroke="black"/>
                <path d="M 264,176 L 384,176" fill="none" stroke="black"/>
                <path d="M 456,176 L 536,176" fill="none" stroke="black"/>
                <path d="M 432,192 L 456,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 240,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 456,384" fill="none" stroke="black"/>
                <path d="M 456,400 L 536,400" fill="none" stroke="black"/>
                <path d="M 200,416 L 336,416" fill="none" stroke="black"/>
                <path d="M 376,416 L 440,416" fill="none" stroke="black"/>
                <path d="M 152,432 L 200,432" fill="none" stroke="black"/>
                <path d="M 336,432 L 376,432" fill="none" stroke="black"/>
                <path d="M 200,448 L 336,448" fill="none" stroke="black"/>
                <path d="M 376,448 L 440,448" fill="none" stroke="black"/>
                <path d="M 456,480 L 520,480" fill="none" stroke="black"/>
                <path d="M 304,496 L 392,496" fill="none" stroke="black"/>
                <path d="M 424,496 L 456,496" fill="none" stroke="black"/>
                <path d="M 456,512 L 520,512" fill="none" stroke="black"/>
                <path d="M 144,528 L 392,528" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="312,456 300,450.4 300,461.6" fill="black" transform="rotate(270,304,456)"/>
                <path class="jump" d="M 224,280 C 230,280 230,264 224,264" 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="160,432 148,426.4 148,437.6" fill="black" transform="rotate(180,152,432)"/>
                <polygon class="arrowhead" points="152,528 140,522.4 140,533.6" fill="black" transform="rotate(180,144,528)"/>
                <polygon class="arrowhead" points="152,80 140,74.4 140,85.6" fill="black" transform="rotate(180,144,80)"/>
                <g class="text">
                  <text x="88" y="36">Service</text>
                  <text x="144" y="36">CS-ID</text>
                  <text x="180" y="36">1,</text>
                  <text x="224" y="36">contact</text>
                  <text x="292" y="36">instance</text>
                  <text x="360" y="36">CSCI-ID</text>
                  <text x="400" y="36">1</text>
                  <text x="452" y="36">&lt;computing</text>
                  <text x="532" y="36">metrics&gt;</text>
                  <text x="88" y="52">Service</text>
                  <text x="144" y="52">CS-ID</text>
                  <text x="180" y="52">1,</text>
                  <text x="224" y="52">contact</text>
                  <text x="292" y="52">instance</text>
                  <text x="360" y="52">CSCI-ID</text>
                  <text x="400" y="52">2</text>
                  <text x="452" y="52">&lt;computing</text>
                  <text x="532" 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="488" y="116">CS-ID</text>
                  <text x="520" 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="488" y="196">CS-ID</text>
                  <text x="520" 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="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="488" y="372">CS-ID</text>
                  <text x="520" 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="136" y="420">:</text>
                  <text x="136" y="436">:</text>
                  <text x="260" y="436">CATS-Forwarder</text>
                  <text x="328" y="436">3</text>
                  <text x="408" 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="136" y="500">:</text>
                  <text x="400" y="500">:</text>
                  <text x="480" y="500">CS-ID</text>
                  <text x="512" y="500">2</text>
                  <text x="136" y="516">:</text>
                  <text x="400" y="516">:</text>
                  <text x="136" y="532">:</text>
                  <text x="400" y="532">:</text>
                  <text x="88" y="548">Service</text>
                  <text x="144" y="548">CS-ID</text>
                  <text x="180" y="548">1,</text>
                  <text x="224" y="548">contact</text>
                  <text x="292" y="548">instance</text>
                  <text x="360" y="548">CSCI-ID</text>
                  <text x="400" y="548">3</text>
                  <text x="452" y="548">&lt;computing</text>
                  <text x="532" y="548">metrics&gt;</text>
                  <text x="88" y="564">Service</text>
                  <text x="144" y="564">CS-ID</text>
                  <text x="180" y="564">2,</text>
                  <text x="236" y="564">&lt;computing</text>
                  <text x="316" y="564">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>
      </section>
      <section anchor="sec-met-dist2">
        <name>Centralized Model</name>
        <t>An example of metrics distribution in the centralized model is illustrated in <xref target="fig-cats-centralized"/>.</t>
        <t>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 separately with the "CATS-Forwarder 1". Similarly, the C-SMA 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>
        <figure anchor="fig-cats-centralized">
          <name>An Example of CATS Metric Distribution in the Centralized Model</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="592" width="584" viewBox="0 0 584 592" 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,320 L 48,368" 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,336" 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,376" fill="none" stroke="black"/>
                <path d="M 208,392 L 208,464" fill="none" stroke="black"/>
                <path d="M 216,112 L 216,160" fill="none" stroke="black"/>
                <path d="M 232,320 L 232,352" fill="none" stroke="black"/>
                <path d="M 256,352 L 256,384" fill="none" stroke="black"/>
                <path d="M 280,144 L 280,208" fill="none" stroke="black"/>
                <path d="M 288,272 L 288,304" fill="none" stroke="black"/>
                <path d="M 288,464 L 288,496" fill="none" stroke="black"/>
                <path d="M 288,528 L 288,560" fill="none" stroke="black"/>
                <path d="M 296,320 L 296,352" 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 432,432 L 432,480" fill="none" stroke="black"/>
                <path d="M 440,304 L 440,384" fill="none" stroke="black"/>
                <path d="M 448,480 L 448,512" 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,384" fill="none" stroke="black"/>
                <path d="M 512,432 L 512,480" fill="none" stroke="black"/>
                <path d="M 536,128 L 536,320" fill="none" stroke="black"/>
                <path d="M 536,368 L 536,560" fill="none" stroke="black"/>
                <path d="M 160,112 L 216,112" fill="none" stroke="black"/>
                <path d="M 104,128 L 160,128" fill="none" stroke="black"/>
                <path d="M 224,128 L 536,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 408,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 344,224 L 376,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 408,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 440,304 L 488,304" fill="none" stroke="black"/>
                <path d="M 8,320 L 80,320" fill="none" stroke="black"/>
                <path d="M 232,320 L 296,320" fill="none" stroke="black"/>
                <path d="M 488,320 L 536,320" fill="none" stroke="black"/>
                <path d="M 184,336 L 232,336" fill="none" stroke="black"/>
                <path d="M 232,352 L 296,352" fill="none" stroke="black"/>
                <path d="M 8,368 L 144,368" fill="none" stroke="black"/>
                <path d="M 496,368 L 536,368" fill="none" stroke="black"/>
                <path d="M 152,384 L 256,384" fill="none" stroke="black"/>
                <path d="M 440,384 L 488,384" fill="none" stroke="black"/>
                <path d="M 144,400 L 208,400" fill="none" stroke="black"/>
                <path d="M 8,416 L 144,416" fill="none" stroke="black"/>
                <path d="M 432,432 L 512,432" fill="none" stroke="black"/>
                <path d="M 208,464 L 392,464" fill="none" stroke="black"/>
                <path d="M 432,480 L 512,480" fill="none" stroke="black"/>
                <path d="M 176,496 L 312,496" fill="none" stroke="black"/>
                <path d="M 312,512 L 448,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 408,560" fill="none" stroke="black"/>
                <path d="M 472,560 L 536,560" fill="none" stroke="black"/>
                <path d="M 408,576 L 472,576" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="504,368 492,362.4 492,373.6" fill="black" transform="rotate(180,496,368)"/>
                <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)"/>
                <path class="jump" d="M 208,392 C 214,392 214,376 208,376" fill="none" stroke="black"/>
                <path class="jump" d="M 208,344 C 214,344 214,328 208,328" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="192,168 180,162.4 180,173.6" fill="black" transform="rotate(270,184,168)"/>
                <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="168" y="36">Service</text>
                  <text x="224" y="36">CS-ID</text>
                  <text x="260" y="36">1,</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="168" y="52">Service</text>
                  <text x="224" y="52">CS-ID</text>
                  <text x="260" y="52">1,</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="168" y="68">Service</text>
                  <text x="224" y="68">CS-ID</text>
                  <text x="260" y="68">1,</text>
                  <text x="308" y="68">instance</text>
                  <text x="376" y="68">CSCI-ID</text>
                  <text x="416" y="68">3</text>
                  <text x="468" y="68">&lt;computing</text>
                  <text x="548" y="68">metrics&gt;</text>
                  <text x="168" y="84">Service</text>
                  <text x="224" y="84">CS-ID</text>
                  <text x="260" y="84">2,</text>
                  <text x="316" y="84">&lt;computing</text>
                  <text x="396" 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="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="264" y="340">C-NMA</text>
                  <text x="96" y="356">:</text>
                  <text x="464" y="356">C-SMA</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="464" y="468">CSCI-ID</text>
                  <text x="504" y="468">3</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>
      </section>
      <section anchor="sec-met-dist3">
        <name>Hybrid Model</name>
        <t>An example of metrics distribution in the hybrid model is illustrated in <xref target="fig-cats-hybrid"/>.</t>
        <t>For example, the metrics 1, 2, and 3 associated with the "CS-ID 1" 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-ID 2", 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 subsequent packets accessing the same service.</t>
        <figure anchor="fig-cats-hybrid">
          <name>An Example of CATS Metric Distribution in the Hybrid Model</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="624" width="568" viewBox="0 0 568 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,304 L 48,368" fill="none" stroke="black"/>
                <path d="M 48,416 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,320" 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,376" fill="none" stroke="black"/>
                <path d="M 224,392 L 224,448" fill="none" stroke="black"/>
                <path d="M 248,304 L 248,336" fill="none" stroke="black"/>
                <path d="M 264,336 L 264,384" fill="none" stroke="black"/>
                <path d="M 296,128 L 296,192" fill="none" stroke="black"/>
                <path d="M 304,256 L 304,288" fill="none" stroke="black"/>
                <path d="M 304,448 L 304,480" fill="none" stroke="black"/>
                <path d="M 304,512 L 304,544" fill="none" stroke="black"/>
                <path d="M 312,304 L 312,336" 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,416 L 432,464" fill="none" stroke="black"/>
                <path d="M 448,464 L 448,496" fill="none" stroke="black"/>
                <path d="M 464,288 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,416" 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,288 L 512,368" fill="none" stroke="black"/>
                <path d="M 512,416 L 512,464" fill="none" stroke="black"/>
                <path d="M 544,352 L 544,544" fill="none" stroke="black"/>
                <path d="M 560,112 L 560,304" fill="none" stroke="black"/>
                <path d="M 560,336 L 560,576" fill="none" stroke="black"/>
                <path d="M 168,96 L 224,96" fill="none" stroke="black"/>
                <path d="M 112,112 L 168,112" fill="none" stroke="black"/>
                <path d="M 232,112 L 560,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 424,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 360,208 L 392,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 424,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 464,288 L 512,288" fill="none" stroke="black"/>
                <path d="M 8,304 L 80,304" fill="none" stroke="black"/>
                <path d="M 248,304 L 312,304" fill="none" stroke="black"/>
                <path d="M 512,304 L 560,304" fill="none" stroke="black"/>
                <path d="M 192,320 L 248,320" fill="none" stroke="black"/>
                <path d="M 248,336 L 312,336" fill="none" stroke="black"/>
                <path d="M 512,336 L 560,336" fill="none" stroke="black"/>
                <path d="M 520,352 L 544,352" 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 264,384" fill="none" stroke="black"/>
                <path d="M 144,400 L 224,400" fill="none" stroke="black"/>
                <path d="M 8,416 L 144,416" fill="none" stroke="black"/>
                <path d="M 432,416 L 512,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 432,464 L 512,464" fill="none" stroke="black"/>
                <path d="M 192,480 L 328,480" fill="none" stroke="black"/>
                <path d="M 328,496 L 448,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 424,544" fill="none" stroke="black"/>
                <path d="M 488,544 L 544,544" fill="none" stroke="black"/>
                <path d="M 424,560 L 488,560" fill="none" stroke="black"/>
                <path d="M 112,576 L 560,576" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="528,352 516,346.4 516,357.6" fill="black" transform="rotate(180,520,352)"/>
                <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)"/>
                <path class="jump" d="M 224,392 C 230,392 230,376 224,376" fill="none" stroke="black"/>
                <path class="jump" d="M 224,328 C 230,328 230,312 224,312" fill="none" stroke="black"/>
                <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="104" y="36">Service</text>
                  <text x="160" y="36">CS-ID</text>
                  <text x="196" y="36">1,</text>
                  <text x="244" y="36">instance</text>
                  <text x="312" y="36">CSCI-ID</text>
                  <text x="352" y="36">1</text>
                  <text x="404" y="36">&lt;computing</text>
                  <text x="476" y="36">metric</text>
                  <text x="532" y="36">1,2,3&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="244" y="52">instance</text>
                  <text x="312" y="52">CSCI-ID</text>
                  <text x="352" y="52">2</text>
                  <text x="404" y="52">&lt;computing</text>
                  <text x="476" y="52">metric</text>
                  <text x="532" y="52">1,2,3&gt;</text>
                  <text x="104" y="68">Service</text>
                  <text x="160" y="68">CS-ID</text>
                  <text x="196" y="68">1,</text>
                  <text x="244" y="68">instance</text>
                  <text x="312" y="68">CSCI-ID</text>
                  <text x="352" y="68">3</text>
                  <text x="404" y="68">&lt;computing</text>
                  <text x="476" y="68">metric</text>
                  <text x="532" y="68">1,2,3&gt;</text>
                  <text x="104" y="84">Service</text>
                  <text x="160" y="84">CS-ID</text>
                  <text x="196" y="84">2,</text>
                  <text x="252" y="84">&lt;computing</text>
                  <text x="332" 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="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="280" 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="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="456" y="436">CS-ID</text>
                  <text x="488" y="436">1</text>
                  <text x="104" y="452">:</text>
                  <text x="464" y="452">CSCI-ID</text>
                  <text x="504" y="452">3</text>
                  <text x="104" 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="104" y="580">:</text>
                  <text x="56" y="596">Service</text>
                  <text x="112" y="596">CS-ID</text>
                  <text x="148" y="596">1,</text>
                  <text x="192" y="596">contact</text>
                  <text x="260" y="596">instance</text>
                  <text x="328" y="596">CSCI-ID</text>
                  <text x="372" y="596">3,</text>
                  <text x="428" y="596">&lt;computing</text>
                  <text x="500" y="596">metric</text>
                  <text x="548" 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>
    <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, Quan Xiong, Nagendra Kumar, and Taylor Paul 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>
      <t>Special thanks to Adrian Farrel for the careful shepherd review and various suggestions that enhanced this document.</t>
      <t>Thanks to Ines Robles and Linda Dunbar for the RTGDIR reviews, Giuseppe Fioccola and Gyan Mishra for the OPSDIR reviews,
Thomas Fossati for the GENART review, Linda Dunbar for the SECDIR review, and Tommy Pauly for the TSVDIR review.</t>
      <t>Thanks Eric Vyncke, Ketan Talaulikar, Christopher Inacio, and Deb Cooley for the IESG review.</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>DaPaDOT Tech UG (haftungsbeschraenkt)</organization>
        <address>
          <email>dirk@dapadot-tech.eu</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:
H4sIAAAAAAAAA9V92XYbV5LgO74ij3zOkDQB2Nq8sKprzKYki25LZoss21Vz
puYkgCSQViITnQsp2FS993/Mn/SPTax3y5sAparqOoMHW8zMu8WNG3vEnUwm
ozZvi+wkOU1e1Ok6u63qt8l1VSdn1XrTtXm5nJzepnWWXNXp9XU+Ty7bLKvh
cXJ4dnp1eTRKZ7M6uzlJ8C/bxWiettmyqrcnSV5eV6PRopqX8O4kWUA/7STP
2usJfNNMrrXJ5NGTUdPN1nnT5FV5td3Ax+fPr16Mym49y+qT0QK6PBnNq7LJ
yqZrTpK27rIRDP14BBNMT5I3FU04wb9G2OWyrrrNSYLjjN5mW3i0OBklE7u2
vavEr//YZHXy/N0GHmTlPOMOiiKdVXXa5jdZ8jprcTT5/DKrb/J5llSbNl/n
v8InVTmCaS/g/UnSNZO0mef5aJOfJP+rrebjpKnqts6uG/jXdo3/+N+jUdq1
q6rGyY4SgCAs9myafJ/DHwzFs1UGs6cHVb1MSxnnJHnZpbdZnlxl81VZFdUy
zxr4JluneQGAmBbfrOiD6bxaw/O6wq3PFnlb1fDnvOrKFvfsbJWXqTP4n6fJ
s84M/ueqXG5wfHrmj08tk1fVLC8yO/Ci+1XafDPHD9b0XiYRGzW57oqCR3tV
reD/i+Rfq26eLtIcJxoM+kOdlkscLlyQ7Rswk/bOTGnN3U5n2u03FfXCkwrm
8H2XN8mrKew79JbVadOfw1VWZNdVmc9Tb9zLTZqXzrAF9LTOl11WwEDS2bqr
86KovmlNF84kCP7fAfzr9C3Nn2f0XbUqk+f2qT+Z83KRAbQXWdk6Y/+S/Z8F
fv/NNl1VlUDfTvWPZd4CnC9bOGdNUl0np2tAeVjPiGaaz7rWoCRP4tsOILbB
c/QS/8XIAPhx9dxu/QrfTJf65Te/tgTi6bz0etqmZfIqb1Z1qr38CIMD1sBa
5lOnu3SbzromXTbrb5b4yIKKe3rZ5b/AYMmf0kp7iuPkNq1W/G0fJ213f8p/
XVWdOWl7DliRb+l775TZzp7lQFyv6qoBCqb9PUsv0mc/XFGHyR+/TQ5XQB+7
ctnMsma+qv/r/5Zv2yPnJEEX3yzSTbqo2kkLbaZZ5w4BmLrMk/O0LKsyu9+c
scU05xYDE38Ju5dcru4HhGaVr+D7r3t9WTpWOoQMPr1NiZiVPWryOrtNXj4+
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
aF4VmR3h/Pnlt6b//wcd38LsM90AAA==

-->

</rfc>
