Content Distribution Networks (CDNs)

Slides:



Advertisements
Similar presentations
Internet Applications INTERNET APPLICATIONS. Internet Applications Domain Name Service Proxy Service Mail Service Web Service.
Advertisements

CS 4700 / CS 5700 Network Fundamentals Lecture 15: Content Delivery Networks (Over 1 billion served … each day) Revised 10/22/2014.
1 Server Selection & Content Distribution Networks (slides by Srini Seshan, CS CMU)
19 – Multimedia Networking. Multimedia Networking7-2 Multimedia and Quality of Service: What is it? multimedia applications: network audio and video (“continuous.
Content Distribution Networks Costin Raiciu Advanced Topics in Distributed Systems Fall 2012.
1 Content Delivery Networks iBAND2 May 24, 1999 Dave Farber CTO Sandpiper Networks, Inc.
Spring 2003CS 4611 Content Distribution Networks Outline Implementation Techniques Hashing Schemes Redirection Strategies.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
CS162 Operating Systems and Systems Programming Lecture 23 HTTP and Peer-to-Peer Networks April 20, 2011 Ion Stoica
Cis e-commerce -- lecture #6: Content Distribution Networks and P2P (based on notes from Dr Peter McBurney © )
An Analysis of Internet Content Delivery Systems Stefan Saroiu, Krishna P. Gommadi, Richard J. Dunn, Steven D. Gribble, and Henry M. Levy Proceedings of.
CDNs & Replication Prof. Vern Paxson EE122 Fall 2007 TAs: Lisa Fowler, Daniel Killebrew, Jorge Ortiz.
HTTP and Web Content Delivery COS 461: Computer Networks Spring 2011 Mike Freedman
1 Web Proxies Dr. Rocky K. C. Chang 6 November 2005.
Anycast Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Lesson 20 – OTHER WINDOWS 2000 SERVER SERVICES. DHCP server DNS RAS and RRAS Internet Information Server Cluster services Windows terminal services OVERVIEW.
15-744: Computer Networking L-21: Caching and CDNs.
1 Web Content Delivery Reading: Section and COS 461: Computer Networks Spring 2007 (MW 1:30-2:50 in Friend 004) Ioannis Avramopoulos Instructor:
Web Caching Schemes For The Internet – cont. By Jia Wang.
Web Caching and CDNs March 3, Content Distribution Motivation –Network path from server to client is slow/congested –Web server is overloaded Web.
Content Delivery Networks. History Early 1990s sees 100% growth in internet traffic per year 1994 o Netscape forms and releases their first browser.
AKAMAI Content Delivery Services AKAMAI Content Delivery Services CIS726 : PRESENTATION Avinash Ponugoti Avinash Ponugoti Nagarjuna Nagulapati Sathish.
Caching and Content Distribution Networks. Web Caching r As an example, we use the web to illustrate caching and other related issues browser Web Proxy.
Content Distribution Networks (CDNs) Mike Freedman COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
Web Caching and Content Delivery. Caching for a Better Web Performance is a major concern in the Web Proxy caching is the most widely used method to improve.
Content Distribution Networks CPE 401 / 601 Computer Network Systems Modified from Ravi Sundaram, Janardhan R. Iyengar, and others.
1 Content Distribution Networks. 2 Replication Issues Request distribution: how to transparently distribute requests for content among replication servers.
Caching and Content Distribution Networks. Some Interesting Observations r Top 1 % of all documents account for 20% - 35% of proxy requests r Top 10%
1 Caching  Temporary storage of frequently accessed data (duplicating original data stored somewhere else)  Reduces access time/latency for clients 
Content Distribution March 8, : Application Layer1.
Active Network Applications Tom Anderson University of Washington.
CSE 534 – Fundamentals of Computer Networks Lecture 11: Content Delivery Networks (Over 1 billion served … each day) Based on slides by D. NEU.
Sipat Triukose, Zhihua Wen, Michael Rabinovich WWW 2011 Presented by Ye Tian for Course CS05112.
Redirection and Load Balancing
{ Content Distribution Networks ECE544 Dhananjay Makwana Principal Software Engineer, Semandex Networks 5/2/14ECE544.
CS640: Introduction to Computer Networks Aditya Akella Lecture 18 - The Web, Caching and CDNs.
1 IP: putting it all together Part 2 G53ACC Chris Greenhalgh.
Global NetWatch Copyright © 2003 Global NetWatch, Inc. Factors Affecting Web Performance Getting Maximum Performance Out Of Your Web Server.
1 Chapter 6: Proxy Server in Internet and Intranet Designs Designs That Include Proxy Server Essential Proxy Server Design Concepts Data Protection in.
CPSC 441: Multimedia Networking1 Outline r Scalable Streaming Techniques r Content Distribution Networks.
2: Application Layer1 Chapter 2 outline r 2.1 Principles of app layer protocols r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail r 2.5 DNS r 2.6 Socket.
15-744: Computer Networking L-21: Caching and CDNs Amit Manjhi.
Making the Best of the Best-Effort Service (2) Advanced Multimedia University of Palestine University of Palestine Eng. Wisam Zaqoot Eng. Wisam Zaqoot.
Content distribution networks (CDNs) r The content providers are the CDN customers. Content replication r CDN company installs hundreds of CDN servers.
DYNAMIC LOAD BALANCING ON WEB-SERVER SYSTEMS by Valeria Cardellini Michele Colajanni Philip S. Yu.
Drafting Behind Akamai (Travelocity-Based Detouring) Dr. Yingwu Zhu.
Globally Distributed Content Delivery Presenter: Baoning Wu 03/25/2003.
Content Distribution Network, Proxy CDN: Distributed Environment
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
Overlay Networks : An Akamai Perspective
Content Delivery Networks: Status and Trends Speaker: Shao-Fen Chou Advisor: Dr. Ho-Ting Wu 5/8/
09/13/04 CDA 6506 Network Architecture and Client/Server Computing Peer-to-Peer Computing and Content Distribution Networks by Zornitza Genova Prodanoff.
An Analysis of Internet Content Delivery Systems 19 rd November, 2007 Youngsub CSE, SNU.
John S. Otto Mario A. Sánchez John P. Rula Fabián E. Bustamante Northwestern, EECS.
19 – Multimedia Networking
Content Distribution Networks
Content Distribution Networks
Utilization of Azure CDN for the large file distribution
Internet Applications
Distributed Content in the Network: A Backbone View
Distributed Systems CS
Content Distribution Networks
Content Distribution Networks
AWS Cloud Computing Masaki.
Content Distribution Networks + P2P File Sharing
Engineering a Content Delivery Network
EE 122: Lecture 22 (Overlay Networks)
AKAMAI Content Delivery Services
Engineering a Content Delivery Network
Content Distribution Networks + P2P File Sharing
Presentation transcript:

Content Distribution Networks (CDNs) Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101 http://www.cs.princeton.edu/courses/archive/spr12/cos461/

Second Half of the Course Application case studies Content distribution and multimedia streaming Peer-to-peer file sharing and overlay networks Network case studies Home, enterprise, and data-center networks Backbone, wireless, and cellular networks Network management and security Programmable networks and network security Internet measurement and course wrap-up

Single Server, Poor Performance Single point of failure Easily overloaded Far from most clients Popular content Popular site “Flash crowd” (aka “Slashdot effect”) Denial of Service attack

Skewed Popularity of Web Traffic “Zipf” or “power-law” distribution Characteristics of WWW Client-based Traces Carlos R. Cunha, Azer Bestavros, Mark E. Crovella, BU-CS-95-01

Web Caching

Proxy Caches Reactively replicates popular content 6 Proxy Caches origin server Reactively replicates popular content Smaller round-trip times to clients Reduces load on origin servers Reduces network load, and bandwidth costs Maintain persistent TCP connections Proxy server HTTP request HTTP request client HTTP response HTTP response HTTP request HTTP response client

Forward Proxy Cache close to the client Explicit proxy Implicit proxy Improves client performance Reduces network provider’s costs Explicit proxy Requires configuring browser Implicit proxy Service provider deploys an “on path” proxy … that intercepts and handles Web requests Proxy server HTTP request client HTTP response HTTP request HTTP response client

Reverse Proxy Cache close to server Directing clients to the proxy Improve client performance Reduce content provider cost Load balancing, content assembly, transcoding, etc. Directing clients to the proxy Map the site name to the IP address of the proxy origin server Proxy server HTTP request HTTP response HTTP request HTTP response origin server

Google Design . . . Router Data Centers Servers Client Reverse Proxy Requests Private Backbone Internet Client Client

Limitations of Web Caching Much content is not cacheable Dynamic data: stock prices, scores, web cams CGI scripts: results depend on parameters Cookies: results may depend on passed data SSL: encrypted data is not cacheable Analytics: owner wants to measure hits Stale data Or, overhead of refreshing the cached data

Content Distribution Networks

Content Distribution Network origin server in North America Proactive content replication Content provider (e.g., CNN) contracts with a CDN CDN replicates the content On many servers spread throughout the Internet Updating the replicas Updates pushed to replicas when the content changes CDN distribution node CDN server in S. America CDN server in Asia CDN server in Europe

Server Selection Policy Live server For availability Lowest load To balance load across the servers Closest Nearest geographically, or in round-trip time Best performance Throughput, latency, … Cheapest bandwidth, electricity, … Requires continuous monitoring of liveness, load, and performance

Server Selection Mechanism 14 Server Selection Mechanism Application HTTP redirection Advantages Fine-grain control Selection based on client IP address Disadvantages Extra round-trips for TCP connection to server Overhead on the server GET Redirect OK

Server Selection Mechanism 15 Server Selection Mechanism Routing Anycast routing Advantages No extra round trips Route to nearby server Disadvantages Does not consider network or server load Different packets may go to different servers Used only for simple request-response apps 1.2.3.0/24

Server Selection Mechanism Naming DNS-based server selection Advantages Avoid TCP set-up delay DNS caching reduces overhead Relatively fine control Disadvantage Based on IP address of local DNS server “Hidden load” effect DNS TTL limits adaptation 1.2.3.4 DNS query 1.2.3.5 local DNS server

How Akamai Works

Akamai Statistics Distributed servers Many customers Client requests Networks: ~1,000 Countries: ~70 Many customers Apple, BBC, FOX, GM IBM, MTV, NASA, NBC, NFL, NPR, Puma, Red Bull, Rutgers, SAP, … Client requests Hundreds of billions per day Half in the top 45 networks 15-20% of all Web traffic worldwide

cnn.com (content provider) 19 How Akamai Uses DNS cnn.com (content provider) HTTP DNS root server GET index.html Akamai cluster Akamai global DNS server http://cache.cnn.com/foo.jpg 1 2 HTTP Akamai regional DNS server Nearby Akamai cluster End user

cnn.com (content provider) 20 How Akamai Uses DNS cnn.com (content provider) HTTP DNS root server DNS lookup cache.cnn.com Akamai cluster Akamai global DNS server 3 1 2 ALIAS: g.akamai.net 4 Akamai regional DNS server Nearby Akamai cluster End user

cnn.com (content provider) 21 How Akamai Uses DNS cnn.com (content provider) HTTP DNS root server DNS lookup g.akamai.net Akamai cluster Akamai global DNS server 5 3 1 2 6 4 Akamai regional DNS server ALIAS a73.g.akamai.net Nearby Akamai cluster End user

cnn.com (content provider) 22 How Akamai Uses DNS cnn.com (content provider) HTTP DNS root server Akamai cluster Akamai global DNS server 5 3 1 2 6 4 Akamai regional DNS server 7 DNS a73.g.akamai.net 8 Address 1.2.3.4 Nearby Akamai cluster End user

cnn.com (content provider) 23 How Akamai Uses DNS cnn.com (content provider) HTTP DNS root server Akamai cluster Akamai global DNS server 5 3 1 2 6 4 Akamai regional DNS server 7 8 9 Nearby Akamai cluster End user GET /foo.jpg Host: cache.cnn.com

cnn.com (content provider) 24 How Akamai Uses DNS cnn.com (content provider) HTTP DNS root server GET foo.jpg 11 12 Akamai cluster Akamai global DNS server 5 3 1 2 6 4 Akamai regional DNS server 7 8 9 Nearby Akamai cluster End user GET /foo.jpg Host: cache.cnn.com

cnn.com (content provider) 25 How Akamai Uses DNS cnn.com (content provider) HTTP DNS root server 11 12 Akamai cluster Akamai global DNS server 5 3 1 2 6 4 Akamai regional DNS server 7 8 9 Nearby Akamai cluster End user 10

How Akamai Works: Cache Hit cnn.com (content provider) DNS root server Akamai server GET index.html Akamai high-level DNS server 1 2 Akamai low-level DNS server 7 8 Nearby hash-chosen Akamai server 9 End user 10 GET /cnn.com/foo.jpg

Mapping System Equivalence classes of IP addresses IP addresses experiencing similar performance Quantify how well they connect to each other Collect and combine measurements Ping, traceroute, BGP routes, server logs E.g., over 100 TB of logs per days Network latency, loss, and connectivity

Mapping System Map each IP class to a preferred server cluster Based on performance, cluster health, etc. Updated roughly every minute Map client request to a server in the cluster Load balancer selects a specific server E.g., to maximize the cache hit rate

Adapting to Failures Failing hard drive on a server Failed server Suspends after finishing “in progress” requests Failed server Another server takes over for the IP address Low-level map updated quickly Failed cluster High-level map updated quickly Failed path to customer’s origin server Route packets through an intermediate node

Akamai Transport Optimizations Bad Internet routes Overlay routing through an intermediate server Packet loss Sending redundant data over multiple paths TCP connection set-up/teardown Pools of persistent connections TCP congestion window and round-trip time Estimates based on network latency measurements

Akamai Application Optimizations Slow download of embedded objects Prefetch when HTML page is requested Large objects Content compression Slow applications Moving applications to edge servers E.g., content aggregation and transformation E.g., static databases (e.g., product catalogs) E.g. batching and validating input on Web forms

Conclusion Content distribution is hard Many, diverse, changing objects Clients distributed all over the world Reducing latency is king Contribution distribution solutions Reactive caching Proactive content distribution networks Next time Multimedia streaming applications