<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v5 rel. 3 U (http://www.xmlspy.com)
     by Daniel M Kohn (private) -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc2119 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
]>
<rfc category="std" docName="draft-wu-alto-endpoint-pid-properties-00"
     ipr="trust200902">
  <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>

  <?rfc toc="yes" ?>

  <?rfc symrefs="yes" ?>

  <?rfc sortrefs="yes"?>

  <?rfc iprnotified="no" ?>

  <?rfc strict="yes" ?>

  <front>
    <title abbrev="EP and PID properties">Endpoint and PID Property Extension
    for virtualized endpoint and infrastructure</title>

    <author fullname="Qin Wu" initials="Q." surname="Wu">
      <organization>Huawei</organization>

      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>

          <city>Nanjing</city>

          <region>Jiangsu</region>

          <code>210012</code>

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

        <email>bill.wu@huawei.com</email>
      </address>
    </author>

    <author fullname="Zhen Cao" initials="Z." surname="Cao">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street>53A Xibianmennei Ave., Xuanwu District</street>

          <city>Beijing</city>

          <region>Beijing</region>

          <code>100053</code>

          <country>P.R. China</country>
        </postal>

        <email>zehn.cao@gmail.com</email>
      </address>
    </author>

    <date year="2014" />

    <area>Transport Area</area>

    <workgroup>ALTO working group</workgroup>

    <keyword>RFC</keyword>

    <keyword>Request for Comments</keyword>

    <keyword>I-D</keyword>

    <keyword>Internet-Draft</keyword>

    <keyword>ALTO</keyword>

    <abstract>
      <t>This document extends the Application-Layer Traffic Optimization
      (ALTO) protocol [I-D.ietf-alto-protocol] and Proposes additional new
      Endpoint properties and PID properties for virtualized endpoint and
      infrastructure.</t>
    </abstract>
  </front>

  <middle>
    <section anchor="intro" title="Introduction">
      <t>As stated in [I-D.ietf-alto-protocol], an Endpoint is an application
      or host that is capable of communicating (sending and/or receiving
      messages) on a network. An Endpoint is typically either a Resource
      Provider or Resource Consumer.</t>

      <t>With the growth of network virtualization technology, steering
      traffic through specific services nodes at different layers or bypassing
      them completely becomes important. A service node may be running in its
      own virtualized system space or physically separated across hosting
      systems. The information provided about these service nodes includes
      service network location (for topology creation), service type (e.g.
      firewall, load balancer, etc.) and, optionally, administrative
      information about the service functions such as load, capacity and
      operating status. To facilitate alto service discovery for these service
      node information, the endpoint properties and cost needs to be
      extended.</t>

      <t>As stated in [I-D.ietf-alto-protocol], Provider-defined Identifiers
      (PIDs) is introduced to provide an indirect and network-agnostic way to
      specify an aggregation of network endpoints that may be treated
      similarly, based on network topology, type, or other properties. When
      network endpoints are aggregated at Data Center level, the information
      provided by a data center include administrative information such as
      load, capacity, operating status.</t>

      <t>This document proposes extending the property concept by allowing
      PIDs to have properties.</t>
    </section>

    <section title="Conventions used in this document">
      <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">RFC2119</xref>.</t>
    </section>

    <section title="PID properties">
      <t>The ALTO base protocol defines endpoint property in the form of
      (name, value) pair associated with the selected endpoint address, e.g.,
      pid. But it doesn’t define any property for PID. However it can be
      useful to report an data center's load, capacity, operating status when
      network endpoints are aggregated at Data Center level. This document
      define x new PID properties for virtualized infrastructure to support
      service topologies creation and service node discovery.</t>

      <section title="PID Property Type: resourcetype">
        <t>An ALTO Server MAY define the 'resourcetype' Endpoint Property Type
        for each Network Map that it provides.</t>
      </section>

      <section title="PID Property Type: servingload">
        <t>An ALTO Server MAY define the 'servingload' Endpoint Property Type
        for each Network Map that it provides.</t>
      </section>

      <section title="PID Property Type: supportedcapacity">
        <t>An ALTO Server MAY define the 'supportedcapacity' Endpoint Property
        Type for each Network Map that it provides.</t>
      </section>

      <section title="PID Property Type: availcapacity">
        <t>An ALTO Server MAY define the 'supportedcapacity' Endpoint Property
        Type for each Network Map that it provides.</t>
      </section>
    </section>

    <section title="Endpoint Properties Extension">
      <t>An endpoint may have various different properties. The example
      property of an Endpoint is network location such as pid or its
      connectivity type such as ADSL (Asymmetric Digital Subscriber Line),
      Cable, or FTTH (Fiber To The Home). The endpoint property can be used in
      both Map service or endpoint property service. The base ALTO protocol
      [ALTO] has defined three endpoint properties, i.e., pid,priv:,exp:
      (Section 7.1.1 of ALTO base specification [ALTO]). This document define
      14 new endpoint properties for virtualized endpoint to support service
      topologies creation and service chaining.</t>

      <section title="Endpoint Property Type: nodetype">
        <t>An ALTO Server MAY define the 'nodetype' Endpoint Property Type for
        each Network Map that it provides. The 'nodetype' Endpoint Property is
        used to indicate the endpoint type. The endpoint types may include
        service function enabled node, service function chain ingress node,
        service function chain egress node.</t>
      </section>

      <section title="Endpoint Property Type: servicetype">
        <t>An ALTO Server MAY define the 'servicetype' Endpoint Property Type
        for each Network Map that it provides. The 'servicetype' Endpoint
        Property reflect service type the endpoint supports. The service types
        may include firewall type, DPI type, NAT44 type, Load balancer
        type.</t>
      </section>

      <section title="Endpoint Property Type: forwarding class">
        <t>An ALTO Server MAY define the 'forwardingclass' Endpoint Property
        Type for each Network Map that it provides. The 'forwardingclass'
        Endpoint Property reflects forwarding class the endpoint supports. The
        supported forwarding classes include expedited forwarding, assured
        forwarding,network control, best effort.</t>
      </section>

      <section title="Endpoint Property Type: Packetrateutilization">
        <t>An ALTO Server MAY define the 'packetrateutilization' Endpoint
        Property Type for each Network Map that it provides. The
        'packetrateutilization' Endpoint Property is used to indicate packet
        rate utilization.</t>
      </section>

      <section title="Endpoint Property Type: bandwidthutilization">
        <t>An ALTO Server MAY define the 'bandwidthutilization' Endpoint
        Property Type for each Network Map that it provides. The '
        bandwidthutilization ' Endpoint Property is used to indicate packet
        rate utilization.</t>
      </section>

      <section title="Endpoint Property Type: memoryutilization">
        <t>An ALTO Server MAY define the 'availablememory' Endpoint Property
        Type for each Network Map that it provides. The ' availablememory'
        Endpoint Property is used to indicate packet rate utilization.</t>
      </section>

      <section title="Endpoint Property Type: availablememory">
        <t>An ALTO Server MAY define the 'availablememory' Endpoint Property
        Type for each Network Map that it provides. The ' availablememory'
        Endpoint Property is used to indicate packet rate utilization.</t>
      </section>

      <section title="Endpoint Property Type: ributilization ">
        <t>An ALTO Server MAY define the 'ributilization' Endpoint Property
        Type for each Network Map that it provides. The ' ributilization '
        Endpoint Property is used to indicate packet rate utilization.</t>
      </section>

      <section title="Endpoint Property Type: fibutilization">
        <t>An ALTO Server MAY define the 'fibutilization' Endpoint Property
        Type for each Network Map that it provides. The ' fibutilization '
        Endpoint Property is used to indicate packet rate utilization.</t>
      </section>

      <section title="Endpoint Property Type: cpuutilization">
        <t>An ALTO Server MAY define the 'cpuutilization' Endpoint Property
        Type for each Network Map that it provides. The ' cpuutilization '
        Endpoint Property is used to indicate packet rate utilization.</t>
      </section>

      <section title="Endpoint Property Type: availablestorage">
        <t>An ALTO Server MAY define the 'ributilization' Endpoint Property
        Type for each Network Map that it provides. The ' availablestorage '
        Endpoint Property is used to indicate packet rate utilization.</t>
      </section>

      <section title="Endpoint Property Type: supportedaclnum">
        <t>An ALTO Server MAY define the 'supportedaclnum' Endpoint Property
        Type for each Network Map that it provides. 'supportedaclnum' Endpoint
        Property reflects endpoint capability from supported ACL number
        perspective.</t>
      </section>

      <section title="Endpoint Property Type: virtualcontextnum">
        <t>An ALTO Server MAY define the 'virtualcontextnum' Endpoint Property
        Type for each Network Map that it provides. 'virtualcontextnum'
        Endpoint Property reflects endpoint capability from supported ACL
        number perspective.</t>
      </section>

      <section title="Endpoint Property Type: supportedpacketrate">
        <t>An ALTO Server MAY define the 'supportedpacketrate' Endpoint
        Property Type for each Network Map that it provides.
        'virtualcontextnum' Endpoint Property reflects endpoint capability
        from supported ACL number perspective.</t>
      </section>
    </section>

    <section title="Security Considerations">
      <t>The properties defined in this document present no security
      considerations beyond those in Section 14 of the base ALTO specification
      [ALTO].</t>
    </section>

    <section title="IANA Considerations">
      <t>TBC.</t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <reference anchor="RFC2119">
        <front>
          <title abbrev="RFC Key Words">Key words for use in RFCs to Indicate
          Requirement Levels</title>

          <author fullname="Scott Bradner" initials="S." surname="Bradner">
            <organization>Harvard University</organization>

            <address>
              <postal>
                <street>1350 Mass. Ave.</street>

                <street>Cambridge</street>

                <street>MA 02138</street>
              </postal>

              <phone>- +1 617 495 3864</phone>

              <email>sob@harvard.edu</email>
            </address>
          </author>

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

          <area>General</area>

          <keyword>keyword</keyword>

          <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. Authors who follow these
            guidelines should incorporate this phrase near the beginning of
            their document: <list>
                <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 RFC 2119.</t>
              </list></t>

            <t>Note that the force of these words is modified by the
            requirement level of the document in which they are used.</t>
          </abstract>
        </front>
      </reference>

      <reference anchor="ALTO">
        <front>
          <title>ALTO Protocol</title>

          <author fullname="R. Alimi" initials="R." surname="Alimi">
            <organization></organization>
          </author>

          <date month="May" year="2013" />
        </front>

        <seriesInfo name="ID" value="draft-ietf-alto-protocol-16" />
      </reference>
    </references>

    <references title="Informative References">
      <reference anchor="I.D-bitar-i2rs-service-chaining">
        <front>
          <title>Interface to the Routing System (I2RS) for Service Chaining:
          Use Cases and Requirements</title>

          <author fullname="N.Bitar" initials="N." surname="Bitar">
            <organization></organization>
          </author>

          <author fullname="G.Heron" initials="G." surname="Heron">
            <organization></organization>
          </author>

          <author fullname="L.Fang" initials="L." surname="Fang">
            <organization></organization>
          </author>

          <date month="July" year="2013" />
        </front>

        <seriesInfo name="ID" value="draft-bitar-i2rs-service-chaining-00" />
      </reference>
    </references>
  </back>
</rfc>
