<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="info" docName="draft-du-coordination-of-networks-in-ccn-00"
     ipr="trust200902">
  <front>
    <title abbrev="Coordination of Networks in CCN">Coordination of Networks
    in Computing Centric Network</title>

    <author fullname="Zongpeng Du" initials=" Z." surname="Du">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street>No.32 XuanWuMen West Street</street>

          <city>Beijing</city>

          <code>100053</code>

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

        <email>duzongpeng@foxmail.com</email>
      </address>
    </author>

    <date month="" year=""/>

    <area>Internet Area</area>

    <workgroup>Network Working Group</workgroup>

    <keyword>Computing Centric Network, distributed</keyword>

    <abstract>
      <t>This document describes a coordinatable mechanism for the networks
      that each contains a service node in the Computing Centric Network
      (CCN). The CCN stands for an overlay network or called a network
      federation that focuses on the computing service providing. In CCN, many
      service nodes in different networks can join in or leave the federation
      dynamically.</t>

      <t/>
    </abstract>

    <note title="Requirements Language">
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
      "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
      document are to be interpreted as described in <xref
      target="RFC2119">RFC 2119</xref>.</t>
    </note>
  </front>

  <middle>
    <section title="Introduction">
      <t>In the future, AI applications would become more popular, and service
      scheduling would become generalized, even providing a common invoking
      function interface. At the same time, computing resource would be more
      ubiquitous, and clients can get access to a nearby computing node to
      obtain a faster service response speed. In this situation, the
      coordination of networks is needed, so that computing nodes in different
      networks can flexibly communicate to each other and complete the
      client's computing service.</t>

      <t>In this document, we introduce a preliminary mechanism to coordinate
      different networks in the Computing Centric Network (CCN).</t>
    </section>

    <section title="Problem Statement">
      <t>The CCN in this document means an overlay network or called a
      federation that focuses on the computing service providing. In CCN, many
      service nodes in different networks can join in or leave the federation
      dynamically. Currently, we suggest a distributed way to manage the
      federation, and thus the coordination of the different service nodes is
      a key issue in CCN.</t>

      <t>From the aspect of the client, it does not care where the service is,
      and the main concern is that the service could be completed in time. In
      CCN, we assume that the service can be provided either in the clouds or
      in the MECs.</t>

      <t>As an example, the federation can own a common anycast address. The
      associated anycast address will allow clients to access a nearby network
      service node, however it may not be optimal. For example, in the
      scenarios of CAN <xref target="I-D.liu-can-ps-usecases"/>, the nearest
      node may be busy and can not complete the job quickly because the
      computing ability in an MEC is limited. In this document, we suggest
      that it can send this request to other service nodes if it is busy, in
      order to do the service steering or load balancing.</t>

      <t>In this situation, the request packet of the client appears like a
      DNS query, and the network federation will return a proper service node
      to the client.</t>

      <t/>
    </section>

    <section title="A Preliminary Distributed Mechanism for CCN">
      <t>In this distributed system, each network service node needs to know
      the statuses of the surrounding service nodes, such as whether they can
      accept more client sessions for a specific service, so as to make a
      better offload. In this way, each node maintains part of the information
      of the whole federation, but they can provide a resolution mechanism and
      return a computing node address for the client. A general procedure is
      described as follows.</t>

      <t>Firstly, each computing node needs to know the information of some of
      the surrounding nodes. </t>

      <t>Secondly, after receiving the client's request, the computing node
      will decide whether to provide the service by itself or offload to other
      nodes according to its own status and the computing information of
      nearby service nodes. The looking up of the proper service node could be
      recursive.</t>

      <t>Finally, a feedback is given to the client.</t>

      <t>As a conclusion, a computing node needs to store and update the
      computing statuses of neighboring computing nodes that are currently
      available for the service. If necessary, it can select a proper neighbor
      node for offloading according to a certain policy.</t>

      <t/>
    </section>

    <section anchor="IANA" title="IANA Considerations">
      <t>TBD.</t>
    </section>

    <section anchor="Security" title="Security Considerations">
      <t>TBD.</t>
    </section>

    <section anchor="Acknowledgements" title="Acknowledgements">
      <t>TBD.</t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include="reference.RFC.2119"?>
    </references>

    <references title="Informative References">
      <?rfc include="reference.I-D.liu-can-ps-usecases"?>
    </references>
  </back>
</rfc>
