<?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-dynamic-qos-00" ipr="trust200902">
  <front>
    <title abbrev="Dynamic QoS">Dynamic QoS Mechanism</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>QoS</keyword>

    <abstract>
      <t>This document describes a dynamic QoS (Quality of Service)
      mechanism.</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>The traffic in the network normally have a QoS type marked in the
      packet header. For example, the IPv4 packets have a Type of Service
      (ToS) field, and the IPv6 packets have a Traffic Class (TC) field. A
      ToS/TC byte includes a DSCP codepoint and precedence bits. It would
      influence the Hop-by-Hop (HBH) behavior of the packet, and it is used in
      a DiffServ QoS model as mentioned in <xref target="RFC2983"/> and <xref
      target="RFC4594"/>.</t>

      <t>Differentiated Services (DiffServ) is a set of end-to-end QoS
      capabilities. End-to-end QoS is the ability of the network to deliver
      service required by specific network traffic from one end of the network
      to another. However, currently the QoS is static, and is used only
      within the network.</t>

      <t>In the Computing and Network Convergence (CNC), it is believed that
      the delay within the network and the delay caused by the computing is
      comparable, for example, both at the millisecond (ms) level <xref
      target="I-D.ietf-cats-usecases-requirements"/>. Some kind of
      coordination of network and computing can take place in the CNC.
      However, it is hard to communicate between the two different domains,
      i.e., the network domain and the computing domain.</t>

      <t>In this document, we propose a dynamic QoS mechanism to enable a
      simple coordination of the network and computing.</t>
    </section>

    <section anchor="Assumptions" title="Assumptions for Coordination">
      <t>There are two assumptions for the dynamic coordination.</t>

      <t><list style="numbers">
          <t>The network can provide three kinds of treatment for a traffic
          flow, for example, the gold level, the silver level, and the bronze
          level.</t>

          <t>The computing domain can also provide different kinds of service
          scheduling, for example, a best service, a better service, or a
          normal service.</t>
        </list></t>

      <t>In the traditional method, the service marked by a high priority
      should have a high QoS treatment in all the places, the service marked
      by a middle priority should have a at least middle QoS treatment, and
      the service marked by a low priority would have whatever a treatment in
      all the places.</t>

      <t/>
    </section>

    <section anchor="CoordinationMechanism" title="Coordination Mechanism">
      <t>In the proposed method, we add a dynamic value for QoS field in the
      packet header. For example, we can have a three-bit value for the
      traditional QoS priority, and another three-bit value for the dynamic
      QoS (DQoS). The first value is static, and the second value is dynamic
      and changeable.</t>

      <t>Some changing principle of the DQoS is listed as follows:</t>

      <t><list style="numbers">
          <t>The DQoS value is marked as 4 by default.</t>

          <t>If the packet is treated at a QoS level the same as the marked
          QoS level, the DQoS value will not be changed. We call it a normal
          process.</t>

          <t>If the packet is treated at a QoS level higher than the marked
          QoS level, the DQoS value can be added. We call it a better
          process.</t>

          <t>If the packet is treated at a QoS level lower than the marked QoS
          level, the DQoS value can be reduced. We call it a worse
          process.</t>
        </list></t>

      <t>The decision points in the network domain or in the computing domain
      would try to make the DQoS return to 4 as best as they can if the DQoS
      is not 4. Of course, if the resource corresponding to a QoS level is not
      enough, the decision points will treat some traffic flows different from
      the marked static QoS. Meanwhile, the treatment will be recorded by the
      DQoS. Hence, the resource of network and computing domain can do some
      coordination.</t>

      <t>The decision points in the network domain can be the headend node,
      which can choose different tunnels/policies to a target. The decision
      points in the computing domain can be the LB (Load Balancing) equipment,
      which can schedule a specific Server/vServer for the user traffic. They
      can both receive and send packets from users.</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.RFC.2983"?>

      <?rfc include="reference.I-D.ietf-cats-usecases-requirements"?>

      <?rfc include="reference.RFC.4594"?>
    </references>
  </back>
</rfc>
