<?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.1 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-yi-cats-hybrid-solution-02" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.18.2 -->
  <front>
    <title abbrev="Hybrid Solution for CATS">Hybrid Computing and Network Awareness and Routing Solution for CATS</title>
    <seriesInfo name="Internet-Draft" value="draft-yi-cats-hybrid-solution-02"/>
    <author initials="X." surname="Yi" fullname="Xinxin Yi" role="editor">
      <organization>China Unicom</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>yixx3@chinaunicom.cn</email>
      </address>
    </author>
    <author initials="R." surname="Pang" fullname="Pang Ran" role="editor">
      <organization>China Unicom</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>pangran@chinaunicom.cn</email>
      </address>
    </author>
    <author initials="H." surname="Shi" fullname="Hang Shi">
      <organization>Huawei</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>shihang9@huawei.com</email>
      </address>
    </author>
    <date year="2023" month="October" day="23"/>
    <area>Routing</area>
    <workgroup>Computing-Aware Traffic Steering</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 49?>

<t>Computing-Aware Traffic Steering (CATS) is a traffic engineering architecture that takes the dynamic changes of computing and network resources into account when forwarding traffic to appropriate service instances for processing.
For the development of the current network, it is important to have a solution that meets different types of service requirements and can be deployed reasonably. Therefore, this document proposes a hybrid solution to provide differentiated and flexible traffic streering capabilities for different service while saving the cost of retrofitting existing network equipment.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Computing-Aware Traffic Steering Working Group mailing list (cats@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/cats/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/VMatrix1900/draft-yi-cats-hybrid-solution"/>.</t>
    </note>
  </front>
  <middle>
    <?line 56?>

<section anchor="intro">
      <name>Introduction</name>
      <t>CATS enables large-scale interconnected collaboration at the edge, providing optimal service access and load balancing to adapt to dynamic service. The computing power and network based on the actual processing delay condition can dynamically process the service request to switch to the appropriate service node, thereby improving the quality of service resource utilization and user experience<xref target="I-D.ldbc-cats-framework"/>.
CATS needs to provide diversified and differentiated service capabilities so that different service traffic can be forwarded to appropriate service instance. This document proposes a hybrid solution, on the one hand, it uses centralized computing information awareness and distributed routing decision. On the other hand, it can provide the service capability of distributed routing or centralized routing for different services to achieve service differentiation.</t>
      <section anchor="terminology">
        <name>Terminology</name>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="background-and-motivation">
      <name>Background and Motivation</name>
      <t>There are three main aspects of CATS 'work:
- Computing information awareness: The network of the resource utilization status and service status of service instanct needs to be notified, so that the network can perceive the status of service contact instance.
- Select the optimal service contact instance : The optimal service instance needs to be calculated based on the status of computing and network.
- Calculate the optimal forwarding path: After determining the optimal service instance, the optimal forwarding path to the service needs to be calculated. The optimal forwarding path can be determined based on network factors such as delay, packet loss rate, and bandwidth.</t>
      <t>In the implementation of the above work, CATS still has some problems:
- A number of devices will be upgraded and the cost will be high, if the computing information needs to be notified between service instance and engress router.
- As business scenarios become more and more diverse, CATS needs to provide differentiated network and computing capabilities for different requirements of different businesses.</t>
      <t>This document designs a hybrid solution from two aspects:
- Collect the computing information through the cloud management platform, and then process and send it to the network device on demand. This kind of centralized computing information awareness is more easier to achieve and less costly to deploy compared to collect the computing information distributedly.
- Distributed or centralized routing decision-making methods for different services. For intelligence transportation：The location of vehicles is constantly changing when vehicles are driving normally on the road. CATS needs to re-select the optimal service instance and the optimal forwarding path according to the latest vehicle location. In addition, the scenario of intelligence transportation has very high requirements on delay, and the delay value will directly affect the driving safety of vehicles. Therefore, it is recommended that the ingress router of CATS makes routing decision, rather than the centralized controller recalculating and sending to the ingress router. In this way, the signaling transmission time between the centralized controller and the ingress router is reduced. Thus, the service quality is improved.
For other scenario such as  VR/AR, SDWAN, which generally prioritize global utilization, it is suitable to use the centralized routing decision method since the centralized controlller has a global perspective.</t>
    </section>
    <section anchor="service-flow">
      <name>Service Flow</name>
      <figure anchor="fig-Hybrid-Solution-Arhicteture">
        <name>Hybrid-Solution-Arhicteture</name>
        <artwork><![CDATA[
               +--------------+       +------------------+
               |  network     |       | cloud management |
               |  controller  |<------| platform         |
               +--------------+       +------------------+
                         /                         \
            +------------------+      +---------------+
            |     R2     R3    |------|service instance|
            |                  |      +----------------+
   Client---|R1(ingress router)|
            |                  |      +---------------+
            |     R4     R5    |------|service instance|
            +------------------+      +---------------+
]]></artwork>
      </figure>
      <section anchor="service-overview">
        <name>Service Overview</name>
        <t>During the deployment of the service, the cloud management platform or other upper-layer systems collect computing information, process it, and then send it to the required network devices, which are generally network ingress router.
Then, CATS determines whether to use the centralized routing decision-making mode or the distributed routing decision-making mode based on the service type. Generally, it is recommended that services with strict requirements on time delay adopt the distributed routing decision making mode, and the other services adopt the centralized routing decision making mode.</t>
        <t>When the distributed routing decision-making mode is adopted, the CATS ingress router selects the optimal service instance and calculates the optimal forwarding path according to the status of computing and network, and then directs the user traffic to the path towards the service instance.</t>
        <t>When the centralized routing decision-making mode is adopted, the network controller selects the optimal service instance and calculates the optimal forwarding path according to the status of computing and network, and sends the results to the ingress router. The ingress router directs user traffic to the path towards the service instance.</t>
      </section>
      <section anchor="workflow-overview">
        <name>Workflow Overview</name>
        <ol spacing="normal" type="1"><li>
            <t>The service instance reports the computing information to the cloud management platform.</t>
          </li>
          <li>
            <t>The cloud management platform processes computing information and send it to the network controller.</t>
          </li>
          <li>
            <t>The network controller collect the network information and process it along with computing information.
            </t>
            <ol spacing="normal" type="1"><li>
                <t>Distributed routing decision mode: The network controller sends computing information to the network ingress router. The ingress router selects the optimal service instance and calculates the optimal forwarding path.</t>
              </li>
              <li>
                <t>Centralized routing decision mode: The network controller selects the optimal service instance, calculates the optimal forwarding path and sends the result to the ingress router.</t>
              </li>
            </ol>
          </li>
          <li>
            <t>The ingress router performs traffic steering.</t>
          </li>
        </ol>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TBD</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="I-D.ldbc-cats-framework" target="https://datatracker.ietf.org/doc/html/draft-ldbc-cats-framework-03" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ldbc-cats-framework.xml">
        <front>
          <title>A Framework for Computing-Aware Traffic Steering (CATS)</title>
          <author fullname="Cheng Li" initials="C." surname="Li">
            <organization>Huawei Technologies</organization>
          </author>
          <author fullname="Zongpeng Du" initials="Z." surname="Du">
            <organization>China Mobile</organization>
          </author>
          <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
            <organization>Orange</organization>
          </author>
          <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
            <organization>Telefonica</organization>
          </author>
          <author fullname="John Drake" initials="J." surname="Drake">
            <organization>Juniper Networks, Inc.</organization>
          </author>
          <author fullname="Daniel Huang" initials="D." surname="Huang">
            <organization>ZTE</organization>
          </author>
          <author fullname="Gyan Mishra" initials="G. S." surname="Mishra">
            <organization>Verizon Inc.</organization>
          </author>
          <date day="4" month="August" year="2023"/>
          <abstract>
            <t>This document describes a framework for Computing-Aware Traffic Steering (CATS). Particularly, the document identifies a set of CATS components, describes their interactions, and exemplifies the workflow of the control and data planes.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ldbc-cats-framework-03"/>
      </reference>
      <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="S. Bradner" initials="S." surname="Bradner"/>
          <date month="March" year="1997"/>
          <abstract>
            <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="2119"/>
        <seriesInfo name="DOI" value="10.17487/RFC2119"/>
      </reference>
      <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="B. Leiba" initials="B." surname="Leiba"/>
          <date month="May" year="2017"/>
          <abstract>
            <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="8174"/>
        <seriesInfo name="DOI" value="10.17487/RFC8174"/>
      </reference>
    </references>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA81Zy3LbyBXd4ys68iIzGYIzsp3KmOXMDC3Zkatsy5HkeFxJ
Fk2gSXQMojHdDdG0bH9IVvmQrPJD+YWc2w8QoEBKnvIiWkhAox/3ee65rTRN
EyttKSbsZD3TMmdHalk3VlYLxqucvRB2pfRbNl1xLSphjBs9U37GuSrxoCo2
V5odTS/OEz6baXHZbnZ9Qq6yii9xXK753KZrmWbcmrRw81MT5qff3U3UDG/C
CjNJmjrn7oH+TBKsEAul1xNmbJ6YZraUxmDVxbrGxk8fXzxJElnrCbO6Mfbu
d989wHaQn0/YQRD9ICG1Flo1NQZbnVOnJ7uAbHOZsXMrhHaz34o1FuTYvbJC
V8KmxyR/kvDGFkpPEpYmjMnKTNjP4zcSz17Ln2X1TlbMjSi94JV8z0nBCTsq
ZMXZq0pmaomPYsllOWFr+e7dvZ8y+ta4T+OswletyEMil1ZpvGbSQvlHQv4D
wtG7aipL9nCbdmQ5G7/kboaXhl7YGa9uKUyN6ZpXX06ck/F5sbHNCUnjB/rS
nDR8JeRGDlPIAnMf/FS4D2Mv5A2nJkml9BI7XiJiGHuaHo/LfJb5cJtrSEAR
MEGkVPPNxGQ8HidJmqaMz4zVPIOLb4oO9hVF9tdMIjkQcv6jqBayCt+5hgWt
yGyD1bbglln+Vhg8CpavYQzMz0hDjKk5FOlmYBUyUAujGp1hiqysYjxz+rJV
IVx2QbKclsTzaUpda1VriWxhRuhLmQlyg+UV7UIZie94NFg3Tp7g3QkkLkWp
6qXA5hCGhrJGa3oNooyYtKSsXNZKYzdLhxX8UkD9mMBezaUQ1rBczufCbWCR
oE7FKI4WvzRSCzrMI0vGKzYjIepSrUWOCdyois/K9ZhdFNgFYosRdsf5gJLG
iUlqKiPI/B5HOmIo+nopc7ERgwySu9PmpXgnZ6VorQaXB59lvOYzWUorg602
WkThV4XEUsMvnd3JTso4m2lhtZpL63yIE4x7iI4klZ15EWg+1JYyz0uRJHcI
XbTKm8zJfnVH0utHRCDiCxEFM0CYkuuFSE3GS3In0ChTVYXggk6ZKks+U9rl
EaM4g1QiX8Bi3gokh6qtXPKyVQORFHG9VDxnM14iQpxOiKGc186/MU7DKueN
TqTWaiV0L15n3EAiFwl0hm1w5Cbe4OGSr7FBBRAhYcnx4Qxelus41a3uRosw
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
8eg4+R/AvH77ZyAAAA==

-->

</rfc>
