CDNI Working Group                                              Xiaoyan.He
Internet Draft                                             Spencer.Dawkins
Intended status: Standards Track                                    Huawei
Expires: August 2012                                               Ge.Chen
                                                             China Telecom
                                                              Yunfei.Zhang
                                                                    Wei.Ni
                                                              China Mobile
                                                         February 16, 2012



            Capability Information Advertising for CDN Interconnection
                   draft-he-cdni-cap-info-advertising-00.txt


Status of this Memo

  This Internet-Draft is submitted in full conformance with the provisions of BCP 78
  and BCP 79.

  Internet-Drafts are working documents of the Internet Engineering Task Force
  (IETF), its areas, and its working groups.  Note that other groups may also
  distribute working documents as Internet-Drafts.

  Internet-Drafts are draft documents valid for a maximum of six months and may be
  updated, replaced, or obsoleted by other documents at any time.  It is
  inappropriate to use Internet-Drafts as reference material or to cite them other
  than as "work in progress."

  The list of current Internet-Drafts can be accessed at
  http://www.ietf.org/ietf/1id-abstracts.txt

  The list of Internet-Draft Shadow Directories can be accessed at
  http://www.ietf.org/shadow.html

  This Internet-Draft will expire on August 16, 2012.

Copyright Notice

  Copyright (c) 2012 IETF Trust and the persons identified as the document authors.
  All rights reserved.

  This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating
  to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of
  publication of this document. Please review these documents carefully, as they
  describe your rights and restrictions with respect to this document. Code



He et all                 Expires August 16, 2012                   [Page 1]


Internet-Draft              cap-info-advertising                 February 2012


  Components extracted from this document must include Simplified BSD License text
  as described in Section 4.e of the Trust Legal Provisions and are provided without
  warranty as described in the Simplified BSD License.



Abstract
  This document describes protocol for Capability Information Advertising which is
  used to communicate capability information among interconnected Content Delivery
  Networks(CDNs).

Table of Contents


  1. Introduction ..................................................... 2
     1.1. Terminology ................................................. 3
     1.2. Reference Model .............................................. 3
  2. Conventions used in this document.................................... 4
  3. Capability information description ................................... 4
  4. Protocol Function and Operation Overview ............................. 5
  5. Protocol Specification ............................................. 5
     5.1. Capability information description .............................. 5
     5.2. Message description........................................... 6
        5.2.1. Report mode............................................. 7
        5.2.2. Query mode ............................................. 7
     5.3. Message examples ............................................. 7
        5.3.1. Report mode............................................. 7
        5.3.2. Query mode ............................................. 8
  6. Security Considerations ............................................ 8
  7. IANA Considerations ............................................... 9
  8. References ....................................................... 9
     8.1. Normative References .......................................... 9
     8.2. Informative References ........................................ 9
  9. Acknowledgments.................................................. 10

1. Introduction
  Some discussion happened on request routing interface of CDNI among the CDNI
  working group, consensus has been achieved that the request routing interface
  comprises two main parts and these two parts should be addressed in different
  documents to progress separately:

  * the asynchronous advertisement of footprint and capabilities by a
   dCDN that allows a uCDN to decide whether to redirect particular user requests to
   that dCDN; and

   * The synchronous operation of actually redirecting a user request.



He et all                 Expires August 16, 2012                   [Page 2]


Internet-Draft              cap-info-advertising                 February 2012

  This document hence focuses on defining the Capability Information Advertising
  Protocol for CDNI, which is one of the main building blocks of request routing
  interface.


1.1. Terminology
  This document reuses the terminology defined in [I-D.draft-cdni-problem-statement].

1.2. Reference Model
  Figure 1 from [I-D.draft-cdni-problem-statement] illustrating the
  CDNI model and the CDNI interfaces are replicated below.

  The Capability Information Advertising Protocol is not explicitly shown in figure
  1. Although that might be changed later upon the working group's decision, but now
  it is thought that capability advertisement is part of the function of the Request
  Routing interface.


     --------
    /        \
    |   CSP  |
    \        /
     --------
         *
         *
         *                         /\
         *                        /  \
     ----------------------      |CDNI|        ----------------------
    /     Upstream CDN     \     |    |       /    Downstream CDN    \
    |      +-------------+ | Control Interface| +-------------+      |
    |*******   Control   |<======|====|========>|   Control   *******|
    |*     +------*----*-+ |     |    |       | +-*----*------+     *|
    |*            *    *   |     |    |       |   *    *            *|
    |*     +------*------+ | Logging Interface| +------*------+     *|
    |* *****   Logging   |<======|====|========>|   Logging   ***** *|
    |* *   +-*-----------+ |     |    |       | +-----------*-+   * *|
    |* *     *         *   | Request Routing  |   *         *     * *|
  .....*...+-*---------*-+ |    Interface     | +-*---------*-+...*.*...
  . |* * *** Req-Routing |<======|====|========>| Req-Routing *** * *| .
  . |* * * +-------------+.|     |    |       | +-------------+ * * *| .
  . |* * *                 .  CDNI Metadata   |                 * * *| .
  . |* * * +-------------+ |.   Interface     | +-------------+ * * *| .
  . |* * * | Distribution|<==.===|====|========>| Distribution| * * *| .
  . |* * * |             | |  .   \  /        | |             | * * *| .
  . |* * * |+---------+  | |   .   \/         | |  +---------+| * * *| .


He et all                 Expires August 16, 2012                   [Page 3]


Internet-Draft              cap-info-advertising                 February 2012


  . |* * ***| +---------+| |    ....Request......+---------+ |*** * *| .
  . |* *****+-|Surrogate|************************|Surrogate|-+***** *| .
  . |*******  +---------+| |   Acquisition    | |+----------+ *******| .
  . |      +-------------+ |                  | +-------*-----+      | .
  . \                      /                  \         *            / .
  .  ----------------------                    ---------*------------  .
  .                                                     *              .
  .                                                     * Delivery     .
  .                                                     *              .
  .                                                  +--*---+          .
  ...............Request.............................| User |..Request..
                                                     | Agent|
                                                     +------+


                  <==>  interfaces inside the scope of CDNI
                  ****  interfaces outside the scope of CDNI
                  ....  interfaces outside the scope of CDNI
                          Figure 1: CDNI Model



2. Conventions used in this document

  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 [RFC2119].

3. Capability information description

  The Capability Information Advertising Protocol allows the Downstream CDN to
  provide the Upstream CDN with information (e.g. resources, footprint, load) to
  facilitate selection of the Downstream CDN by the Upstream CDN request routing
  system when processing subsequent content requests from User Agents.

  From the perspective of an Upstream CDN, to make a routing decision from multiple
  Downstream CDNs which will meet the local policy or requirement of the CP, the
  information needed may includes:

  O Status of each CDN, e.g. in service or out of service;

  O Resource status of each Downstream CDN, e.g. usage percentage of acquisition
  bandwidth, usage percentage of delivery bandwidth, available acquisition bandwidth,
  available delivery bandwidth etc.;

  O Footprint of each Downstream CDN;



He et all                 Expires August 16, 2012                   [Page 4]


Internet-Draft              cap-info-advertising                 February 2012


  O Delivery protocol supported by each Downstream CDN;

  O Cost information of each Downstream CDN;

  O Authentication type to end user supported by each of the Downstream CDNs
  (Optional)



4. Protocol Function and Operation Overview
  CDN capability is information coupling with a specified application (CDNI), it
  should be conveyed via an application layer protocol rather than any other
  underlying layer protocol e.g. IP layer which should de-coupling with any
  application. In this document HTTP/1.1 protocol [RFC2616] is used for capability
  information advertising. The CDNs which have contracted for providing
  interconnection service to each other send capability advertisement messages to
  their interconnected peers. The detailed capability information description and
  message definition is described in section 5 of this document.

  The Capability Information Advertising Protocol takes two modes. One is report
  mode, where the Downstream CDN advertises its capability information to the
  Upstream CDN during at a periodic interval, e.g. every 5 minutes. The other one is
  query mode, where the Upstream CDN acquires the capability information from the
  Downstream CDN periodically, e.g. every 5 minutes. The Upstream CDN utilizes the
  capability information to makes its routing decision upon receiving a content
  request from an end user.

  To enable the communications over the Capability Information Advertising Protocol,
  the two interconnected CDNs need to know each other's contact address. The contact
  address may be statically pre-configured, dynamically discovered via control
  interface, or other means. However, they are not specified in this document, as
  this is considered not in the scope of the CDNI Capability Information Advertising
  Protocol.


5. Protocol Specification

  This section describes the details of the Capability Information Advertising
  Protocol.

5.1. Capability information description
  The Downstream CDN exposes its capability information to an Upstream CDN to
  facilitate CDN selection among other functions. The exposure should be of
  appropriate granularity to ensure the self-administrative nature of Downstream CDN.

  The following information in Table 2 is considered for capability exchange.

  +----------+-----------+-----------------+------+-------------------------+
  | Name     |  Type     |   Value         | Cat. | Description             |
  +----------+-----------+-----------------+------+-------------------------+


He et all                 Expires August 16, 2012                   [Page 5]


Internet-Draft              cap-info-advertising                 February 2012

  | IPVersion|ENUM,4 byte|1:IPV4;2:IPV6    | M    |IP address version of    |
  |          |           |3:IPV4&IPV6      |      |which a CDN can serve for|
  |          |           |                 |      |end users                |
  +----------+-----------+-----------------+------+-------------------------+
  | Service- |ENUM,4 byte|1:in-service;    | M    | CDNI service status     |
  | Status   |           |2:out-of-service |      |                         |
  +----------+-----------+-----------------+------+-------------------------+
  |maxDelive-|           |  Integer starts |      |Maximum bandwidth commit-|
  |ryBW      |  UNIT32   |  from zero      | M    |ted for content delivery |
  |          |           |  Unit:Mbps      |      |                         |
  +----------+-----------+-----------------+------+-------------------------+
  |          |           | Integer starts  |      | Current usage percentage|
  |DeliveryBW|  UNIT8    |from zero to 100 | M    | of  bandwidth for       |
  |Usage     |           |                 |      | content delivery        |
  +----------+-----------+-----------------+------+-------------------------+
  |maxConnec-| UNIT32    |  Integer starts | M    |Maximum number of simult-|
  |tion      |           |  from zero      |      |neous HTTP connections   |
  |          |           |                 |      |committed for content    |
  |          |           |                 |      |delivery                 |
  +----------+-----------+-----------------+------+-------------------------+
  |usedConne-| UNIT32    | Integer starts  | M    |Number of HTTP connection|
  |ction     |           | from zero       |      | for content delivery    |
  +----------+-----------+-----------------+------+-------------------------+
  |Delivery- |  List     |A list of protoc-| M    | Supported delivery      |
  |Protocol  |           |ols,e.g.HTTP,RTSP|      |   protocols             |
  +----------+-----------+-----------------+------+-------------------------+
  |Coverage  |  List     |Coverage represe-|      | CDN coverage            |
  |          |           |nted by ASN or   |      |                         |
  |          |           |Contry,State,City| M    |                         |
  |          |           |combination of   |      |                         |
  |          |           |the covered      |      |                         |
  |          |           |region           |      |                         |
  +----------+-----------+-----------------+------+-------------------------+
  |Cost      | Object    |A Currency and a | M    | CDN Cost                |
  |          |           |Price subelement |      |                         |
  +----------+-----------+-----------------+------+-------------------------+
  |Currency  | String    |USD,CNY, EUR etc.| M    | CDN Currency            |
  +----------+-----------+-----------------+------+-------------------------+
  |Price     | UNIT32    |  Integer starts |      | CDN Price for per GB    |
  |          |           |  From zero      | M    | data delivery           |
  +----------+-----------+-----------------+------+-------------------------+
  |UserAuth  |ENUM,4 byte| 1:urlSigning;   |      | Authentication type to  |
  |          |           | 2:urlToken      | O    | end user supported byCDN|
  +----------+-----------+-----------------+------+-------------------------+

  Note: The value of "maxDeliveryBW" and "DeliveryBWUsage" may be
  an absolute value taking only the physical bandwidth of the CDN into
  account or it may be a normalized value which may also consider the disk I/O
  capacity and CPU usage as a whole. This depends on the CDN specific implementation
  and is out of scope of CDNI.
                   Table 2 capability information description

5.2. Message description
  The HTTP/1.1 protocol is used for capability advertising.



He et all                 Expires August 16, 2012                   [Page 6]


Internet-Draft              cap-info-advertising                 February 2012

  The HTTP request is HTTP POST for Report mode and HTTP GET for Query mode
  respectively.

  The request URI in both modes conforms to [RFC3986]. The URI format in this
  document is as follows: HTTP://<host>/<url-path>, where the <host> specifies a
  destination, and the <url-path>  conveys the message name.

  The message body representation specified in this document is JavaScript Object
  Notation(JSON).

5.2.1. Report mode
  The Downstream CDN issues an HTTP POST message to the Upstream CDN to report its
  capability information.

  The message name in the request URI is "CdniCapReport".

  The Content-Type header field is "application/json".

  The message body includes capability information.

  Upon successful receipt of the POST request, the Upstream CDN responds with a 200
  OK message.


5.2.2. Query mode
  The Upstream CDN issues a HTTP GET message to a Downstream CDN to query its
  capability information.

  The message name in the request URI is "CdniCapQuery".

  Upon successful receipt of the GET request, the Downstream CDN responds a 200 OK
  message with its capability information.

  The Content-Type header field for the response is "application/json".


5.3. Message examples

  This section gives some message examples for Capability Information Advertising
  Protocol.

5.3.1. Report mode
  The POST request and corresponding response are illustrated as below.

  Request example (Downstream CDN to Upstream CDN):

  POST http://contact-address.ucdn.example/CdniCapReport HTTP/1.1
  Content-Type: application/json
  Content-Length: 350


He et all                 Expires August 16, 2012                   [Page 7]


Internet-Draft              cap-info-advertising                 February 2012


   {
       "IPVersion":1,
       "ServiceStatus":1,
       "maxDeliveryBW":5000,
       "DeliveryBWUsage":40,
       "maxConnection": 2000,
       "usedConnection": 600,
       "DeliveryProtocol":["HTTP","RSTP"],
       "Cost":
      {"Currency":USD,
       "Price":200,
      },

       "Coverage":
       [
           {
              "ASN":1000
           },

           {
               "ASN":2000
           }
        ]
    }


  Response example:

      HTTP/1.1 200 OK
5.3.2. Query mode
  The GET request and corresponding response are illustrated as below.

  Request example (Upstream CDN to Downstream CDN):

  GET http://contact-address.dcdn.example/CdniCapQuery HTTP/1.1


  Response example:

  HTTP/1.1 200 OK
  Content-Type: application/json
  Content-Length: 350

  The content of message body is the same as that of POST message illustrated in
  section 4.3.1.



6. Security Considerations
  Capability advertising is a main function which will affect the final routing
  decision of an upstream CDN, security threats on it



He et all                 Expires August 16, 2012                   [Page 8]


Internet-Draft              cap-info-advertising                 February 2012

  include that any identity spoofing of the downstream CDN or changing of the
  capability advertising message with malicious intent which would cause the
  upstream CDN redirect an end user request to an inappropriate downstream CDN which
  possible cannot provide service to the end user.

  It is mentioned in section 8 of the requirement draft [I-D.draft-cdni-
  requirements], all the CDNI interface shall support secure operation over
  unsecured IP connectivity (e.g. The Internet).  This includes authentication,
  confidentiality, integrity protection as well as protection against spoofing and
  replay. As this security requirement applies to all the CDNI interfaces and it is
  recommended that the working group addresses this issue and considers a consistent
  solution in another separate document later.

7. IANA Considerations
  If the approach described in this document is adopted, we would request that IANA
  allocate the message name "CdniCapReport" and CdniCapQuery" in the HTTP Parameters
  registry.

8. References

8.1. Normative References
   [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
   Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
   Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
   Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.


   [RFC3986] Berners-Lee, T., Fielding, R. and L. Masinter, "Uniform
   Resource Identifiers (URI): Generic Syntax and Semantics",
   RFC 3986, January 2005.


8.2. Informative References
   [I-D.draft-cdni-use-cases]
   "Use Cases for Content Delivery Network Interconnection",
   Gilles Bertrand, Stephan Emile, Grant Watson, Trevor
   Burbridge, Philip Eardley, Kevin Ma, 22-Sep-11, <draft-ietf-
   cdni-use-cases-03.txt>.

   [I-D.draft-cdni-problem-statement]
   "Content Distribution Network Interconnection (CDNI) Problem
   Statement", Ben Niven-Jenkins, Francois Faucheur, Nabil
   Bitar, 9-Sep-11, <draft-ietf-cdni-problem-statement-03.txt>.


  [I-D.draft-cdni-requirements]
   "Content Distribution Network Interconnection (CDNI)
   Requirements", Kent Leung, Yiu Lee, 9-Sep-11, <draft-ietf-
   cdni-requirements-02.txt>.


He et all                 Expires August 16, 2012                   [Page 9]


Internet-Draft              cap-info-advertising                 February 2012

   [I-D.davie-cdni-framework]
   Davie, B. and L. Peterson, "Framework for CDN
   Interconnection", draft-davie-cdni-framework-01 (work in
   progress), July 2011.

9. Acknowledgments

  This document was prepared using 2-Word-v2.0.template.dot.








































He et all                 Expires August 16, 2012                   [Page 10]


Internet-Draft              cap-info-advertising                 February 2012


Authors' Addresses
   Xiaoyan He
   Huawei
   B2, Huawei Industrial Base, 518129
   China

   Email: hexiaoyan@huawei.com


   Spencer Dawkins
   Huawei

   Email: spencer@wonderhamster.org


   Ge Chen
   China Telecom
   109 West Zhongshan Ave,Tianhe District,Guangzhou,P.R.C

   Email: cheng@gsta.com


   Yunfei Zhang
   China Mobile

   Email: zhangyunfei@chinamobile.com

   Wei Ni
   China Mobile
   No.32 Xuanwumen West Street Xicheng District Beijing, 100053
   China

   Email: niwei@chinamobile.com

















He et all                 Expires August 16, 2012                   [Page 11]