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]