Network Working Group M. Day Internet-Draft Cisco Expires: March 31, 2001 B. Cain Mirror Image Internet G. Tomlinson Entera September 30, 2000 A Model for CDN Peering draft-day-cdnp-model-01.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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 March 31, 2001. Copyright Notice Copyright (C) The Internet Society (2000). All Rights Reserved. Abstract There is wide interest in interconnecting content distribution networks (CDNs), variously called "content peering" or "CDN peering". A common vocabulary helps the process of discussing such interconnection and interoperation. This document proposes elements for a such a common vocabulary. Note on Content Alliance This document is an interim product of work in progress within the Day, et. al. Expires March 31, 2001 [Page 1] Internet-Draft CDNPM September 2000 Content Alliance. For information about the Content Alliance, see www.content-peering.org. Please send comments about this document to cpwg-discussion@content-peering.org. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Problem Description . . . . . . . . . . . . . . . . . . . . . 4 2.1 Extending Reach & Scale . . . . . . . . . . . . . . . . . . . 5 3. Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 4. Examples and Commentary . . . . . . . . . . . . . . . . . . . 11 4.1 Understanding CDNs . . . . . . . . . . . . . . . . . . . . . . 11 4.2 Understanding content structure . . . . . . . . . . . . . . . 11 4.3 Understanding Peering . . . . . . . . . . . . . . . . . . . . 12 4.4 Content Signalling . . . . . . . . . . . . . . . . . . . . . . 12 5. Security Considerations . . . . . . . . . . . . . . . . . . . 13 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 14 References . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 15 Full Copyright Statement . . . . . . . . . . . . . . . . . . . 17 Day, et. al. Expires March 31, 2001 [Page 2] Internet-Draft CDNPM September 2000 1. Introduction This document presents a vocabulary for use in developing "content peering," or more accurately "peering of CDNs". Section 2 describes content distribution, CDNs, and the motivation for peering of CDNs in some more detail. Section 3 consists of the actual definitions that constitute the model, and is intended to be the authoritative part of the document. All other sections contain examples and introduction. Section 4 uses the definitions to further explain how aspects of peering are likely to work. Section 3 is organized alphabetically, which is appropriate for reference but which makes it difficult to read the first time. Rather than reading the document from beginning to end, the authors recommend that the first-time reader read sections 2 and 4, looking at definitions in section 3 as necessary. The interested reader is also referred to [3], which enumerates a large number of scenarios for content-peering-related interactions; [4], which describes a number of models for accounting and associated issues; and [5], which gives the overall architecture of the elements for CDN peering. Day, et. al. Expires March 31, 2001 [Page 3] Internet-Draft CDNPM September 2000 2. Problem Description Abstractly, the "content distribution problem" is to arrange a rendezvous between a content source at an origin server and a content sink at a viewer's client. In the trivial case (conventional web access without a CDN), the rendezvous mechanism is that every client sends every request directly to the origin server. This trivial approach to content distribution suffers from scaling and manageability problems. As the audience for the content source grows, so do the demands on the origin server and its associated infrastructure. A content provider with a popular content source can find that it has to invest in large server farms, load balancing, and high-bandwidth connections to keep up with demand. Even with those investments, the user experience for viewers may still be relatively poor due to congestion in the network as a whole. A content provider wants to focus its resources on developing high-value content, not on managing network infrastructure; so there is an opportunity for a service provider in this situation. A service provider can build a CDN and offer a content distribution service to a content provider. A CDN enables a service provider to act on behalf of the content provider to deliver copies of origin server content from multiple diverse locations. The increase in number and diversity of locations is intended to speed download times and thus improve the user experience. A nontrivial CDN has some combination of a redirection infrastructure, a content-delivery infrastructure, and a distribution infrastructure. The content-delivery infrastructure consists of a set of "surrogate" servers that deliver copies of content to sets of users. The redirection infrastructure consists of mechanisms that move a client toward a rendezvous with a content server. The distribution infrastructure consists of mechanisms that move content from the origin server to the surrogates. An effective CDN serves frequently-accessed content from a surrogate that is "best suited" for a given client. There are two fundamental elements that give a CDN value: outsourcing infrastructure and improved content delivery. A CDN allows multiple surrogates to act on behalf of an orgin server, therefore removing the delivery of content from a centralized site to multiple and (usually) highly distributed sites. We refer to increased aggregate infrastructure size as scale. In addition, a CDN can be constructed with copies of content near to end users, overcoming issues of network size, network congestion, and network failures. We refer to increased diversity of content locations as reach. Day, et. al. Expires March 31, 2001 [Page 4] Internet-Draft CDNPM September 2000 2.1 Extending Reach & Scale In a typical (non-peered) CDN, a single service provider operates the request routers, the surrogates, and the content distributors. In addition, that service provider establishes (business) relationships withe content publishers and acts on behalf of their origin sites to provide a distributed delivery system. The value of that CDN to a content provider is a combination of its scale and its reach. There are limits to how large any one network's scale and reach can be. Increasing either scale or reach is ultimately limited by the cost of equipment, the space available for deploying equipment, and/or the demand for that scale/reach of infrastructure. Sometimes a particular audience is tied to a single service provider or a small set of providers by constraints of technology, economics, or law. Other times, a network provider may be able to manage surrogates and a distribution system, but may have no direct relationship with content providers. Such a provider wants to have a means of affiliating their delivery and distribution infrastructure with other parties who have content to distribute. CDN peering allows different CDNs to share resources so as to provide larger scale and/or reach to each participant than they could otherwise achieve. Day, et. al. Expires March 31, 2001 [Page 5] Internet-Draft CDNPM September 2000 3. Model This section consists of the definitions of a number of terms used to refer to roles, participants, and objects involved in Content Distribution Networks and CDN Peering. This section and the references section are normative. ACCOUNTING Measurement and recording of DISTRIBUTION and DELIVERY activities, especially when the information recorded is ultimately used as a basis for the subsequent transfer of money, goods, or obligations. ACCOUNTING ADVERTISEMENT ADVERTISEMENT from a CDN's ACCOUNTING PEERING SYSTEM about the collections of CONTENT for which that CDN requires ACCOUNTING information. ACCOUNTING PEERING Interconnection of two or more ACCOUNTING SYSTEMS so as to enable the exchange of information between them. The form of ACCOUNTING PEERING required may depend on the nature of the NEGOTIATED RELATIONSHIP between the peering parties -- in particular, on the value of the economic exchanges anticipated. ACCOUNTING PEERING SYSTEM A collection of NETWORK ELEMENTS that support ACCOUNTING PEERING with other CDNs. ACCOUNTING SYSTEM A collection of NETWORK ELEMENTS that supports ACCOUNTING for a single CDN. ADVERTISEMENT Information about available resources, exchanged among PEERING SYSTEMS. Types of ADVERTISEMENT include REDIRECTION ADVERTISEMENTS, DISTRIBUTION ADVERTISEMENTS and ACCOUNTING ADVERTISEMENTS. AUTHORITATIVE REDIRECTION SYSTEM The REDIRECTION SYSTEM that is the correct/final authority for a particular item of CONTENT. Typically operated by the BILLING CDN. BILLING CDN The single CDN that has a NEGOTIATED RELATIONSHIP with the PUBLISHER making that CDN responsible for DISTRIBUTION of some particular collection of CONTENT. Contrast with DISTRIBUTING CDN. Day, et. al. Expires March 31, 2001 [Page 6] Internet-Draft CDNPM September 2000 Usually a BILLING CDN is owned and operated by a corresponding BILLING ORGANIZATION BILLING ORGANIZATION An entity that operates an ACCOUNTING SYSTEM to support billing within a NEGOTIATED RELATIONSHIP with a PUBLISHER. CDN Content Delivery Network or Content Distribution Network. A collection of NETWORK ELEMENTS arranged for more effective delivery of CONTENT to CLIENTS. Typically a CDN consists of a DISTRIBUTION SYSTEM, SURROGATES, a REDIRECTION SYSTEM, and an ACCOUNTING SYSTEM. CLIENT The origin of a REQUEST and the destination of the corresponding delivered CONTENT. CONTENT Digital data resources. CONTENT ultimately consists of CONTENT DATA UNITs whose internal structure is unknown by the CDN. However, some CONTENT may be in a format known to the CDN, so that the CDN does have some ability to parse, analyze, or rearrange the collection of CONTENT DATA UNITs. One important form of CONTENT with additional constraints on DISTRIBUTION and DELIVERY is CONTINUOUS MEDIA. CONTENT DATA UNIT A single collection of CONTENT bits, where any internal structure or semantics are unknown to the CDN. Thus, a CDN can succeed or fail at transporting a CONTENT DATA UNIT, but it cannot parse, analyze, or rearrange it. CONTENT PEERING GATEWAY (CPG) A point through which a CDN can be peered with others through one or more kinds of peering. A CPG may be the point of contact for DISTRIBUTION PEERING, REDIRECTION PEERING, and/or ACCOUNTING PEERING, and thus may incorporate some or all of the corresponding PEERING SYSTEMs for the CDN. CONTENT SIGNAL A message delivered through a DISTRIBUTION SYSTEM that specifies information about an item of CONTENT. For example, a CONTENT SIGNAL can indicate that the ORIGIN has a new version of some piece of CONTENT. CONTINUOUS MEDIA CONTENT where there is a timing relationship between source and sink; that is, the sink must reproduce the timing relationship Day, et. al. Expires March 31, 2001 [Page 7] Internet-Draft CDNPM September 2000 that existed at the source. The most common examples of CONTINUOUS MEDIA are audio and motion video. CONTINUOUS MEDIA can be real-time (interactive), where there is a "tight" timing relationship between source and sink, or streaming (playback), where the relationship is less strict. DELIVERY The activity of presenting a PUBLISHER's CONTENT for consumption by a CLIENT. Contrast with DISTRIBUTION and REDIRECTION. DISTRIBUTING CDN A CDN delivering CONTENT that does not have a NEGOTIATED RELATIONSHIP with the PUBLISHER. Contrast with BILLING CDN. DISTRIBUTION The activity of moving a PUBLISHER's CONTENT from its ORIGIN to one or more SURROGATEs. Contrast with DELIVERY and REDIRECTION. DISTRIBUTION ADVERTISEMENT An ADVERTISEMENT from a CDN's DISTRIBUTION PEERING SYSTEM describing the availability of collections of CONTENT via the CDN's DISTRIBUTION SYSTEM. DISTRIBUTION PEERING Interconnection of two or more DISTRIBUTION SYSTEMS so as to propagate CONTENT SIGNALS and copies of CONTENT to groups of SURROGATES. DISTRIBUTION PEERING SYSTEM A collection of NETWORK ELEMENTS that support DISTRIBUTION PEERING with other CDNs. DISTRIBUTION SYSTEM A collection of NETWORK ELEMENTS that support DISTRIBUTION for a single CDN. The DISTRIBUTION SYSTEM also propagates CONTENT SIGNALs. FIRST-REDIRECTION CDN The CDN whose REDIRECTION SYSTEM first receives a particular REQUEST. The FIRST-REDIRECTION CDN is able to decide how that REQUEST should be redirected, if at all. Contrast with REMOTE CDN. INTER-CDN Related to an activity that involves more than one CDN. Contrast with INTRA-CDN. INTRA-CDN Related to an activity within a single CDN. Contrast with INTER-CDN. Day, et. al. Expires March 31, 2001 [Page 8] Internet-Draft CDNPM September 2000 NEGOTIATED RELATIONSHIP A relationship whose terms and conditions are established outside the context of CDN peering protocols. NETWORK ELEMENT A device or system that affects the processing of network messages. ORIGIN The point at which CONTENT enters the DISTRIBUTION SYSTEM of the BILLING CDN. The ORIGIN for any item of CONTENT is the server or set of servers at the "core" of the distribution, holding the "master" or "authoritative" copy of that CONTENT. PEERING SYSTEM A collection of NETWORK ELEMENTS supporting some form of interconnected operation among two or more CDNs. See ACCOUNTING PEERING SYSTEM, DISTRIBUTION PEERING SYSTEM, REDIRECTION PEERING SYSTEM. PUBLISHER The party that ultimately controls the content and its distribution. The PUBLISHER is the other party to the NEGOTIATED RELATIONSHIP with the BILLING CDN. REACHABLE SURROGATES The collection of SURROGATES that can be contacted via a particular DISTRIBUTION SYSTEM or REDIRECTION SYSTEM. REDIRECTING CDN A CDN whose REDIRECTION SYSTEM participates in the REDIRECTION of a particular REQUEST. REDIRECTION The activity of directing a REQUEST from a CLIENT to a suitable SURROGATE. REDIRECTION ADVERTISEMENT An ADVERTISEMENT from a CDN's REDIRECTION PEERING SYSTEM describing the availability of collections of CONTENT via that CDN's REDIRECTION SYSTEM. REDIRECTION PEERING Interconnection of two or more REDIRECTION SYSTEMS so as to increase the number of REACHABLE SURROGATES for at least one of the interconnected systems. REDIRECTION PEERING SYSTEM A collection of NETWORK ELEMENTS that support REDIRECTION PEERING Day, et. al. Expires March 31, 2001 [Page 9] Internet-Draft CDNPM September 2000 with other CDNs. REDIRECTION SYSTEM A collection of NETWORK ELEMENTS that support REDIRECTION for a single CDN. REMOTE CDN A CDN able to deliver CONTENT for a particular REQUEST that is not the FIRST-REDIRECTION CDN for that REQUEST. REQUEST A message identifying a particular item of CONTENT to be delivered. [Editor Note: Brad Cain recommends distinguishing REDIRECTION REQUEST from CONTENT REQUEST. Does this make the model too closely tied to DNS-style redirection? To be discussed.] SURROGATE A delivery server, other than the ORIGIN. Receives a redirected REQUEST and delivers the corresponding CONTENT. Note: This definition has a narrower semantic context than the more generally used term defined in [2]. Day, et. al. Expires March 31, 2001 [Page 10] Internet-Draft CDNPM September 2000 4. Examples and Commentary This section further describes the model of Section 3 to explain concepts of CDNs and CDN peering. Note that these are only illustrative examples. If there are conflicts between the way a term is used here and the way it is defined in Section 3, the definition in Section 3 is authoritative. 4.1 Understanding CDNs The first use of the model, before peering CDNs, is simply to describe a single CDN at an abstract level. The model describes CLIENTS that issue REQUESTS for CONTENT. Each item of CONTENT starts from some ORIGIN. In the absence of a CDN, each REQUEST could simply go to an appropriate ORIGIN, which would deliver the corresponding CONTENT to the CLIENT. With a CDN, the picture is a little more elaborate. The CLIENT's REQUEST enters a REDIRECTION SYSTEM, and the ORIGIN's CONTENT enters a DISTRIBUTION SYSTEM. Both systems converge on SURROGATES, which are non-ORIGIN servers of CONTENT. Effectively, the DISTRIBUTION SYSTEM is moving CONTENT out to SURROGATES, and the REDIRECTION SYSTEM is then taking advantage of that distribution of CONTENT. [Editor Note: Could change this description to deal with REDIRECTION REQUESTS and CONTENT REQUESTS.] 4.2 Understanding content structure The model defines CONTENT as well as two subsidiary but orthogonal concepts: CONTENT DATA UNIT and CONTINUOUS MEDIA. Any identifiable resource of digital data is an item of CONTENT. So CONTENT is the most generic description of what is transported and served up by a CDN. Although an item of CONTENT may have some internal structure that is known to the CDN, there is some unit (possibly as small as a bit) that is opaque to the CDN. These opaque elements are CONTENT DATA UNITs. In many cases, an item of CONTENT can be delivered by a CDN without concern about maintaining timing relationships. However, there are some forms of CONTENT where it is critical that some timing relationships be met. The model refers to those forms of CONTENT as CONTINUOUS MEDIA. Day, et. al. Expires March 31, 2001 [Page 11] Internet-Draft CDNPM September 2000 4.3 Understanding Peering The model offers a number of ways in which different CDNs can be interconnected. An arrangement of interconnected REDIRECTION SYSTEMS is called REDIRECTION PEERING. Analogously, interconnected DISTRIBUTION SYSTEMS give rise to DISTRIBUTION PEERING, and interconnected ACCOUNTING SYSTEMS give rise to ACCOUNTING PEERING. The communicating elements on each side are referred to as PEERING SYSTEMS. So when two or more DISTRIBUTION SYSTEMS may be interconnected by PEERING, it is actually the DISTRIBUTION PEERING SYSTEMS that are communicating with each other to accomplish the exchange of information required. A CONTENT PEERING GATEWAY (CPG) is a generic term used in the model for one or more PEERING SYSTEMS when it is not important to distinguish the PEERING SYSTEM or form of PEERING involved. CPGs exchange ADVERTISEMENTS. There are three main kinds of ADVERTISEMENT: REDIRECTION ADVERTISEMENTS, DISTRIBUTION ADVERTISEMENTS, and ACCOUNTING ADVERTISEMENTS. A REDIRECTION ADVERTISEMENT describes a collection of URLs whose content can be delivered by redirection through the corresponding CDN. A DISTRIBUTION ANNOUNCEMENT describes the service level(s) available from a CDN's SURROGATES (as a whole) to some collection of CLIENT addresses. An ACCOUNTING ANNOUNCEMENT a collection of CLIENT addresses, and the level of service that it can offer for delivering content to those CLIENTS. 4.4 Content Signalling CDNs operate on behalf of PUBLISHERs and ORIGINs and therefore must provide accurate, up-to-date copies of CONTENT. A CDN DISTRIBUTION SYSTEM may deliver CONTENT SIGNALS to relevant SURROGATES when appropriate. In the presence of peering, CONTENT SIGNALS must be propagated to the each SURROGATE with a copy of the relevant CONTENT. Day, et. al. Expires March 31, 2001 [Page 12] Internet-Draft CDNPM September 2000 5. Security Considerations [Editor's Note: Discuss the issues of delegated authority and trust between CDNs and Origin Servers.] [Editor's Note: Discuss man-in-the-middle and denial-of-service attacks on peered CDNs.] [Editor's Note: Consider problem of incorrect advertisements of content or service levels. Need to ensure that there are means within the protocol or recommended practices so that CDNs aren't encouraged to pull traffic they can't really handle.] Day, et. al. Expires March 31, 2001 [Page 13] Internet-Draft CDNPM September 2000 6. Acknowledgements The definition of CONTINUOUS MEDIA is adapted from RFC 2326. The authors acknowledge the contributions and comments of Fred Douglis (AT&T), Don Gilletti (Entera), Barbara Liskov (Cisco), John Martin (Network Appliance), Raj Nair (Cisco), and Doug Potter (Cisco). Day, et. al. Expires March 31, 2001 [Page 14] Internet-Draft CDNPM September 2000 References [1] 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, . [2] Cooper, I., Melve, I. and G. Tomlinson, "Internet Web Replication and Caching Taxonomy", draft-ietf-wrec-taxonomy-04.txt (work in progress), June 2000, . [3] Day, M. and D. Gilletti, "CDN Peering Scenarios", draft-day-cdnp-scenarios-00.txt (work in progress), September 2000, . [4] Gilletti, D., Nair, R. and J. Scharber, "Accounting Models for CDN Peering", draft-gilletti-cdnp-accounting-models-01.txt (work in progress), September 2000, . [5] Green, M., Cain, B. and G. Tomlinson, "CDN Peering Architectural Overview", draft-green-cdnp-gen-arch-00.txt (work in progress), September 2000, . Authors' Addresses Mark S. Day Cisco Systems 135 Beaver Street Waltham, MA 02452 US Phone: +1 781 663 8310 EMail: markday@cisco.com Day, et. al. Expires March 31, 2001 [Page 15] Internet-Draft CDNPM September 2000 Brad Cain Mirror Image Internet 49 Dragon Court Woburn, MA 01801 US Phone: +1 781 276 1904 EMail: brad.cain@mirror-image.com Gary Tomlinson Entera, Inc. 40971 Encyclopedia Circle Freemont, CA 94538 US Phone: +1 510 580 3726 EMail: garyt@entera.com Day, et. al. Expires March 31, 2001 [Page 16] Internet-Draft CDNPM September 2000 Full Copyright Statement Copyright (C) The Internet Society (2000). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Acknowledgement Funding for the RFC editor function is currently provided by the Internet Society. Day, et. al. Expires March 31, 2001 [Page 17]