draft-ietf-cdni-framework-08.txt   draft-ietf-cdni-framework-09.txt 
Network Working Group L. Peterson, Ed. Network Working Group L. Peterson
Internet-Draft Akamai Technologies, Inc. Internet-Draft Akamai Technologies, Inc.
Obsoletes: 3466 (if approved) B. Davie Obsoletes: 3466 (if approved) B. Davie
Intended status: Informational VMware, Inc. Intended status: Informational VMware, Inc.
Expires: July 23, 2014 January 19, 2014 Expires: August 3, 2014 R. van Brandenburg, Ed.
TNO
January 30, 2014
Framework for CDN Interconnection Framework for CDN Interconnection
draft-ietf-cdni-framework-08 draft-ietf-cdni-framework-09
Abstract Abstract
This document presents a framework for Content Distribution Network This document presents a framework for Content Distribution Network
Interconnection (CDNI). The purpose of the framework is to provide Interconnection (CDNI). The purpose of the framework is to provide
an overall picture of the problem space of CDNI and to describe the an overall picture of the problem space of CDNI and to describe the
relationships among the various components necessary to interconnect relationships among the various components necessary to interconnect
CDNs. CDN Interconnection requires the specification of interfaces CDNs. CDN Interconnection requires the specification of interfaces
and mechanisms to address issues such as request routing, and mechanisms to address issues such as request routing,
distribution metadata exchange, and logging information exchange distribution metadata exchange, and logging information exchange
skipping to change at page 1, line 41 skipping to change at page 1, line 43
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on July 23, 2014. This Internet-Draft will expire on August 3, 2014.
Copyright Notice Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the Copyright (c) 2014 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 6, line 28 skipping to change at page 6, line 28
interfaces in more detail in Section 4. interfaces in more detail in Section 4.
o CDNI Control interface (CI): Operations to bootstrap and o CDNI Control interface (CI): Operations to bootstrap and
parameterize the other CDNI interfaces, as well as operations to parameterize the other CDNI interfaces, as well as operations to
pre-position, revalidate, and purge both metadata and content. pre-position, revalidate, and purge both metadata and content.
The latter subset of operations is sometimes collectively called The latter subset of operations is sometimes collectively called
the "Trigger interface." the "Trigger interface."
o CDNI Request Routing interface: Operations to determine what CDN o CDNI Request Routing interface: Operations to determine what CDN
(and optionally what surrogate within a CDN) is to serve end- (and optionally what surrogate within a CDN) is to serve end-
user's requests. Is actually a logical bundling of two separate user's requests. This interface is actually a logical bundling of
but related interfaces: two separate but related interfaces:
* CDNI Footprint & Capabilities Advertisement interface (FCI): * CDNI Footprint & Capabilities Advertisement interface (FCI):
Asynchronous operations to exchange routing information (e.g., Asynchronous operations to exchange routing information (e.g.,
the network footprint and capabilities served by a given CDN) the network footprint and capabilities served by a given CDN)
that enables CDN selection for subsequent user requests; and that enables CDN selection for subsequent user requests; and
* CDNI Request Routing Redirection interface (RI): Synchronous * CDNI Request Routing Redirection interface (RI): Synchronous
operations to select a delivery CDN (surrogate) for a given operations to select a delivery CDN (surrogate) for a given
user request. user request.
skipping to change at page 7, line 6 skipping to change at page 7, line 6
availability windows, access control mechanisms, and purge availability windows, access control mechanisms, and purge
directives. It may include a combination of: directives. It may include a combination of:
* Asynchronous operations to exchange metadata that govern * Asynchronous operations to exchange metadata that govern
subsequent user requests for content; and subsequent user requests for content; and
* Synchronous operations that govern behavior for a given user * Synchronous operations that govern behavior for a given user
request for content. request for content.
o CDNI Logging interface (LI): Operations that allow interconnected o CDNI Logging interface (LI): Operations that allow interconnected
CDNs to exchange relevant activity logs. May include a CDNs to exchange relevant activity logs. It may include a
combination of: combination of:
* Real-time exchanges, suitable for runtime traffic monitoring; * Real-time exchanges, suitable for runtime traffic monitoring;
and and
* Offline exchanges, suitable for analytics and billing. * Offline exchanges, suitable for analytics and billing.
There is some potential overlap between the set of Trigger-based There is some potential overlap between the set of Trigger-based
operations in the CDNI Control interface and the CDNI Metadata operations in the CDNI Control interface and the CDNI Metadata
interface. For both cases, the information passed from the upstream interface. For both cases, the information passed from the upstream
skipping to change at page 11, line 17 skipping to change at page 11, line 17
| | | | | |
| | [Async FCI Push] | (1) | | [Async FCI Push] | (1)
| | | | | |
| | [MI pre-positioning] | (2) | | [MI pre-positioning] | (2)
| | | | | |
| CONTENT REQUEST | | | CONTENT REQUEST | |
|-------------------------------------------------->| (3) |-------------------------------------------------->| (3)
| | | | | |
| | [Sync RI Pull] | (4) | | [Sync RI Pull] | (4)
| | | | | |
| [RI REPLY] | | | RI REPLY | |
|<--------------------------------------------------| (5) |<--------------------------------------------------| (5)
| | | | | |
| | | | | |
| CONTENT REQUEST | | | CONTENT REQUEST | |
|------------------------>| | (6) |------------------------>| | (6)
| | | | | |
| | [Sync MI Pull] | (7) | | [Sync MI Pull] | (7)
| | | | | |
| | ACQUISITION REQUEST | | | ACQUISITION REQUEST |
| X------------------------>| (8) | X------------------------>| (8)
skipping to change at page 15, line 18 skipping to change at page 15, line 18
|------------------------>| | |------------------------>| |
| |(6) | | |(6) |
| |DNS op-b-acq.op-a.example| | |DNS op-b-acq.op-a.example|
| |------------------------>| | |------------------------>|
| | |(7) | | |(7)
| |IPaddr of A's Request Router | |IPaddr of A's Request Router
| |<------------------------| | |<------------------------|
| |HTTP op-b-acq.op-a.example | |HTTP op-b-acq.op-a.example
| |------------------------>| | |------------------------>|
| | |(8) | | |(8)
| |302 node2.op-b.acq.op-A.example | |302 node2.op-b-acq.op-a.example
| |<------------------------| | |<------------------------|
| |DNS node2.op-b-acq.op-a.example | |DNS node2.op-b-acq.op-a.example
| |------------------------>| | |------------------------>|
| | |(9) | | |(9)
| |IPaddr of A's Delivery Node | |IPaddr of A's Delivery Node
| |<------------------------| | |<------------------------|
| | | | | |
| |HTTP node2.op-b-acq.op-a.example | |HTTP node2.op-b-acq.op-a.example
| |------------------------>| | |------------------------>|
| | |(10) | | |(10)
skipping to change at page 20, line 12 skipping to change at page 20, line 12
|------------------------>| | |------------------------>| |
| |(5) | | |(5) |
| |DNS op-b-acq.op-a.example| | |DNS op-b-acq.op-a.example|
| |------------------------>| | |------------------------>|
| | |(6) | | |(6)
| |IPaddr of A's Request Router | |IPaddr of A's Request Router
| |<------------------------| | |<------------------------|
| |HTTP op-b-acq.op-a.example | |HTTP op-b-acq.op-a.example
| |------------------------>| | |------------------------>|
| | |(7) | | |(7)
| |302 node2.op-b.acq.op-A.example | |302 node2.op-b-acq.op-a.example
| |<------------------------| | |<------------------------|
| |DNS node2.op-b-acq.op-a.example | |DNS node2.op-b-acq.op-a.example
| |------------------------>| | |------------------------>|
| | |(8) | | |(8)
| |IPaddr of A's Delivery Node | |IPaddr of A's Delivery Node
| |<------------------------| | |<------------------------|
| | | | | |
| |HTTP node2.op-b-acq.op-a.example | |HTTP node2.op-b-acq.op-a.example
| |------------------------>| | |------------------------>|
| | |(9) | | |(9)
skipping to change at page 45, line 5 skipping to change at page 45, line 5
Figure 11: CDNI Deployment Model: CDN Meshing Example Figure 11: CDNI Deployment Model: CDN Meshing Example
5.2. CSP combined with CDN 5.2. CSP combined with CDN
Note that our terminology refers to functional roles and not economic Note that our terminology refers to functional roles and not economic
or business roles. That is, a given organization may be operating as or business roles. That is, a given organization may be operating as
both a CSP and a fully fledged uCDN when we consider the functions both a CSP and a fully fledged uCDN when we consider the functions
performed, as illustrated in Figure 12. performed, as illustrated in Figure 12.
##################################### ################## ##################################### ##################
# # # # # # # #
# Organization A # # Organization B # # Organization A # # Organization B #
# # # # # # # #
# -------- ------------- # # ----------- # # -------- ------------- # # ----------- #
# / CSP \ / uCDN \ # # / dCDN \ # # / CSP \ / uCDN \ # # / dCDN \ #
# | | | +----+ | # # | +----+ | # # | | | +----+ | # # | +----+ | #
# | | | | C | | # # | | C | | # # | | | | C | | # # | | C | | #
# | | | +----+ | # # | +----+ | # # | | | +----+ | # # | +----+ | #
# | | | +----+ | # # | +----+ | # # | | | +----+ | # # | +----+ | #
# | | | | L | | # # | | L | | # # | | | | L | | # # | | L | | #
# | |*****| +----+ |===CDNI===>| +----+ | # # | |*****| +----+ |===CDNI===>| +----+ | #
# | | | +----+ | # # | +----+ | # # | | | +----+ | # # | +----+ | #
# | | | | RR | | # # | | RR | | # # | | | | RR | | # # | | RR | | #
# | | | +----+ | # # | +----+ | # # | | | +----+ | # # | +----+ | #
# | | | +----+ | # # | +----+ | # # | | | +----+ | # # | +----+ | #
# | | | | D | | # # | | D | | # # | | | | D | | # # | | D | | #
# | | | +----+ | # # | +----+ | # # | | | +----+ | # # | +----+ | #
# \ / \ / # # \ / # # \ / \ / # # \ / #
# -------- ------------- # # ----------- # # -------- ------------- # # ----------- #
# # # # # # # #
##################################### ################## ##################################### ##################
===> CDNI interfaces, with right-hand side CDN acting as dCDN ===> CDNI interfaces, with right-hand side CDN acting as dCDN
to left-hand side CDN to left-hand side CDN
**** interfaces outside the scope of CDNI **** interfaces outside the scope of CDNI
C Control component of the CDN C Control component of the CDN
L Logging component of the CDN L Logging component of the CDN
RR Request Routing component of the CDN RR Request Routing component of the CDN
D Distribution component of the CDN D Distribution component of the CDN
Figure 12: CDNI Deployment Model: Organization combining CSP & uCDN Figure 12: CDNI Deployment Model: Organization combining CSP & uCDN
5.3. CSP using CDNI Request Routing Interface 5.3. CSP using CDNI Request Routing Interface
As another example, a content provider organization may choose to run As another example, a content provider organization may choose to run
its own request routing function as a way to select among multiple its own request routing function as a way to select among multiple
candidate CDN providers; In this case the content provider may be candidate CDN providers; In this case the content provider may be
modeled as the combination of a CSP and of a special, restricted case modeled as the combination of a CSP and of a special, restricted case
of a CDN. In that case, as illustrated in Figure 13, the CDNI of a CDN. In that case, as illustrated in Figure 13, the CDNI
Request Routing interfaces can be used between the restricted CDN Request Routing interfaces can be used between the restricted CDN
operated by the content provider Organization and the CDN operated by operated by the content provider Organization and the CDN operated by
the full CDN organization acting as a dCDN in the request routing the full CDN organization acting as a dCDN in the request routing
control plane. Interfaces outside the scope of the CDNI work can be control plane. Interfaces outside the scope of the CDNI work can be
used between the CSP functional entities of the content provider used between the CSP functional entities of the content provider
organization and the CDN operated by the full CDN organization acting organization and the CDN operated by the full CDN organization acting
as a uCDN) in the CDNI control planes other than the request routing as a uCDN) in the CDNI control planes other than the request routing
plane (i.e. Control, Distribution, Logging). plane (i.e. Control, Distribution, Logging).
##################################### ################## ##################################### ##################
# # # # # # # #
# Organization A # # Organization B # # Organization A # # Organization B #
# # # # # # # #
# -------- ------------- # # ----------- # # -------- ------------- # # ----------- #
# / CSP \ / uCDN(RR) \ # # / dCDN(RR) \ # # / CSP \ / uCDN(RR) \ # # / dCDN(RR) \ #
# | | | +----+ | # # | +----+ | # # | | | +----+ | # # | +----+ | #
# | |*****| | RR |==========CDNI=====>| RR | | # # | |*****| | RR |==========CDNI=====>| RR | | #
# | | | +----+ | # RR # | +----+ | # # | | | +----+ | # RR # | +----+ | #
# | | \ / # # | | # # | | \ / # # | | #
# | | ------------- # # |uCDN(C,L,D)| # # | | ------------- # # |uCDN(C,L,D)| #
# | | # # | +----+ | # # | | # # | +----+ | #
# | | # # | | C | | # # | | # # | | C | | #
# | |*******************************| +----+ | # # | |*******************************| +----+ | #
# | | # # | +----+ | # # | | # # | +----+ | #
# | | # # | | L | | # # | | # # | | L | | #
# | | # # | +----+ | # # | | # # | +----+ | #
# | | # # | +----+ | # # | | # # | +----+ | #
# | | # # | | D | | # # | | # # | | D | | #
# | | # # | +----+ | # # | | # # | +----+ | #
# \ / # # \ / # # \ / # # \ / #
# -------- # # ----------- # # -------- # # ----------- #
# # # # # # # #
##################################### ################## ##################################### ##################
===> CDNI Request Routing Interface ===> CDNI Request Routing Interface
**** interfaces outside the scope of CDNI **** interfaces outside the scope of CDNI
Figure 13: CDNI Deployment Model: Organization combining CSP and Figure 13: CDNI Deployment Model: Organization combining CSP and
partial CDN partial CDN
5.4. CDN Federations and CDN Exchanges 5.4. CDN Federations and CDN Exchanges
There are two additional concepts related to, but distinct from CDN There are two additional concepts related to, but distinct from CDN
Interconnection. The first is CDN Federation. Our view is that CDNI Interconnection. The first is CDN Federation. Our view is that CDNI
is the more general concept, involving two or more CDNs serving is the more general concept, involving two or more CDNs serving
content to each other's users, while federation implies a multi- content to each other's users, while federation implies a multi-
skipping to change at page 52, line 14 skipping to change at page 52, line 14
by the CDNI interfaces. Details of how these interfaces are secured by the CDNI interfaces. Details of how these interfaces are secured
will be specified in the relevant interface documents. will be specified in the relevant interface documents.
8.2. Digital Rights Management 8.2. Digital Rights Management
Issues of digital rights management (DRM, also sometimes called Issues of digital rights management (DRM, also sometimes called
digital restrictions management) is often employed for content digital restrictions management) is often employed for content
distributed via CDNs. In general, DRM relies on the CDN to distributed via CDNs. In general, DRM relies on the CDN to
distribute encrypted content, with decryption keys distributed to distribute encrypted content, with decryption keys distributed to
users by some other means (e.g. directly from the CSP to the end users by some other means (e.g. directly from the CSP to the end
user.) For this reason, DRM is considered out of scope for the CDNI user.) For this reason, DRM is considered out of scope [RFC6707] and
WG [RFC6707] and does not introduce additional security issues for does not introduce additional security issues for CDNI.
CDNI.
9. Contributors 9. Contributors
The following individuals contributed to this document: The following individuals contributed to this document:
o Ray van Brandenburg o Ray van Brandenburg
o Matt Caulfield o Matt Caulfield
o Francois le Faucheur o Francois le Faucheur
skipping to change at page 53, line 36 skipping to change at page 53, line 31
[I-D.ietf-cdni-redirection] [I-D.ietf-cdni-redirection]
Danhua, W., Niven-Jenkins, B., He, X., Chen, G., and W. Danhua, W., Niven-Jenkins, B., He, X., Chen, G., and W.
Ni, "Request Routing Redirection Interface for CDN Ni, "Request Routing Redirection Interface for CDN
Interconnection", draft-ietf-cdni-redirection-01 (work in Interconnection", draft-ietf-cdni-redirection-01 (work in
progress), October 2013. progress), October 2013.
[I-D.ietf-cdni-requirements] [I-D.ietf-cdni-requirements]
Leung, K. and Y. Lee, "Content Distribution Network Leung, K. and Y. Lee, "Content Distribution Network
Interconnection (CDNI) Requirements", draft-ietf-cdni- Interconnection (CDNI) Requirements", draft-ietf-cdni-
requirements-14 (work in progress), December 2013. requirements-16 (work in progress), January 2014.
[I-D.vandergaast-edns-client-subnet] [I-D.vandergaast-edns-client-subnet]
Contavalli, C., Gaast, W., Leach, S., and E. Lewis, Contavalli, C., Gaast, W., Leach, S., and E. Lewis,
"Client Subnet in DNS Requests", draft-vandergaast-edns- "Client Subnet in DNS Requests", draft-vandergaast-edns-
client-subnet-02 (work in progress), July 2013. client-subnet-02 (work in progress), July 2013.
[RFC3466] Day, M., Cain, B., Tomlinson, G., and P. Rzewski, "A Model [RFC3466] Day, M., Cain, B., Tomlinson, G., and P. Rzewski, "A Model
for Content Internetworking (CDI)", RFC 3466, February for Content Internetworking (CDI)", RFC 3466, February
2003. 2003.
skipping to change at page 54, line 16 skipping to change at page 54, line 12
K., and G. Watson, "Use Cases for Content Delivery Network K., and G. Watson, "Use Cases for Content Delivery Network
Interconnection", RFC 6770, November 2012. Interconnection", RFC 6770, November 2012.
[RFC6983] van Brandenburg, R., van Deventer, O., Le Faucheur, F., [RFC6983] van Brandenburg, R., van Deventer, O., Le Faucheur, F.,
and K. Leung, "Models for HTTP-Adaptive-Streaming-Aware and K. Leung, "Models for HTTP-Adaptive-Streaming-Aware
Content Distribution Network Interconnection (CDNI)", RFC Content Distribution Network Interconnection (CDNI)", RFC
6983, July 2013. 6983, July 2013.
Authors' Addresses Authors' Addresses
Larry Peterson (editor) Larry Peterson
Akamai Technologies, Inc. Akamai Technologies, Inc.
8 Cambridge Center 8 Cambridge Center
Cambridge, MA 02142 Cambridge, MA 02142
USA USA
Email: lapeters@akamai.com Email: lapeters@akamai.com
Bruce Davie Bruce Davie
VMware, Inc. VMware, Inc.
3401 Hillview Ave. 3401 Hillview Ave.
Palo Alto, CA 94304 Palo Alto, CA 94304
USA USA
Email: bdavie@vmware.com Email: bdavie@vmware.com
Ray van Brandenburg (editor)
TNO
Brassersplein 2
Delft 2612CT
the Netherlands
Phone: +31-88-866-7000
Email: ray.vanbrandenburg@tno.nl
 End of changes. 17 change blocks. 
70 lines changed or deleted 71 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/