<?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.6.25 (Ruby 3.1.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ldbc-cats-framework-01" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.16.0 -->
  <front>
    <title abbrev="CATS Framework">A Framework for Computing-Aware Traffic Steering (CATS)</title>
    <seriesInfo name="Internet-Draft" value="draft-ldbc-cats-framework-01"/>
    <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>Juniper Networks, Inc.</organization>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>jdrake@juniper.net</email>
      </address>
    </author>
    <author initials="G." surname="Huang" fullname="Guangping Huang">
      <organization>ZTE</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>huang.guangping@zte.com.cn</email>
      </address>
    </author>
    <author initials="G." surname="Mishra" fullname="Gyan Mishra">
      <organization>Verizon Inc.</organization>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>hayabusagsm@gmail.com</email>
      </address>
    </author>
    <date year="2023" month="March" day="10"/>
    <area>Routing area</area>
    <workgroup>cats</workgroup>
    <keyword>User Experience</keyword>
    <keyword>Collaborative Networking</keyword>
    <keyword>Service optimization</keyword>
    <abstract>
      <t>This document describes a framework for Computing-Aware Traffic Steering (CATS). Particularly, the document identifies a set of CATS components, describes their interactions, and exemplifies the workflow of the control and data planes.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Edge computing architectures have been expanding from single edge nodes to multiple, sometimes collaborative, edge nodes to address various issues (e.g., long response times or suboptimal service and network resource usage).</t>
      <t>The underlying networking infrastructures that include edge computing resources usually provide relatively static service dispatching (that is, the selection of the sevice instances that will be invoked for a request). In such infrastructures, service-specific traffic is often directed to the closest edge resource from a routing perspective without considering the actual network state (e.g., traffic congestion conditions).</t>
      <t>As described in <xref target="I-D.yao-cats-ps-usecases"/>, traffic steering that takes into account computing resource metrics would benefit several services, including latency-sensitive service like immersive services that rely upon the use of augmented reality or virtual reality (AR/VR) techniques. This document provides an architectural framework that aims at facilitating the making of compute- and network-aware traffic steering decisions in networking environments where edge computing resources are deployed.</t>
      <t>The Computing-Aware Traffic Steering (CATS) framework assumes that there may be multiple service instances running on different edge nodes, globally providing one given service. A single edge node may have limited computing resources available at a given time, whereas the various edge nodes may experience different resource availability issues over time. A single edge node may also host multiple instances of a service or just one service instance.</t>
      <t>The CATS framework is an ingress-based overlay framework for the selection of the suitable service instance(s) from a set of instance candidates. The exact characterization of 'suitable' will be determined by a combination of networking and computing metrics. To that aim, the CATS framework assumes that edge nodes collaborate with each other under a single administrative domain to achieve a global objective of dispatching service demands (and thereby optimizing their processing by the most relevant edge computing resources) over the various and available edge computing resources, by taking into account both service instance status and network state (e.g., reachability considerations, path cost, and traffic congestion conditions).</t>
      <t>Also, this document describes a workflow of the main CATS procedures that are executed in both the control and data planes.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>This document makes use of the following terms:</t>
      <dl>
        <dt>Client:</dt>
        <dd>
          <t>An endpoint that is connected to a service provider network.</t>
        </dd>
        <dt>Computing-Aware Traffic Steering (CATS):</dt>
        <dd>
          <t>A traffic engineering approach <xref target="I-D.ietf-teas-rfc3272bis"/> that takes into account the dynamic nature of computing resources and network state to optimize service-specific traffic forwarding towards a given service instance. Various relevant metrics may be used to enforce such computing-aware traffic steering policies.</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>CATS Binding ID (CB-ID):</dt>
        <dd>
          <t>An identifier of a single service instance or location of a given service instance (CS-ID). See <xref target="cats-ids"/>.</t>
        </dd>
        <dt>Service:</dt>
        <dd>
          <t>An offering provided by a service provider and which is delivered using one or more service functions <xref target="RFC7665"/>.</t>
        </dd>
        <dt>Service instance:</dt>
        <dd>
          <t>A run-time environment (e.g., a server or a process on a server) that makes a service instance available (i.e., up and running). One service can be accessed through multiple instances running at the same or different locations.</t>
        </dd>
        <dt>Service demand:</dt>
        <dd>
          <t>The demand for a service identified by a CATS Service ID (CS-ID).</t>
        </dd>
        <dt>Service request:</dt>
        <dd>
          <t>The request for a specific service instance.</t>
        </dd>
        <dt>CATS-Router:</dt>
        <dd>
          <t>A network device (usually located at the edge of the network) that makes forwarding decisions based on CATS information to steer traffic specific to a  service demand towards a corresponding yet selected service instance. The selection of a service instance relies upon a multi-metric CATS-based path computation. A CATS router may behave as Ingress or Egress CATS-Router.</t>
        </dd>
        <dt>Ingress CATS-Router:</dt>
        <dd>
          <t>A node that serves as a service access point for CATS clients. It steers service-specific traffic along a CATS-computed path that leads to an Egress CATS-Router that connects to the most suitable edge site that hots the service instance selected to satisfy the initial service demand.</t>
        </dd>
        <dt>Egress CATS-Router:</dt>
        <dd>
          <t>A node that is located at the end of a CATS-computed path and which connects to a CATS-serviced site.</t>
        </dd>
        <dt>CATS Service Metric Agent (C-SMA):</dt>
        <dd>
          <t>An agent that is responsible for collecting service capabilities and status, and for reporting them to a CATS Path Selector (C-PS). See <xref target="sec-csma"/>.</t>
        </dd>
        <dt>CATS Network Metric Agent (C-NMA):</dt>
        <dd>
          <t>A functional entity that is responsible for collecting network capabilities and status, and for reporting them to a C-PS. See <xref target="sec-cnma"/>.</t>
        </dd>
        <dt>CATS Path Selector (C-PS):</dt>
        <dd>
          <t>A computation logic that calculates and selects paths towards service locations and instances and which accommodates the requirements of service demands. Such a path computation engine takes into account the service and network status information. See <xref target="sec-cps"/>.</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 particular service demand. It is also responsible for forwarding such packets along the C-PS computed path that leads to the relevant service instance. See <xref target="sec-ctc"/>.</t>
        </dd>
      </dl>
    </section>
    <section anchor="Framework-and-concepts">
      <name>Framework and Components</name>
      <section anchor="assumptions">
        <name>Assumptions</name>
        <t>CATS assumes that there are multiple service instances running on different edge nodes, and which provide a given service that is represented by the same service identifier (see <xref target="cats-ids"/>).</t>
      </section>
      <section anchor="cats-ids">
        <name>CATS Identifiers</name>
        <t>CATS introduces the following identifiers:</t>
        <dl>
          <dt>CATS Service ID (CS-ID):</dt>
          <dd>
            <t>An identifier representing a service, which the clients use to access it. Such an ID identifies all the instances of a given service, rgardless of their location. The CS-ID is independent of which service instance serves the service demand. Service demands are spread over the service instances that can accommodate them, considering the location of the initiator of the service demand 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 Binding ID (CB-ID):</dt>
          <dd>
            <t>An identifier of a single service instance or location of a given service instance (CS-ID).</t>
          </dd>
        </dl>
      </section>
      <section anchor="sec-cat-arch">
        <name>CATS Components</name>
        <t>The network nodes make forwarding decisions for a given service demand that has been received from a client according to both service instances and network status information. The main CATS functional elements and their interactions are shown in <xref target="fig-cats-fw"/>.</t>
        <figure anchor="fig-cats-fw">
          <name>CATS Functional Components</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="576" width="464" viewBox="0 0 464 576" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px">
                <path d="M 8,48 L 8,80" fill="none" stroke="black"/>
                <path d="M 40,80 L 40,128" fill="none" stroke="black"/>
                <path d="M 40,320 L 40,368" fill="none" stroke="black"/>
                <path d="M 64,48 L 64,80" fill="none" stroke="black"/>
                <path d="M 72,32 L 72,64" fill="none" stroke="black"/>
                <path d="M 72,112 L 72,208" fill="none" stroke="black"/>
                <path d="M 72,464 L 72,512" fill="none" stroke="black"/>
                <path d="M 104,368 L 104,440" fill="none" stroke="black"/>
                <path d="M 120,152 L 120,176" fill="none" stroke="black"/>
                <path d="M 152,320 L 152,368" fill="none" stroke="black"/>
                <path d="M 176,48 L 176,80" fill="none" stroke="black"/>
                <path d="M 176,336 L 176,368" fill="none" stroke="black"/>
                <path d="M 176,464 L 176,512" fill="none" stroke="black"/>
                <path d="M 184,112 L 184,208" fill="none" stroke="black"/>
                <path d="M 184,376 L 184,440" fill="none" stroke="black"/>
                <path d="M 192,448 L 192,496" fill="none" stroke="black"/>
                <path d="M 208,80 L 208,128" 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 240,336 L 240,368" fill="none" stroke="black"/>
                <path d="M 248,32 L 248,64" fill="none" stroke="black"/>
                <path d="M 264,128 L 264,152" fill="none" stroke="black"/>
                <path d="M 288,160 L 288,208" fill="none" stroke="black"/>
                <path d="M 296,320 L 296,400" fill="none" stroke="black"/>
                <path d="M 304,464 L 304,512" fill="none" stroke="black"/>
                <path d="M 320,112 L 320,208" fill="none" stroke="black"/>
                <path d="M 336,48 L 336,80" fill="none" stroke="black"/>
                <path d="M 360,400 L 360,440" fill="none" stroke="black"/>
                <path d="M 368,80 L 368,112" fill="none" stroke="black"/>
                <path d="M 368,240 L 368,272" fill="none" stroke="black"/>
                <path d="M 392,48 L 392,80" fill="none" stroke="black"/>
                <path d="M 408,32 L 408,64" fill="none" stroke="black"/>
                <path d="M 408,320 L 408,400" fill="none" stroke="black"/>
                <path d="M 408,464 L 408,512" fill="none" stroke="black"/>
                <path d="M 424,448 L 424,496" fill="none" stroke="black"/>
                <path d="M 432,112 L 432,208" fill="none" stroke="black"/>
                <path d="M 432,240 L 432,272" fill="none" stroke="black"/>
                <path d="M 24,32 L 72,32" fill="none" stroke="black"/>
                <path d="M 192,32 L 248,32" fill="none" stroke="black"/>
                <path d="M 352,32 L 408,32" fill="none" stroke="black"/>
                <path d="M 8,48 L 56,48" fill="none" stroke="black"/>
                <path d="M 176,48 L 232,48" fill="none" stroke="black"/>
                <path d="M 336,48 L 392,48" fill="none" stroke="black"/>
                <path d="M 8,80 L 56,80" fill="none" stroke="black"/>
                <path d="M 176,80 L 232,80" fill="none" stroke="black"/>
                <path d="M 336,80 L 392,80" fill="none" stroke="black"/>
                <path d="M 72,112 L 184,112" fill="none" stroke="black"/>
                <path d="M 320,112 L 432,112" fill="none" stroke="black"/>
                <path d="M 40,128 L 72,128" fill="none" stroke="black"/>
                <path d="M 184,128 L 208,128" fill="none" stroke="black"/>
                <path d="M 264,128 L 320,128" fill="none" stroke="black"/>
                <path d="M 80,144 L 176,144" fill="none" stroke="black"/>
                <path d="M 328,144 L 424,144" fill="none" stroke="black"/>
                <path d="M 232,160 L 288,160" fill="none" stroke="black"/>
                <path d="M 120,176 L 176,176" fill="none" stroke="black"/>
                <path d="M 72,208 L 184,208" fill="none" stroke="black"/>
                <path d="M 232,208 L 288,208" fill="none" stroke="black"/>
                <path d="M 320,208 L 432,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 40,320 L 152,320" fill="none" stroke="black"/>
                <path d="M 296,320 L 408,320" fill="none" stroke="black"/>
                <path d="M 176,336 L 240,336" fill="none" stroke="black"/>
                <path d="M 40,368 L 152,368" fill="none" stroke="black"/>
                <path d="M 176,368 L 240,368" fill="none" stroke="black"/>
                <path d="M 296,368 L 408,368" fill="none" stroke="black"/>
                <path d="M 296,400 L 408,400" fill="none" stroke="black"/>
                <path d="M 88,448 L 192,448" fill="none" stroke="black"/>
                <path d="M 320,448 L 424,448" fill="none" stroke="black"/>
                <path d="M 72,464 L 176,464" fill="none" stroke="black"/>
                <path d="M 304,464 L 408,464" fill="none" stroke="black"/>
                <path d="M 72,512 L 176,512" fill="none" stroke="black"/>
                <path d="M 304,512 L 408,512" fill="none" stroke="black"/>
                <path d="M 56,48 C 64.83064,48 72,55.16936 72,64" fill="none" stroke="black"/>
                <path d="M 56,48 C 64.83064,48 72,40.83064 72,32" fill="none" stroke="black"/>
                <path d="M 56,80 C 64.83064,80 72,72.83064 72,64" fill="none" stroke="black"/>
                <g class="text">
                  <text x="36" y="68">client</text>
                  <text x="204" y="68">client</text>
                  <text x="240" y="68">-</text>
                  <text x="364" y="68">client</text>
                  <text x="400" y="68">-</text>
                  <text x="124" y="132">C-TC</text>
                  <text x="372" y="132">C-TC</text>
                  <text x="148" y="164">C-PS</text>
                  <text x="368" y="164">CATS-Router</text>
                  <text x="424" y="164">4</text>
                  <text x="36" y="180">........</text>
                  <text x="208" y="180">.....</text>
                  <text x="260" y="180">C-PS</text>
                  <text x="304" y="180">...</text>
                  <text x="448" y="180">...</text>
                  <text x="8" y="196">:</text>
                  <text x="120" y="196">CATS-Router</text>
                  <text x="176" y="196">2</text>
                  <text x="456" y="196">.</text>
                  <text x="8" y="212">:</text>
                  <text x="456" y="212">:</text>
                  <text x="8" y="228">:</text>
                  <text x="456" y="228">:</text>
                  <text x="8" y="244">:</text>
                  <text x="456" 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="456" y="260">:</text>
                  <text x="8" y="276">:</text>
                  <text x="244" y="276">Infrastructure</text>
                  <text x="456" y="276">:</text>
                  <text x="8" y="292">:</text>
                  <text x="456" y="292">:</text>
                  <text x="8" y="308">:</text>
                  <text x="456" y="308">:</text>
                  <text x="8" y="324">:</text>
                  <text x="456" y="324">:</text>
                  <text x="8" y="340">:</text>
                  <text x="88" y="340">CATS-Router</text>
                  <text x="144" y="340">1</text>
                  <text x="344" y="340">CATS-Router</text>
                  <text x="400" y="340">3</text>
                  <text x="456" y="340">:</text>
                  <text x="20" y="356">:...</text>
                  <text x="164" y="356">..</text>
                  <text x="208" y="356">C-SMA</text>
                  <text x="260" y="356">....</text>
                  <text x="288" y="356">.</text>
                  <text x="436" y="356">.....:</text>
                  <text x="352" y="388">C-SMA</text>
                  <text x="120" y="484">service</text>
                  <text x="352" y="484">service</text>
                  <text x="124" y="500">instance</text>
                  <text x="184" y="500">-</text>
                  <text x="356" y="500">instance</text>
                  <text x="416" y="500">-</text>
                  <text x="100" y="548">edge</text>
                  <text x="140" y="548">site</text>
                  <text x="168" y="548">1</text>
                  <text x="340" y="548">edge</text>
                  <text x="380" y="548">site</text>
                  <text x="408" y="548">2</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
      +-----+              +------+            +------+
    +------+|            +------+ |          +------+ |
    |client|+            |client|-+          |client|-+
    +---+--+             +---+--+            +---+--+
        |                    |                   |
        |   +-------------+  |             +-----+-------+
        +---+    C-TC     +--+      +------+    C-TC     |
            |-------------|         |      |-------------|
            |     | C-PS  |     +------+   |CATS-Router 4|
    ........|     +-------|.....| C-PS |...|             |...
    :       |CATS-Router 2|     |      |   |             |  .
    :       +-------------+     +------+   +-------------+  :
    :                                                       :
    :                                            +-------+  :
    :                         Underlay           | C-NMA |  :
    :                      Infrastructure        +-------+  :
    :                                                       :
    :                                                       :
    :   +-------------+                 +-------------+     :
    :   |CATS-Router 1|  +-------+      |CATS-Router 3|     :
    :...|             |..| C-SMA |.... .|             |.....:
        +-------+-----+  +-------+      +-------------+
                |         |             |    C-SMA    |
                |         |             +-------+-----+
                |         |                     |
                |         |                     |
              +------------+               +------------+
            +------------+ |             +------------+ |
            |  service   | |             |  service   | |
            |  instance  |-+             |  instance  |-+
            +------------+               +------------+

              edge site 1                   edge site 2
]]></artwork>
          </artset>
        </figure>
        <section anchor="sec-edges">
          <name>Edge Sites and Services Instances</name>
          <t>Edge sites (or edges for short) are the premises that provide access to edge computing resources. As mentioned in <xref target="cats-ids"/>, a compute service (e.g., for face recognition purposes or a game server) is uniquely identified by a CATS Service IDentifier (CS-ID).</t>
          <t>Service instances can be instantiated and accessed through different edge sites so that a single service can be represented and accessed by several instances that run in different regions of the network.</t>
          <t><xref target="fig-cats-fw"/> shows two edge nodes ("CATS-Router 1" and "CATS-Router 3") that provide access to service instances. These nodes behave as Egress CATS-Routers (<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 edge sites and server resources, as well as the status of the different service instances. The C-SMAs are located adjacent to the service instances and can be hosted by the Egress CATS-Routers (<xref target="sec-ocr"/>) or located next to them.</t>
          <t><xref target="fig-cats-fw"/> shows one C-SMA embedded in "CATS-Router 3", and another C-SMA that is adjacent to "CATS-Router 1".</t>
        </section>
        <section anchor="sec-cnma">
          <name>The 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 network. The C-NMAs may be implemented as standalone components or may be hosted by other components, such as CATS-Routers or CATS Path Selectors (C-PS) (<xref target="sec-cps"/>).</t>
          <t><xref target="fig-cats-fw"/> shows a single, standalone C-NMA within the underlay network. There may be one or more C-NMAs for an underlay network.</t>
        </section>
        <section anchor="sec-cps">
          <name>CATS Path Selector (C-PS)</name>
          <t>The C-SMAs and C-NMAs share the collected information with CATS Path Selectors (C-PSes) that use such information to select the Egress CATS-Routers (and potentially the service instances) where to forward traffic for a given service demand. 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 computation logic. Such an information also includes CS-ID and possibly CB-ID identifiers.</t>
          <t>There may be one or more C-PSes used to compute CATS paths. They can be integrated into CATS-Routers (e.g., "CATS-Router 2" in <xref target="fig-cats-fw"/>) or they may be standalone components that communicate with CATS-Routers (e.g., "CATS-Router 4" in <xref target="fig-cats-fw"/>).</t>
        </section>
        <section anchor="sec-ctc">
          <name>CATS Traffic Classifier (C-TC)</name>
          <t>CATS Traffic Classifier (C-TC) is a functional component that is responsible for associating incoming packets with existing service demands. CATS classifiers also ensure that packets that are bound to a specific service instance are all forwarded along the same path that leads to the same service instance, as instructed by a C-PS.</t>
          <t>CATS classifiers are typically hosted in CATS routers that are located at the edge of the network.</t>
        </section>
        <section anchor="sec-ocr">
          <name>Overlay CATS-Routers</name>
          <t>The Egress CATS-Routers are the endpoints that behave as an overlay egress for service requests that are forwatded over a CATS infrastructure. An edge location that hosts service instances may be connected to one or more Egress CATS routers (that is, multi-homing is of course a design option). If a C-PS has selected a specific service instance and the C-TC has marked the traffic with the CB-ID, the Egress CATS-Router then forwards traffic to the relevant service instance. In some cases, the choice of the service instance may be left open to the Egress CATS-Router (i.e., traffic is marked only with the CS-ID). In such cases, the Egress CATS-Router selects a service instance using its knowledge of service and network capabilities as well as the current load as observed by the CATS router, among other considerations. Absent explicit policy, an Egress CATS-Router must make sure to forward all packets that pertain to a given service demand towards the same service instance.</t>
          <t>Note that, depending on the design considerations and service requirements, per-service 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 privileged option scalability-wise, but relies on Egress CATS-Routers that connect to various service instances to select the proper service instance.</t>
        </section>
        <section anchor="underlay-infrastructure">
          <name>Underlay Infrastructure</name>
          <t>The "underlay infrastructure" in <xref target="fig-cats-fw"/> indicates an IP/MPLS network that is not necessarily CATS-aware. The CATS paths that are computed by a P-CS will be distributed among the overlay CATS-Routers (<xref target="sec-ocr"/>), and will not affect the underlay nodes.</t>
          <t>A CATS implementation may rely upon a control or management plane to distribute service metrics and network metrics - this document does not define a specific solution.</t>
        </section>
      </section>
      <section anchor="deployment-considerations">
        <name>Deployment Considerations</name>
        <t>This document does not make any assumption about how the various CATS functional elements are implemented and deployed. Concretely, whether a CATS deployment follows a fully distributed design or relies upon a mix of centralized (e.g., a C-PS) and distributed CATS functions (e.g., CATS traffic classifiers) is deployment-specific and may reflect the savoir-faire of the (CATS) service provider.</t>
        <t>Centralized designs where the computing related metrics from the C-SMAs are collected by a (logically) centralized path computation logic (e.g., a Path Computation Element (PCE) <xref target="RFC4655"/>) that also collects network metrics may be adopted. In the latter case, the CATS computation logic may process incoming service requests to compute and select paths and, therefore, service instances. The outcomes of such a computation process may then be communicated to CATS traffic classifiers (C-TCs).</t>
      </section>
    </section>
    <section anchor="cats-framework-workflow">
      <name>CATS Framework Workflow</name>
      <t>The following subsections provide an overview of how the CATS workflow operates assuming a distributed CATS design.</t>
      <section anchor="provisioning-of-cats-components">
        <name>Provisioning of CATS Components</name>
        <t>TBC: --detail required provisioning at CAST elements (booptsrapping, credentials of peer CAST nodes, services, optimization metrics per service, etc.)--</t>
      </section>
      <section anchor="service-announcement">
        <name>Service Announcement</name>
        <t>A service is associated with a unique identifier called a CS-ID. A CS-ID may be a network identifier, such as an IP address. The mapping of CS-IDs to network identifiers may be learned through a name resolution service, such as DNS <xref target="RFC1034"/>.</t>
      </section>
      <section anchor="metrics-distribution">
        <name>Metrics Distribution</name>
        <t>As described in <xref target="sec-cat-arch"/>, a C-SMA collects both service-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 instances, or maintain them separately or both. The C-SMA then advertises the CS-IDs along with the metrics to be received by all C-PSes in the network. The service metrics include computing-related metrics and potentially other service-specific metrics like the number of end-users who access the service instance at any given time, their location, etc.</t>
        <t>Computing metrics may change very frequently (see <xref target="I-D.yao-cats-ps-usecases"/> for a discussion). How frequently such information is distributed is to be determined as part of the specification of any communication protocol (including routing protocols) that may be used to distribute the information. Various options can be considered, such as (but not limited to) interval-based updates, threshold-triggered updates, or policy-based updates.</t>
        <t>Additionally, the C-NMA collects network-related capabilities and metrics. These may be collected and distributed by existing 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-Router to provide access to a service instance and invoke the compute function required by a service demand.</t>
        <t>Network metrics may also change over time. Dynamic routing protocols may take advantage of some information or capabilities to prevent the network from being flooded with state change information (e.g., Partial Route Computation (PRC) of OSPFv3 <xref target="RFC5340"/>). C-NMAs should also be configured or instructed like C-SMAs to determine when and how often updates should be notified to the C-PSes.</t>
        <t><xref target="fig-cats-example-overlay"/> shows an example of how CATS metrics can be distributed. There is a client attached to the netowrk via "CATS-Router 1". There are three instances of the service with CS-ID "1": two are located at "Edge Site 2" attached via "CATS-Router 2" and have CB-IDs "1" and "2"; the third service instance is located at "Edge Site 3" attached via "CATS-Router 3" and with CB-ID "3". There is also a second service with CS-ID "2" with only one service instance located at "Edge Site 2".</t>
        <t>In <xref target="fig-cats-example-overlay"/>, the C-SMA collocated with "CATS-Router 2" distributes the service metrics for both service instances (i.e., (CS-ID 1, CB-ID 1) and (CS-ID 1, CB-ID 2)). Note that this information may be aggregated into a single advertisement, but in this case, the metrics for each service instance are indicated separately. Similarly, the C-SMA agent located at "Edge Site 2" advertises the service metrics for the two services hosted by "Edge Site 2".</t>
        <t>The service metric advertisements are processed by the C-PS hosted by "CATS-Router 1". The C-PS also processes network metric advertisements sent by the C-NMA. All metrics are used by the C-PS to compute and select the most relevant path that leads to the Egress CATS-Router according to the initial  client's service demand, the service that is requested ("CS-ID 1" or "CS-ID 2"), the state of the service instances as reported by the metrics, and the state of the network.</t>
        <figure anchor="fig-cats-example-overlay">
          <name>Example CATS Metric Distribution</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="576" width="544" viewBox="0 0 544 576" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px">
                <path d="M 8,208 L 8,240" fill="none" stroke="black"/>
                <path d="M 8,288 L 8,320" fill="none" stroke="black"/>
                <path d="M 48,248 L 48,280" fill="none" stroke="black"/>
                <path d="M 80,208 L 80,240" fill="none" stroke="black"/>
                <path d="M 168,288 L 168,320" fill="none" stroke="black"/>
                <path d="M 224,224 L 224,248" fill="none" stroke="black"/>
                <path d="M 224,264 L 224,368" fill="none" stroke="black"/>
                <path d="M 240,240 L 240,272" fill="none" stroke="black"/>
                <path d="M 240,400 L 240,432" fill="none" stroke="black"/>
                <path d="M 272,128 L 272,192" fill="none" stroke="black"/>
                <path d="M 304,240 L 304,272" fill="none" stroke="black"/>
                <path d="M 352,400 L 352,432" fill="none" stroke="black"/>
                <path d="M 376,400 L 376,432" fill="none" stroke="black"/>
                <path d="M 384,128 L 384,192" fill="none" stroke="black"/>
                <path d="M 408,224 L 408,368" fill="none" stroke="black"/>
                <path d="M 424,112 L 424,176" fill="none" stroke="black"/>
                <path d="M 424,368 L 424,392" fill="none" stroke="black"/>
                <path d="M 424,440 L 424,464" fill="none" stroke="black"/>
                <path d="M 440,400 L 440,432" fill="none" stroke="black"/>
                <path d="M 448,80 L 448,128" fill="none" stroke="black"/>
                <path d="M 448,160 L 448,208" fill="none" stroke="black"/>
                <path d="M 456,336 L 456,384" fill="none" stroke="black"/>
                <path d="M 456,448 L 456,480" fill="none" stroke="black"/>
                <path d="M 512,80 L 512,128" fill="none" stroke="black"/>
                <path d="M 512,160 L 512,208" fill="none" stroke="black"/>
                <path d="M 520,336 L 520,384" fill="none" stroke="black"/>
                <path d="M 520,448 L 520,480" fill="none" stroke="black"/>
                <path d="M 144,64 L 320,64" fill="none" stroke="black"/>
                <path d="M 448,80 L 512,80" fill="none" stroke="black"/>
                <path d="M 424,112 L 440,112" fill="none" stroke="black"/>
                <path d="M 272,128 L 384,128" fill="none" stroke="black"/>
                <path d="M 448,128 L 512,128" fill="none" stroke="black"/>
                <path d="M 392,144 L 416,144" fill="none" stroke="black"/>
                <path d="M 272,160 L 384,160" fill="none" stroke="black"/>
                <path d="M 448,160 L 512,160" fill="none" stroke="black"/>
                <path d="M 424,176 L 440,176" fill="none" stroke="black"/>
                <path d="M 272,192 L 384,192" fill="none" stroke="black"/>
                <path d="M 8,208 L 80,208" fill="none" stroke="black"/>
                <path d="M 448,208 L 512,208" fill="none" stroke="black"/>
                <path d="M 224,224 L 408,224" fill="none" stroke="black"/>
                <path d="M 8,240 L 80,240" fill="none" stroke="black"/>
                <path d="M 240,240 L 304,240" fill="none" stroke="black"/>
                <path d="M 160,256 L 232,256" fill="none" stroke="black"/>
                <path d="M 240,272 L 304,272" fill="none" stroke="black"/>
                <path d="M 8,288 L 168,288" fill="none" stroke="black"/>
                <path d="M 176,304 L 216,304" fill="none" stroke="black"/>
                <path d="M 8,320 L 168,320" fill="none" stroke="black"/>
                <path d="M 456,336 L 520,336" fill="none" stroke="black"/>
                <path d="M 224,368 L 408,368" fill="none" stroke="black"/>
                <path d="M 424,368 L 448,368" fill="none" stroke="black"/>
                <path d="M 456,384 L 520,384" fill="none" stroke="black"/>
                <path d="M 240,400 L 352,400" fill="none" stroke="black"/>
                <path d="M 376,400 L 440,400" fill="none" stroke="black"/>
                <path d="M 240,432 L 352,432" fill="none" stroke="black"/>
                <path d="M 376,432 L 440,432" fill="none" stroke="black"/>
                <path d="M 456,448 L 520,448" fill="none" stroke="black"/>
                <path d="M 424,464 L 448,464" fill="none" stroke="black"/>
                <path d="M 456,480 L 520,480" fill="none" stroke="black"/>
                <path d="M 144,496 L 392,496" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="168,256 156,250.4 156,261.6" fill="black" transform="rotate(180,160,256)"/>
                <polygon class="arrowhead" points="152,496 140,490.4 140,501.6" fill="black" transform="rotate(180,144,496)"/>
                <polygon class="arrowhead" points="152,64 140,58.4 140,69.6" fill="black" transform="rotate(180,144,64)"/>
                <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="304" y="36">CB-ID</text>
                  <text x="336" y="36">1</text>
                  <text x="384" y="36">&lt;metrics&gt;</text>
                  <text x="104" y="52">Service</text>
                  <text x="160" y="52">CS-ID</text>
                  <text x="196" y="52">1,</text>
                  <text x="244" y="52">instance</text>
                  <text x="304" y="52">CB-ID</text>
                  <text x="336" y="52">2</text>
                  <text x="384" y="52">&lt;metrics&gt;</text>
                  <text x="136" y="68">:</text>
                  <text x="328" y="68">:</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="472" y="100">CS-ID</text>
                  <text x="504" y="100">1</text>
                  <text x="136" y="116">:</text>
                  <text x="328" y="116">:</text>
                  <text x="472" y="116">CB-ID</text>
                  <text x="504" y="116">1</text>
                  <text x="136" y="132">:</text>
                  <text x="136" y="148">:</text>
                  <text x="328" y="148">C-SMA</text>
                  <text x="468" y="148">Edge</text>
                  <text x="508" y="148">Site</text>
                  <text x="536" y="148">2</text>
                  <text x="136" y="164">:</text>
                  <text x="136" y="180">:</text>
                  <text x="320" y="180">CATS-Router</text>
                  <text x="376" y="180">2</text>
                  <text x="472" y="180">CS-ID</text>
                  <text x="504" y="180">1</text>
                  <text x="136" y="196">:</text>
                  <text x="472" y="196">CB-ID</text>
                  <text x="504" y="196">2</text>
                  <text x="136" y="212">:</text>
                  <text x="336" y="212">|</text>
                  <text x="44" y="228">Client</text>
                  <text x="136" y="228">:</text>
                  <text x="184" y="228">Network</text>
                  <text x="136" y="244">:</text>
                  <text x="184" y="244">metrics</text>
                  <text x="136" y="260">:</text>
                  <text x="152" y="260">:</text>
                  <text x="272" y="260">C-NMA</text>
                  <text x="136" y="276">:</text>
                  <text x="152" y="276">:</text>
                  <text x="56" y="308">CATS-Router</text>
                  <text x="132" y="308">1|C-PS</text>
                  <text x="316" y="324">Underlay</text>
                  <text x="136" y="340">:</text>
                  <text x="324" y="340">Infrastructure</text>
                  <text x="136" y="356">:</text>
                  <text x="480" y="356">CS-ID</text>
                  <text x="512" y="356">1</text>
                  <text x="136" y="372">:</text>
                  <text x="480" y="372">CB-ID</text>
                  <text x="512" y="372">3</text>
                  <text x="136" y="388">:</text>
                  <text x="304" y="388">|</text>
                  <text x="136" y="404">:</text>
                  <text x="136" y="420">:</text>
                  <text x="288" y="420">CATS-Router</text>
                  <text x="344" y="420">3</text>
                  <text x="364" y="420">--</text>
                  <text x="408" y="420">C-SMA</text>
                  <text x="468" y="420">Edge</text>
                  <text x="508" y="420">Site</text>
                  <text x="536" y="420">3</text>
                  <text x="136" y="436">:</text>
                  <text x="136" y="452">:</text>
                  <text x="400" y="452">:</text>
                  <text x="136" y="468">:</text>
                  <text x="400" y="468">:</text>
                  <text x="480" y="468">CS-ID</text>
                  <text x="512" y="468">2</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="104" y="516">Service</text>
                  <text x="160" y="516">CS-ID</text>
                  <text x="196" y="516">1,</text>
                  <text x="244" y="516">instance</text>
                  <text x="304" y="516">CB-ID</text>
                  <text x="336" y="516">3</text>
                  <text x="384" y="516">&lt;metrics&gt;</text>
                  <text x="104" y="532">Service</text>
                  <text x="160" y="532">CS-ID</text>
                  <text x="196" y="532">2,</text>
                  <text x="248" y="532">&lt;metrics&gt;</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
            Service CS-ID 1, instance CB-ID 1 <metrics>
            Service CS-ID 1, instance CB-ID 2 <metrics>
                   :<----------------------:
                   :                       :              +-------+
                   :                       :              |CS-ID 1|
                   :                       :           +--|CB-ID 1|
                   :                +-------------+    |  +-------+
                   :                |    C-SMA    |----|   Edge Site 2
                   :                +-------------+    |  +-------+
                   :                |CATS-Router 2|    +--|CS-ID 1|
                   :                +-------------+       |CB-ID 2|
   +--------+      :                        |             +-------+
   | Client |      :  Network +----------------------+
   +--------+      :  metrics | +-------+            |
        |          : :<---------| C-NMA |            |
        |          : :        | +-------+            |
   +-------------------+      |                      |
   |CATS-Router 1|C-PS |------|                      |
   +-------------------+      |       Underlay       |
                   :          |     Infrastructure   |     +-------+
                   :          |                      |     |CS-ID 1|
                   :          +----------------------+ +---|CB-ID 3|
                   :                    |              |   +-------+
                   :            +-------------+  +-------+
                   :            |CATS-Router 3|--| C-SMA | Edge Site 3
                   :            +-------------+  +-------+
                   :                                :  |   +-------+
                   :                                :  +---|CS-ID 2|
                   :                                :      +-------+
                   :<-------------------------------:
            Service CS-ID 1, instance CB-ID 3 <metrics>
            Service CS-ID 2, <metrics>

]]></artwork>
          </artset>
        </figure>
        <t>The example in <xref target="fig-cats-example-overlay"/> mainly describes a per-instance computing-related metric distribution. In the case of distributing aggregated per-site computing-related metrics, the per-instance CB-ID information will not be included in the advertisement. Instead, a per-site CB-ID may be used in case multiple sites are connected to the Egress CATS-Router to explicitly indicate the site the aggregated metrics come from.</t>
        <t>A CB-ID is not required if the edge site can support consistently service instance selection.</t>
      </section>
      <section anchor="service-demand-processing">
        <name>Service Demand Processing</name>
        <t>The C-PS computes paths that lead to Egress CATS-Routers according to the service and network metrics that have been advertised. The C-PS may be collocated with an Ingress CATS-Router (as shown in <xref target="fig-cats-example-overlay"/>) or logically centralized.</t>
        <t>This document does not specify any algorithm for path computation and selection purposes, but it is expected that a service demand or local policy may feed the C-PS computation logic with Objective Functions that provide some information about the path characteristics (e.g., in terms of maximum latency) and the selected service instance.</t>
        <t>In the example shown in <xref target="fig-cats-example-overlay"/>, when the client sends a service demand to "CATS-Router 1", the router solicits
the C-PS to select a service instance hosted by an edge site that can be accessed through a particular Egress CATS-Router. The C-PS also determines a path to that Egress CATS-Router. This information is provided to the Ingress CATS-Router ("CATS-Router 1") so that it can forward packets to their proper destination, as computed by the C-PS.</t>
        <t>A service transaction consists of one or more service packets sent by the client to an Ingress CATS-Router to which the client is connected to. The Ingress CATS-Router classifies incoming packets received from clients by soliciting the CATS classifier (C-TC). When a matching classification entry is found for the packets, the Ingress CATS-Router encapsulates and forwards them to the C-PS selected Egress CATS-Router. When these packets reach the Egress CATS-Router, the outer header of the possible overlay encapsulation is removed and inner packets are sent to the relevant service instance.</t>
        <ul empty="true">
          <li>
            <t>Note that multi-homed clients may be connected to multiple CATS domains that may be operated by the same or distinct service providers. This version of the framework does not cover multihoming specifics.</t>
          </li>
        </ul>
      </section>
      <section anchor="service-instance-affinity">
        <name>Service Instance Affinity</name>
        <t>Instance affinity means that packets that belong to a flow associated with a service should always be sent to the same Egress CATS-Router which will forward them to the same service 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.</t>
        <t>The affinity is determined at the time of newly formulated service demands.</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 and destination addresses, 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 instance.</t>
        <t>Hence, when specifying a protocol to communicate information about service instance affinity, a certain level of flexibility for identifying flows should be supported. Or, from a more general perspective, there should be a flexible mechanism to specify and identify the set of packets that are subject to a service instance affinity.</t>
        <t>More importantly, the means for identifying a flow for the purpose of ensuring instance affinity should be application-independent to avoid the need for service-specific instance affinity methods. However, service instance affinity information may be configurable on a per-service basis. For each service, the information can include the flow/packets identification type and means, affinity timeout value, etc.</t>
        <t>This document does not define any mechanism for defining or enforcing service instance affinity.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The computing resource information changes over time very frequently, especially with the creation and termination of service instances. When such an 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-SMA and C-NMA agents may be sensitive. Such information could indeed disclose intel about the network and the location of compute resources hosted in edge 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, up to and 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-Routers. Also, C-SMA agents need to support a mechanism to authenticate the services for which they provide information to C-PS computation logics, among other CATS functions.</t>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>Means to prevent that on-path nodes in the underlay infrastructure to fingerprint and track clients (e.g., determine which client accesses which service) must be supported by CATS solutions. More generally, personal data must not be exposed to external parties by CATS beyond what is carried in the packet that was originally issued by the client.</t>
      <t>Since the service will, in some cases, need to know about applications, clients, and even user identity, it is likely that the C-PS computed path information will need to be encrypted if the client/service communication is not already encrypted.</t>
      <t>For more discussion about privacy, refer to <xref target="RFC6462"/> and <xref target="RFC6973"/>.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document makes no requests for IANA action.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>Informative References</name>
      <reference anchor="I-D.yao-cats-ps-usecases">
        <front>
          <title>Computing-Aware Traffic Steering (CATS) Problem Statement and Use Cases</title>
          <author fullname="Kehan Yao" initials="K." surname="Yao">
            <organization>China Mobile</organization>
          </author>
          <author fullname="Philip Eardley" initials="P." surname="Eardley">
         </author>
          <author fullname="Dirk Trossen" initials="D." surname="Trossen">
            <organization>Huawei Technologies</organization>
          </author>
          <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
            <organization>Orange</organization>
          </author>
          <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
            <organization>Telefonica</organization>
          </author>
          <author fullname="Cheng Li" initials="C." surname="Li">
            <organization>Huawei Technologies</organization>
          </author>
          <author fullname="Yizhou Li" initials="Y." surname="Li">
            <organization>Huawei Technologies</organization>
          </author>
          <author fullname="Peng Liu" initials="P." surname="Liu">
            <organization>China Mobile</organization>
          </author>
          <date day="3" month="March" year="2023"/>
          <abstract>
            <t>   Many service providers have been exploring distributed computing
   techniques to achieve better service response time and optimized
   energy consumption.  Such techniques rely upon the distribution of
   computing services and capabilities over many locations in the
   network, such as its edge, the metro region, virtualized central
   office, and other locations.  In such a distributed computing
   environment, providing services by utilizing computing resources
   hosted in various computing facilities (e.g., edges) is being
   considered, e.g., for computationally intensive and delay sensitive
   services.  Ideally, services should be computationally balanced using
   service-specific metrics instead of simply dispatching the service
   requests in a static way or optimizing solely connectivity metrics.
   For example, systematically directing end user-originated service
   requests to the geographically closest edge or some small computing
   units may lead to an unbalanced usage of computing resources, which
   may then degrade both the user experience and the overall service
   performance.  We have named this kind of network with dynamic sharing
   of edge compute resources "Computing-Aware Networking" (CAN).

   This document provides the problem statement and the typical
   scenarios of CAN, which is to show the necessity of considering more
   factors when steering the traffic to the appropriate service instance
   based on the basic edge computing deployment to provide the service
   equivalency.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-yao-cats-ps-usecases-00"/>
      </reference>
      <reference anchor="I-D.ietf-teas-rfc3272bis">
        <front>
          <title>Overview and Principles of Internet Traffic Engineering</title>
          <author fullname="Adrian Farrel" initials="A." surname="Farrel">
            <organization>Old Dog Consulting</organization>
          </author>
          <date day="27" month="October" year="2022"/>
          <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.

   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="Internet-Draft" value="draft-ietf-teas-rfc3272bis-22"/>
      </reference>
      <reference anchor="RFC7665">
        <front>
          <title>Service Function Chaining (SFC) Architecture</title>
          <author fullname="J. Halpern" initials="J." role="editor" surname="Halpern">
            <organization/>
          </author>
          <author fullname="C. Pignataro" initials="C." role="editor" surname="Pignataro">
            <organization/>
          </author>
          <date month="October" year="2015"/>
          <abstract>
            <t>This document describes an architecture for the specification, creation, and ongoing maintenance of Service Function Chains (SFCs) in a network.  It includes architectural concepts, principles, and components used in the construction of composite services through deployment of SFCs, with a focus on those to be standardized in the IETF.  This document does not propose solutions, protocols, or extensions to existing protocols.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7665"/>
        <seriesInfo name="DOI" value="10.17487/RFC7665"/>
      </reference>
      <reference anchor="RFC4655">
        <front>
          <title>A Path Computation Element (PCE)-Based Architecture</title>
          <author fullname="A. Farrel" initials="A." surname="Farrel">
            <organization/>
          </author>
          <author fullname="J.-P. Vasseur" initials="J.-P." surname="Vasseur">
            <organization/>
          </author>
          <author fullname="J. Ash" initials="J." surname="Ash">
            <organization/>
          </author>
          <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="RFC1034">
        <front>
          <title>Domain names - concepts and facilities</title>
          <author fullname="P. Mockapetris" initials="P." surname="Mockapetris">
            <organization/>
          </author>
          <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">
            <organization/>
          </author>
          <author fullname="D. Ferguson" initials="D." surname="Ferguson">
            <organization/>
          </author>
          <author fullname="J. Moy" initials="J." surname="Moy">
            <organization/>
          </author>
          <author fullname="A. Lindem" initials="A." surname="Lindem">
            <organization/>
          </author>
          <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="RFC6462">
        <front>
          <title>Report from the Internet Privacy Workshop</title>
          <author fullname="A. Cooper" initials="A." surname="Cooper">
            <organization/>
          </author>
          <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">
            <organization/>
          </author>
          <author fullname="H. Tschofenig" initials="H." surname="Tschofenig">
            <organization/>
          </author>
          <author fullname="B. Aboba" initials="B." surname="Aboba">
            <organization/>
          </author>
          <author fullname="J. Peterson" initials="J." surname="Peterson">
            <organization/>
          </author>
          <author fullname="J. Morris" initials="J." surname="Morris">
            <organization/>
          </author>
          <author fullname="M. Hansen" initials="M." surname="Hansen">
            <organization/>
          </author>
          <author fullname="R. Smith" initials="R." surname="Smith">
            <organization/>
          </author>
          <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>
    </references>
    <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,
and Xinyue Zhang for their comments and suggestions.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="H." surname="Yao" fullname="Huijuan Yao">
        <organization>China Mobile</organization>
        <address>
          <email>yaohuijuan@chinamobile.com</email>
        </address>
      </contact>
      <contact initials="Y." surname="Li" fullname="Yizhou Li">
        <organization>Huawei Technologies</organization>
        <address>
          <email>liyizhou@huawei.com</email>
        </address>
      </contact>
      <contact initials="D." surname="Trossen" fullname="Dirk Trossen">
        <organization>Huawei Technologies</organization>
        <address>
          <email>dirk.trossen@huawei.com</email>
        </address>
      </contact>
      <contact initials="L." surname="Iannone" fullname="Luigi Iannone">
        <organization>Huawei Technologies</organization>
        <address>
          <email>luigi.iannone@huawei.com</email>
        </address>
      </contact>
      <contact initials="H." surname="Shi" fullname="Hang Shi">
        <organization>Huawei Technologies</organization>
        <address>
          <email>shihang9@huawei.com</email>
        </address>
      </contact>
      <contact initials="C." surname="Lin" fullname="Changwang Lin">
        <organization>New H3C Technologies</organization>
        <address>
          <email>linchangwang.04414@h3c.com</email>
        </address>
      </contact>
      <contact initials="X." surname="Wang" fullname="Xueshun Wang">
        <organization>CICT</organization>
        <address>
          <email>xswang@fiberhome.com</email>
        </address>
      </contact>
      <contact initials="X." surname="Wang" fullname="Xuewei Wang">
        <organization>Ruijie Networks</organization>
        <address>
          <email>wangxuewei1@ruijie.com.cn</email>
        </address>
      </contact>
      <contact initials="C." surname="Jacquenet" fullname="Christian Jacquenet">
        <organization>Orange</organization>
        <address>
          <email>christian.jacquenet@orange.com</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA7092XbcNpbv9RU88kOk46pKvCR9WtPTY0V2YvvEjidSOunM
mQcUiaqCzSJruEiuRO5vn7sC4CYp6Z7RQ2KRBHBx9w3QYrGYNa7J7WlylnxT
mZ29LqsPybqskvNyt28bV2wWZ9emssllZdZrlyYXjbUVPE6Oz88uL05mZrWq
7NVpgr+FKWapaeymrA6niSvW5WyWlWkB706TDOZpFnm2ShfwTb1Y65DFF49m
dbvaubp2ZXF52MPHr15cfjMr2t3KVqezDKY8naVlUduibuvTpKlaO4Oln8wA
QHOa/FASwAn+NsMpN1XZ7k8TXGf2wR7gUXY6SxbJj7Wtkhcf97ARW6QWH52X
eW5WZWUad2WTt7bB8TAZvruw1ZVLbVLuG7dzv8InZTEDQDJ4f5q09cLUqXOz
vTtN/qsp03lSl1VT2XUN/zrs8B//PZuZttmWFS4/SwAnAP75MvnOwS+Ml/Ot
BdDpQVltTCHrnCYvW3NtXXJp021R5uXG2Rq+sTvjctjaMn+2pQ+WabmD51WJ
xLSZa8oKfk3LtmiQCudbV5ho8V+WyfPWL/5LWWz2uD49665PI5M35crlNiyc
tb/KmGcpfrCj9wLE2KpJsm7znJd7U27h/1nyddmmJjOuovfdZb+vTLGx9KK3
p2h+4DeiX+Lh2vHUy5VO/aykiRgyAiTA8V3r6uTNEogP09nKIGJ7YFza3K7L
wqVmFi98sTeumIVlc5hp5zatzWEhmWzXVi7Py2eNnyIAQTR4DTSozAfryfC6
3BbJC/+wC8nrtnDAscqbwFyvinQZKPI+w2HP3vNny8I2MSV+LFwDGL9oQIjq
pFwnZzvg/jRmiW+XyGvI8gLOt/jbHiVKn3ch+uXyRVh+i58sNzrk2a8N4XyZ
FrexIaz5xtXbyoRFD6YIz7oL/g1ABrbrbXxrDmbV1mZT755t8FGfCyf3jkIM
n7hV23jRZChetu49bCX5uykZiik5OJhyy98O5SBM93f367ZsvXTfIdS5O9D3
HckOkz13oKIvq7IGPXiv+TIYsGx4wMScIAkbl7wyRVEW9n5A4oil4xETs74E
Zkgutvfbdb11W/j+z4O5grIsIm0Jn14b0pjFgE/e2uvk5ZPzSfQWqQ5ffvH0
6aOnz7ZP0t56Py+Tn2JZ+Lm19bYt9GFPRb46vwzzf6xx5mdrB1ZrW+7s3TMj
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
p3QHCDd2AAA=

-->

</rfc>
