Content delivery network
||This article has multiple issues. Please help improve it or discuss these issues on the talk page.
A content delivery network or content distribution network (CDN) is a large distributed system of servers deployed in multiple data centers across the Internet. The goal of a CDN is to serve content to end-users with high availability and high performance. CDNs serve a large fraction of the Internet content today, including web objects (text, graphics, URLs and scripts), downloadable objects (media files, software, documents), applications (e-commerce, portals), live streaming media, on-demand streaming media, and social networks.
A CDN operator gets paid by content providers such as media companies and e-commerce vendors for delivering their content to their audience of end-users. In turn, a CDN pays ISPs, carriers, and network operators for hosting its servers in their data centers. Besides better performance and availability, CDNs also offload the traffic served directly from the content provider's origin infrastructure, resulting in cost savings for the content provider. In addition, CDNs provide the content provider a degree of protection from DoS attacks by using their large distributed server infrastructure to absorb the attack traffic. While most early CDNs served content using dedicated servers owned and operated by the CDN, there is a recent trend to use a hybrid model that uses P2P technology. In the hybrid model, content is served using both dedicated servers and other peer-user-owned computers as applicable.
Most CDNs are operated as an application service provider (ASP) on the Internet (also known as on-demand software or software as a service). An increasing number of Internet network owners have built their own CDNs to improve on-net content delivery, reduce demand on their own telecommunications infrastructure, and to generate revenues from content customers. This might include offering access to media streaming to internet service subscribers. Some larger software companies such as Microsoft build their own CDNs in tandem to their own products. Examples include Windows Azure CDN  and Amazon CloudFront.
CDN nodes are usually deployed in multiple locations, often over multiple backbones. Benefits include reducing bandwidth costs, improving page load times, or increasing global availability of content. The number of nodes and servers making up a CDN varies, depending on the architecture, some reaching thousands of nodes with tens of thousands of servers on many remote points of presence (PoPs). Others build a global network and have a small number of geographical PoPs.
Requests for content are typically algorithmically directed to nodes that are optimal in some way. When optimizing for performance, locations that are best for serving content to the user may be chosen. This may be measured by choosing locations that are the fewest hops, the least number of network seconds away from the requesting client, or the highest availability in terms of server performance (both current and historical), so as to optimize delivery across local networks. When optimizing for cost, locations that are least expensive may be chosen instead. In an optimal scenario, these two goals tend to align, as servers that are close to the end-user at the edge of the network may have an advantage in performance or cost. The Edge Network grows outward from the origin/s through further acquisitions (via purchase, peering, or exchange) of co-locations facilities, bandwidth, and servers.
Content networking techniques 
The Internet was designed according to the end-to-end principle. This principle keeps the core network relatively simple and moves the intelligence as much as possible to the network end-points: the hosts and clients. As a result the core network is specialized, simplified, and optimized to only forward data packets.
Content Delivery Networks augment the end-to-end transport network by distributing on it a variety of intelligent applications employing techniques designed to optimize content delivery. The resulting tightly integrated overlay uses web caching, server-load balancing, request routing, and content services. These techniques are briefly described below.
Web caches store popular content on servers that have the greatest demand for the content requested. These shared network appliances reduce bandwidth requirements, reduce server load, and improve the client response times for content stored in the cache.
Server-load balancing uses one or more techniques including service-based (global load balancing) or hardware-based, i.e. layer 4–7 switches, also known as a web switch, content switch, or multilayer switch to share traffic among a number of servers or web caches. Here the switch is assigned a single virtual IP address. Traffic arriving at the switch is then directed to one of the real web servers attached to the switch. This has the advantage of balancing load, increasing total capacity, improving scalability, and providing increased reliability by redistributing the load of a failed web server and providing server health checks.
A content cluster or service node can be formed using a layer 4–7 switch to balance load across a number of servers or a number of web caches within the network.
Request routing directs client requests to the content source best able to serve the request. This may involve directing a client request to the service node that is closest to the client, or to the one with the most capacity. A variety of algorithms are used to route the request. These include Global Server Load Balancing, DNS-based request routing, Dynamic metafile generation, HTML rewriting, and anycasting. Proximity—choosing the closest service node—is estimated using a variety of techniques including reactive probing, proactive probing, and connection monitoring.
CDNs use a variety of methods of content delivery including, but not limited to, manual asset copying, active web caches, and global hardware load balancers.
Content service protocols 
Several protocol suites are designed to provide access to a wide variety of content services distributed throughout a content network. The Internet Content Adaptation Protocol (ICAP) was developed in the late 1990s to provide an open standard for connecting application servers. A more recently defined and robust solution is provided by the Open Pluggable Edge Services (OPES) protocol. This architecture defines OPES service applications that can reside on the OPES processor itself or be executed remotely on a Callout Server. Edge Side Includes or ESI is a small markup language for edge level dynamic web content assembly. It is fairly common for websites to have generated content. It could be because of changing content like catalogs or forums, or because of personalization. This creates a problem for caching systems. To overcome this problem a group of companies created ESI.
Peer-to-peer CDNs 
Although peer-to-peer (P2P) is not traditional CDN technology, it is increasingly used to deliver content to end users. P2P claims low cost and efficient distribution. The real strength of P2P shows when one has to distribute data in high demand, like the latest episode of a television show or some sort of software patch/update, in a short period of time. As P2P distribution is essentially offloading the traffic burden to its clients, it is advantageous for the provider. This practice is not without controversy as P2P CDN clients often continue running in the background days after originally downloading the file. It can cripple users' internet performance, is difficult to uninstall, and popular Antivirus software suites even consider such software to be malware. 
Peering/Private CDNs 
In the peering based CDN, there are special Edge-servers owned by the Content Delivery Network service providing Company itself and these regionalized POPs around the world, which are directly connected with many ISPs to provide faster and better peering.
CDN trends 
Emergence of telco CDNs 
The rapid growth of streaming video traffic uses large capital expenditures by broadband providers in order to meet this demand and to retain subscribers by delivering a sufficiently good quality of experience.
To address this, telecommunications service providers (TSPs) have begun to launch their own content delivery networks as a means to lessen the demands on the network backbone and to reduce infrastructure investments.
Telco CDN advantages 
Because they own the networks over which video content is transmitted, telco CDNs have advantages over traditional CDNs.
They own the last mile and can deliver content closer to the end user because it can be cached deep in their networks. This deep caching minimizes the distance that video data travels over the general Internet and delivers it more quickly and reliably.
Telco CDNs also have a built-in cost advantage since traditional CDNs must lease bandwidth from them and build the operator’s margin into their own cost structures.
Federated CDNs 
In June 2011, StreamingMedia.com reported that a group of TSPs had founded an Operator Carrier Exchange (OCX) to interconnect their networks and compete more directly against large traditional CDNs like Akamai and Limelight Networks, which have extensive PoPs worldwide. This way, telcos are building a Federated CDN offer, much more interesting for a content provider willing to deliver its content to the aggregated audience of this federation.
It is likely that in a near future, other telco CDN federations will be created. They will grow by enrollment of new telco joining the federation and bringing network presence and Internet subscribers base to the existing ones.
edns-client-subnet EDNS0 option 
In August 2011, a global consortium of leading Internet service providers led by Google announced their official implementation of the edns-client-subnet IETF Internet-Draft, which is intended to accurately localize DNS resolution responses. The initiative involves a limited number of leading DNS and CDN service providers. With the edns-client-subnet EDNS0 option, the recursive DNS servers of CDNs will utilize the IP address of the requesting client subnet when resolving DNS requests. If a CDN relies on the IP address of the DNS resolver instead of the client when resolving DNS requests, it can incorrectly geo-locate a client if the client is using Google anycast addresses for their DNS resolver, which can create latency problems. Initially, Google's 18.104.22.168 DNS addresses geo-located to California, potentially far from the location of the requesting client, but now the Google Public DNS servers are available worldwide.
Notable content delivery service providers 
Free CDNs 
Traditional commercial CDNs 
Telco CDNs 
Commercial CDNs using P2P for delivery 
See also 
- Erik Nygren, Ramesh K. Sitaraman, and Jennifer Sun. "The Akamai Network: A Platform for High-Performance Internet Applications, ACM SIGOPS Operating Systems Review, vol. 44, no. 3, July 2010.".
- "Akamai goes P2P, buys Red Swoosh. GigaOM.". April 2, 2007. Retrieved March 16, 2012.
- Saltzer, J. H., Reed, D. P., Clark, D. D.: “End-to-End Arguments in System Design,” ACM Transactions on Communications, 2(4), 1984
- Hofmann, Markus; Leland R. Beaumont (2005). Content Networking: Architecture, Protocols, and Practice. Morgan Kaufmann Publisher. ISBN 1-55860-834-6.
- RFC 3568 Barbir, A., Cain, B., Nair, R., Spatscheck, O.: "Known Content Network (CN) Request-Routing Mechanisms," July 2003
- RFC 1546 Partridge, C., Mendez, T., Milliken, W.: "Host Anycasting Services," November 1993.
- RFC 3507 Elson, J., Cerpa, A.: "Internet Content Adaptation Protocol (ICAP)," April 2003.
- ICAP Forum
- RFC 3835 Barbir, A., Penno, R., Chen, R., Hofmann, M., and Orman, H.: "An Architecture for Open Pluggable Edge Services (OPES)," August 2004.
- Lefebvre, Eliot (17 April 2012). "Aion gives Pando Media Booster the boot". joystiq.com. Joystiq.
- "Pando Pandemic: Why You Might Already Be Infected". 21 July 2011.
- "What is CDN?". cdn-advisor.com. CDN-Advisor.com. 10 April 2013.
- “Online Video Sees Tremendous Growth, Spurs some Major Updates”
- “Overall Telecom CAPEX to Rise in 2011 Due to Video, 3G, LTE Investments”
- “Updated List Of Vendors In The Content Delivery Ecosystem”
- “Broadband ready to become a serious TV platform”
- “Telcos And Carriers Forming New Federated CDN Group Called OCX (Operator Carrier Exchange)”
- “Bradley Zarich Google-Led Consortium Vows to Multiply Worldwide Internet Speed“
Further reading 
- Buyya, R.; Pathan, M.; and Vakali, A. (2008). Content Delivery Networks. Springer. doi:10.1007/978-3-540-77887-5_1. ISBN 9783540778868.
- Hau, T.; Burghardt, D.; and Brenner, W. (2011). "Multihoming, Content Delivery Networks, and the Market for Internet Connectivity". Telecommunications Policy 35 (6): 532–542. doi:10.1016/j.telpol.2011.04.002.
- Majumdar, S.; Kulkarni, D.; and Ravishankar, C. (2007). "Addressing Click Fraud in Content Delivery Systems" (PDF). Infocom. IEEE. doi:10.1109/INFCOM.2007.36. http://www.cs.ucr.edu/~ravi/Papers/NWConf/clickfraud.pdf.
- Nygren., E.; Sitaraman R. K.; and Sun, J. (2010). "The Akamai Network: A Platform for High-Performance Internet Applications" (PDF). ACM SIGOPS Operating Systems Review 44 (3): 2–19. doi:10.1145/1842733.1842736. Retrieved November 19, 2012.
- Vakali, A.; and Pallis, G. (2003). "Content Delivery Networks: Status and Trends". IEEE Internet Computing 7 (6): 68–74. doi:10.1109/MIC.2003.1250586.