<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE rfc [
<!ENTITY nbsp "&#160;">
<!ENTITY zwsp "&#8203;">
<!ENTITY nbhy "&#8209;">
<!ENTITY wj "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.19 (Ruby 3.0.2) -->
<rfc category="std" consensus="true"
     docName="draft-ma-cats-computing-authenticity-evaluation-00"
     ipr="trust200902" submissionType="IETF" version="3"
     xmlns:xi="http://www.w3.org/2001/XInclude">
  <!-- xml2rfc v2v3 conversion 3.23.2 -->

  <front>
    <title abbrev="Computing Resource Authenticity Evaluation">Computing Resource
    Authenticity Evaluation in Computing-Aware Traffic Steering</title>

    <seriesInfo name="Internet-Draft"
                value="draft-ma-cats-computing-authenticity-evaluation-00"/>

	  <author fullname="Xiaoting Ma" initials="X." surname="Ma">
		  <organization>China Telecom</organization>

		  <address>
			  <postal>
				  <city>Beijing</city>

				  <country>China</country>
			  </postal>

			  <email>maxt3@chinatelecom.cn</email>
		  </address>
	  </author>

	  <author fullname="Shuai Gao" initials="S." surname="Gao">
		  <organization>Beijing Jiaotong University</organization>

		  <address>
			  <postal>
				  <city>Beijing</city>

				  <country>China</country>
			  </postal>

			  <email>shgao@bjtu.edu.cn</email>
		  </address>
	  </author>

	  <author fullname="Zixuan Lei" initials="Z." surname="Lei">
		  <organization>Beijing Jiaotong University</organization>

		  <address>
			  <postal>
				  <city>Beijing</city>

				  <country>China</country>
			  </postal>

			  <email>zixuanlei@bjtu.edu.cn</email>
		  </address>
	  </author>

	  <author fullname="Ziheng Xu" initials="Z." surname="Xu">
		  <organization>China Telecom</organization>

		  <address>
			  <postal>
				  <city>Beijing</city>

				  <country>China</country>
			  </postal>

			  <email>xuzh24@chinatelecom.cn</email>
		  </address>
	  </author>

	  <date day="6" month="November" year="2024"/>

	  <area>routing</area>

	  <workgroup>cats</workgroup>

	  <keyword>Internet-Draft</keyword>

	  <abstract>
		  <?line 44?>

		  <t>
			  This draft introduces an evaluation scheme for computing resource
			  authenticity. The scheme aims to verify and evaluate the authenticity of
			  computing resources in the network using application layer method. This
			  draft describes the basic principle of the scheme and authentication
			  mechanism.
		  </t>
	  </abstract>
  </front>

  <middle>
    <?line 47?>

    <section anchor="announcement-intro">
      <name>Introduction</name>

      <t>Computing resources play an important role in Computing-Aware 
	  Traffic Steering. Attackers may publish false computing resources advertisements 
	  for profit or malicious purposes, which will cause security issues.</t>

      <t>This security issue was also mentioned in <xref target="I-D.ietf-cats-usecases-requirements"/>:</t>
	
          <t>The behavior of the network can be adversely affected by modifying or interfering 
	      with advertisements of computing resource availability. Such attacks could deprive 
	      users of the services they desire, and might be used to divert traffic to interception 
	      points.  Therefore,</t>

          <t>R23: secure advertisements are <strong>REQUIRED</strong> to prevent rogue nodes from participating in the network.</t>
		
      <t>Many security requirements are also mentioned in <xref target="I-D.wang-cats-security-considerations"/>.
	  The security mechanism needs to be able to address the anonymity and uniqueness issues 
	  of service identification.</t>

      <t>In traditional networks, routing information is commonly regarded as a 
	  publicly verifiable resource, which can enable rapid detection. However, 
	  the false advertisements of computing resource are difficult to detect.</t>
		
      <t>Considering the particularity of CATS work scenarios and requirements, 
	  this scheme chooses to use application layer technology to solve this security issue. 
	  This scheme proposed in this draft aims to solve this problem by coming up with a 
	  bilateral evaluation mechanism in the network. The main steps of this scheme are node 
	  registration, task allocation and bilateral evaluation.</t>

      <t>The structural design is shown in Figure 1.</t>

		<figure anchor="fig-Structural-Design">
			<name>Structural Design</name>
			<artwork name="" type="" align="left" alt=""><![CDATA[
                    +---------+               +---------+            
                    |  Client |               |  Client |                    
                    +----+----+               +----+----+
                         |                         |             
           +---+---------+---------+-----+---------+---------+---+
           |   | CATS Path Selector|     | CATS Path Selector|   |
           |   +-------------------+     +-------------------+   |
           |                                                     |
           |                                                     |
           |                      Underlay                       |
           |                   Infrastructure                    |
           |                                                     |
           |                                                     |
           |   +-------------------+     +-------------------+   |
           |   | CATS Path Selector|     | CATS Path Selector|   |
           +---+---------+---------+-----+---------+---------+---+      
                         |                         |                  
                +--------+--------+       +--------+--------+
                |  Service site 1 |       |  Service site 2 |         
                +-----------------+       +-----------------+
]]></artwork>
		</figure>

		<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="The-Definition-of-Terms">
      <name>The Definition of Terms</name>

      <t>This document makes use of the following terms.  The terminology echoes what is in <xref target="I-D.ietf-cats-framework"/>:</t>

      <t><strong>Computing-Aware Traffic Steering (CATS):</strong> 
	  A traffic engineering approach [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 contact instance.  Various relevant metrics 
	  may be used to enforce such computing-aware traffic steering policies.</t>

      <t><strong>Client:</strong>
      An endpoint that is connected to a service provider network.</t>

      <t><strong>Service instance:</strong>
      An instance of running resources according to a given service logic. Many 
	  such instances can be enabled by a provider. Instances that adhere to the same 
	  service logic provide the same service.  An instance is typically running in a 
	  service site.  Clients' requests are serviced by one of these instances.</t>

      <t><strong>Service site:</strong> 
	  A location that hosts the resources that are required to offer a service. 
	  A service site may be a node or a set of nodes.  A CATS-serviced site is a 
	  service site that is connected to a CATS-Forwarder.</t>

      <t><strong>CATS Path Selector (C-PS):</strong>
      CATS Path Selectors (C-PSes) use information to select 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. There might be 
	  one or more C-PSes used to compute CATS paths in a CATS infrastructure.</t>

      <t><strong>Trust Value:</strong>
      a parameter to quantify the trust of clients and service sites.</t>
    </section>

    <section anchor="Node-Registration">
      <name>Node Registration</name>

		<section anchor="Client-Node-Registration">
			<name>Client Node Registration</name>

			<t>
				When a client node connects to the network, to protect the privacy of 
				users, the scheme employs a hashing algorithm to generate unique anonymous 
				identity identifiers for each client during the registration process.
			</t>
			
			<t>
				When updating task states information, only anonymous identity identifiers 
				are used and the real identity information of clients is not disclosed.
			</t>
			
			<t>
				The client node that has completed registration will be assigned an initialized trust value.
			</t>
		</section>

		<section anchor="Service-Site-Node-Registration">
			<name>Service Site Node Registration</name>

			<t>
				When the service site node connects to the network, in order to verify the computing 
				resources owned by the service site, the service site will be required to complete a 
				set of valid tasks.
			</t>

			<t>
				After receiving the valid task results from the service site, the computing resources 
				of the service site are validated based on the valid task execution time and the 
				correctness of the computation results.
			</t>

			<t>
				In order to protect the privacy of service site, this scheme will use a hash algorithm 
				to generate a unique anonymous identity identifier for each verified service site node 
				during the registration process.
			</t>

			<t>
				The service site node that has completed registration will be assigned an initialized 
				trust value. Afterwards, the service site node can be assigned computing tasks.
			</t>
		</section>
    </section>

    <section anchor="Service-Instance-Allocation">
      <name>Service Instance Allocation</name>

		<t>
			According to client requirements, computing resource information of
			service sites and trust values, the service instance will be assigned.
			</t>

		<t>
			The entire process of service instance publishing, allocation,
			completion, and feedback is recorded, which will be used for resolving
			business disputes and tracing attacks.
			</t>

    </section>

    <section anchor="Bilateral-Evaluation-Mechanism">
      <name>Bilateral Evaluation Mechanism</name>

		<section anchor="Bilateral-Evaluation">
			<name>Bilateral Evaluation</name>

			<t>
				When service site provides feedback on service instance completion, this scheme can 
				verify whether the task has been completed within the specified time interval and 
				obtain service site's evaluation of the client.
			</t>

			<t>
				After client s receive feedback, they are required to evaluate the service site that 
				completed the service instance.
			</t>

			<t>
				Following the bilateral evaluation by the client and assuming the service instance 
				was completed on time, the scheme can calculate the trust value of both the client 
				and service site based on that evaluation information.
			</t>
		</section>

		<section anchor="Data-Updating">
			<name>Data Updating</name>

			<t>
				After each service instance is completed, the scheme will update the trust values 
				of all participating clients and service sites in record.
			</t>

			<t>
				The magnitude of the trust value will affect service instance allocation priority, 
				motivating clients and service sites to provide highly accurate computing resource 
				information to maximize their rewards.
			</t>
		</section>
    </section>

	<section anchor="Unresolved-Issues">
	  <name>Unresolved Issues</name>

		  <t>TBD</t>
    </section>	  

    <section anchor="Security-Considerations">
      <name>Security Considerations</name>

		<section anchor="Security-Risk">
			<name>Security Risk</name>

			<t>
				<strong>Traffic sniffing:</strong>
				Attackers may use computing resource information to analyze network traffic patterns to infer sensitive information.
			</t>

			<t>
				<strong>Identity impersonation:</strong>
				Attackers may impersonate trusted nodes and launch denial of service or man in the middle attacks.
			</t>

			<t>
				<strong>Information tampering:</strong>
				Attackers may tamper with information in records for malicious purposes such as traffic hijacking.
			</t>
		</section>

		<section anchor="Response">
			<name>Response</name>

			<t>
				<strong>Encryption:</strong>
				Deploying encryption technology to ensure that only authorized network entities can parse and use this information.
			</t>

			<t>
				<strong>Access control:</strong>
				Deploy access control mechanism, only requests from registered clients and service sites will be responded to by the network.
			</t>

			<t>
				<strong>Identity authentication:</strong>
				Using public key infrastructure and digital signatures for identity authentication.
			</t>

			<t>
				<strong>Integrity protection:</strong>
				Using hash functions, block chain and other methods to ensure the integrity of information.
			</t>

			<t>
				<strong>Monitoring and auditing:</strong>
				Implement monitoring systems to detect and record for tracking and responding to security incidents as they occur.
			</t>
		</section>
    </section>
  </middle>

  <back>
    <references anchor="References">
      <name>References</name>

		<references anchor="normative-references">
        <name>Normative References</name>

        <reference anchor="RFC2119"
                   target="https://www.rfc-editor.org/info/rfc2119"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <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"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <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>

		<references anchor="informative-references">
        <name>Informative References</name>
			<reference anchor="I-D.ietf-cats-usecases-requirements" target="https://datatracker.ietf.org/doc/html/draft-ietf-cats-usecases-requirements-03">
			<front>
				<title>Computing-Aware Traffic Steering (CATS) Problem Statement, Use Cases, and Requirements</title>
				<author initials="K." surname="Yao" fullname="Kehan Yao">
					<organization>China Mobile</organization>
				</author>
				<author initials="D." surname="Trossen" fullname="Dirk Trossen">
					<organization>Huawei Technologies</organization>
				</author>
				<author initials="L. M." surname="Contreras" fullname="Luis M. Contreras">
					<organization>Telefonica</organization>
				</author>
				<author initials="H." surname="Shi" fullname="Hang Shi">
					<organization>Huawei Technologies</organization>
				</author>
				<author initials="Y." surname="Li" fullname="Yizhou Li">
					<organization>Huawei Technologies</organization>
				</author>
				<author initials="S." surname="Zhang" fullname="Shuai Zhang">
					<organization>China Unicom</organization>
				</author>
				<author initials="Q." surname="An" fullname="Qing An">
					<organization>Alibaba Group</organization>
				</author>
				<date month="July" day="3" year="2024"/>
				<abstract>
					<t> Distributed computing is a tool that service providers can use to achieve better service response time and optimized energy consumption. In such a distributed computing environment, providing services by utilizing computing resources hosted in various computing facilities aids support of services such as computationally intensive and delay sensitive services. Ideally, compute services are balanced across servers and network resources to enable higher throughput and lower response times. To achieve this, the choice of server and network resources should consider metrics that are oriented towards compute capabilities and resources instead of simply dispatching the service requests in a static way or optimizing solely on connectivity metrics. The process of selecting servers or service instance locations, and of directing traffic to them on chosen network resources is called "Computing-Aware Traffic Steering" (CATS). This document provides the problem statement and the typical scenarios for CATS, which shows the necessity of considering more factors when steering traffic to the appropriate computing resource to best meet the customer's expectations and deliver the requested service. </t>
				</abstract>
			</front>
			<seriesInfo name="Internet-Draft" value="draft-ietf-cats-usecases-requirements-03"/>
		</reference>

	        <reference anchor="I-D.ietf-cats-framework" target="https://datatracker.ietf.org/doc/html/draft-ietf-cats-framework-04">
			<front>
				<title>A Framework for Computing-Aware Traffic Steering (CATS)</title>
				<author initials="C." surname="Li" fullname="Cheng Li">
					<organization>Huawei Technologies</organization>
				</author>
				<author initials="Z." surname="Du" fullname="Zongpeng Du">
					<organization>China Mobile</organization>
				</author>
				<author initials="M." surname="Boucadair" fullname="Mohamed Boucadair">
					<organization>Orange</organization>
				</author>
				<author initials="L. M." surname="Contreras" fullname="Luis M. Contreras">
					<organization>Telefonica</organization>
				</author>
				<author initials="J." surname="Drake" fullname="John Drake">
					<organization>Juniper Networks, Inc.</organization>
				</author>
				<date month="October" day="17" year="2024"/>
				<abstract>
					<t> This document describes a framework for Computing-Aware Traffic Steering (CATS). Particularly, the document identifies a set of CATS components, describes their interactions, and exemplifies the workflow of the control and data planes. </t>
				</abstract>
			</front>
			<seriesInfo name="Internet-Draft" value="draft-ietf-cats-framework-04"/>
		</reference>

	        <reference anchor="I-D.wang-cats-security-considerations" target="https://datatracker.ietf.org/doc/html/draft-wang-cats-security-considerations-01">
			<front>
				<title>Security Considerations for Computing-Aware Traffic Steering</title>
				<author initials="C." surname="Wang" fullname="Cuicui Wang">
					<organization>China Unicom</organization>
				</author>
				<author initials="Y." surname="Fu" fullname="Yu Fu">
					<organization>China Unicom</organization>
				</author>
				<date month="October" day="21" year="2024"/>
				<abstract>
					<t> Computing-Aware Traffic Steering (CATS) inherits potential security vulnerabilities from the network, computing nodes as well as workflows of CATS procedures. This document describes various threats and security concerns related to CATS and existing approaches to solve these threats. </t>
				</abstract>
			</front>
			<seriesInfo name="Internet-Draft" value="draft-wang-cats-security-considerations-01"/>
		</reference>

      </references>


    </references>

    <?line 135?>

    <section anchor="acknowledgements" numbered="false">
      <name>Acknowledgements</name>

      <t>TBD</t>
    </section>
  </back>
</rfc>
