SlideShare a Scribd company logo
1 of 34
Content Distribution
Networks (CDNs)
Mike Freedman
COS 461: Computer Networks
Lectures: MW 10-10:50am in Architecture N101
http://www.cs.princeton.edu/courses/archive/spr13/cos461/
Second Half of the Course
• Application case studies
– Content distribution, peer-to-peer systems and
distributed hash tables (DHTs), and overlay
networks
• Network case studies
– Enterprise, wireless, cellular, datacenter, and
backbone networks; software-defined networking
• Network security
– Securing communication protocols
– Interdomain routing security 2
Single Server, Poor Performance
• Single server
–Single point of failure
–Easily overloaded
–Far from most clients
• Popular content
–Popular site
–“Flash crowd” (aka
“Slashdot effect”)
–Denial of Service attack
3
Skewed Popularity of Web Traffic
“Zipf” or “power-law”
distribution
4
Characteristics of WWW Client-based Traces
Carlos R. Cunha, Azer Bestavros, Mark E. Crovella, BU-CS-95-01
Web Caching
5
Proxy Caches
client
Proxy
server
client
HTTP request
HTTP request
HTTP response
HTTP response
HTTP request
HTTP response
origin
server
6
6
Forward Proxy
• Cache “close” to the client
–Under administrative control
of client-side AS
• Explicit proxy
–Requires configuring browser
• Implicit proxy
–Service provider deploys an “on path” proxy
–… that intercepts and handles Web requests
7
client
Proxy
server
client
HTTP request
HTTP request
HTTP response
HTTP response
Reverse Proxy
• Cache “close” to server
–Either by proxy run by server
or in third-party content
distribution network (CDN)
• Directing clients to the proxy
–Map the site name to the
IP address of the proxy
8
Proxy
server
HTTP request
HTTP response
origin
server
origin
server
HTTP requestHTTP response
Router Router
Data Centers
. . .
Servers Servers
Client
Reverse
Proxy
Reverse
Proxy
Requests
Client Client
Private
Backbone
Internet
Google Design
9
Proxy Caches
(A) Forward (B) Reverse (C) Both (D) Neither
• Reactively replicates popular content
• Reduces origin server costs
• Reduces client ISP costs
• Intelligent load balancing between origin servers
• Offload form submissions (POSTs) and user auth
• Content reassembly or transcoding on behalf of origin
• Smaller round-trip times to clients
• Maintain persistent connections to avoid TCP setup
delay (handshake, slow start) 10
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
12
Modern HTTP Video-on-Demand
• Download “content manifest” from origin server
• List of video segments belonging to video
– Each segment 1-2 seconds in length
– Client can know time offset associated with each
– Standard naming for different video resolutions and formats:
e.g., 320dpi, 720dpi, 1040dpi, …
• Client downloads video segment (at certain resolution)
using standard HTTP request.
– HTTP request can be satisfied by cache: it’s a static object
• Client observes download time vs. segment duration,
increases/decreases resolution if appropriate 13
Content Distribution Networks
14
Content Distribution Network
• 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
15
origin server
in North America
CDN distribution node
CDN server
in S. America CDN server
in Europe
CDN server
in Asia
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, …
16
Requires continuous monitoring of
liveness, load, and performance
Requires continuous monitoring of
liveness, load, and performance
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
GET
OK
17
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
1.2.3.0/24
18
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
19
1.2.3.4
1.2.3.5
DNS
query
local DNS server
How Akamai Works
20
Akamai Statistics
• Distributed servers
–Servers: ~100,000
–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
21
HTTPHTTP
How Akamai Uses DNS
cnn.com (content provider) DNS root server
1 2
Nearby
Akamai
cluster
GET
index.
html
22
http://cache.cnn.com/foo.jp
g
HTTP
Akamai
cluster
Akamai global
DNS server
Akamai regional
DNS server
End user
HTTPHTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Nearby
Akamai
cluster
23
DNS lookup
cache.cnn.com
Akamai
cluster
3
4 ALIAS:
g.akamai.net
Akamai global
DNS server
Akamai regional
DNS server
End user
HTTPHTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Akamai global
DNS server
Akamai regional
DNS server
Nearby
Akamai
cluster
24
Akamai
cluster
3
4 6
5
ALIAS
a73.g.akamai.net
DNS lookup
g.akamai.net
End user
HTTPHTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Akamai global
DNS server
Akamai regional
DNS server
Nearby
Akamai
cluster
25
Akamai
cluster
3
4 6
5
8
7
DNS a73.g.akamai.net
Address
1.2.3.4
End user
HTTPHTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Akamai global
DNS server
Akamai regional
DNS server
Nearby
Akamai
cluster
26
Akamai
cluster
3
4 6
5
8
7
9
GET /foo.jpg
Host: cache.cnn.com
End user
HTTPHTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Akamai global
DNS server
Akamai regional
DNS server
Nearby
Akamai
cluster
27
Akamai
cluster
3
4 6
5
8
7
9
GET /foo.jpg
Host: cache.cnn.com
12
11
GET foo.jpg
End user
HTTPHTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Akamai global
DNS server
Akamai regional
DNS server
Nearby
Akamai
cluster
28
Akamai
cluster
3
4 6
5
8
7
9
12
11
10
End user
HTTPHTTP
How Akamai Works: Cache Hit
cnn.com (content provider) DNS TLD server
1 2
Akamai global
DNS server
Akamai regional
DNS server
Nearby
Akamai
cluster
29
Akamai
cluster
4
3
5
6
End user
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
30
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
31
Adapting to Failures
• Failing hard drive on a 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
32
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
33
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)
34
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
35

More Related Content

What's hot

RADIUS and LDAP - pfSense Hangout August 2015
RADIUS and LDAP - pfSense Hangout August 2015RADIUS and LDAP - pfSense Hangout August 2015
RADIUS and LDAP - pfSense Hangout August 2015Netgate
 
IBM Spectrum Scale Networking Flow
IBM Spectrum Scale Networking FlowIBM Spectrum Scale Networking Flow
IBM Spectrum Scale Networking FlowSandeep Patil
 
Informix User Group France - 30/11/2010 - Nouveautés IDS 11.10 & 11.50
Informix User Group France - 30/11/2010 - Nouveautés IDS 11.10 & 11.50Informix User Group France - 30/11/2010 - Nouveautés IDS 11.10 & 11.50
Informix User Group France - 30/11/2010 - Nouveautés IDS 11.10 & 11.50Nicolas Desachy
 
Kafka at half the price with JBOD setup
Kafka at half the price with JBOD setupKafka at half the price with JBOD setup
Kafka at half the price with JBOD setupDong Lin
 
Load Balancing And Yahoo!
Load Balancing And Yahoo!Load Balancing And Yahoo!
Load Balancing And Yahoo!TwinVasion
 
MariaDB High Availability Webinar
MariaDB High Availability WebinarMariaDB High Availability Webinar
MariaDB High Availability WebinarMariaDB plc
 
clustering and load balancing
clustering and load balancingclustering and load balancing
clustering and load balancingPrabhat gangwar
 
System design for video streaming service
System design for video streaming serviceSystem design for video streaming service
System design for video streaming serviceNirmik Kale
 
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...Netgate
 
F5 link controller
F5  link controllerF5  link controller
F5 link controllerJimmy Saigon
 
MariaDB High Availability
MariaDB High AvailabilityMariaDB High Availability
MariaDB High AvailabilityMariaDB plc
 
Network latency - measurement and improvement
Network latency - measurement and improvementNetwork latency - measurement and improvement
Network latency - measurement and improvementMatt Willsher
 
SMB Traffic Analyzer @ Samba Xp 2009
SMB Traffic Analyzer @  Samba Xp 2009SMB Traffic Analyzer @  Samba Xp 2009
SMB Traffic Analyzer @ Samba Xp 2009hhetter
 
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...xKinAnx
 
Deploying flash storage for Ceph without compromising performance
Deploying flash storage for Ceph without compromising performance Deploying flash storage for Ceph without compromising performance
Deploying flash storage for Ceph without compromising performance Ceph Community
 
Performance and Scalability Tuning
Performance and Scalability TuningPerformance and Scalability Tuning
Performance and Scalability TuningAndres March
 
Big ip f5 ltm load balancing methods
Big ip f5 ltm load balancing methodsBig ip f5 ltm load balancing methods
Big ip f5 ltm load balancing methodsUtpal Sinha
 
Ame 2269 ibm mq high availability
Ame 2269 ibm mq high availabilityAme 2269 ibm mq high availability
Ame 2269 ibm mq high availabilityAndrew Schofield
 
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...xKinAnx
 
Exchange Server 2013 : les mécanismes de haute disponibilité et la redondance...
Exchange Server 2013 : les mécanismes de haute disponibilité et la redondance...Exchange Server 2013 : les mécanismes de haute disponibilité et la redondance...
Exchange Server 2013 : les mécanismes de haute disponibilité et la redondance...Microsoft Technet France
 

What's hot (20)

RADIUS and LDAP - pfSense Hangout August 2015
RADIUS and LDAP - pfSense Hangout August 2015RADIUS and LDAP - pfSense Hangout August 2015
RADIUS and LDAP - pfSense Hangout August 2015
 
IBM Spectrum Scale Networking Flow
IBM Spectrum Scale Networking FlowIBM Spectrum Scale Networking Flow
IBM Spectrum Scale Networking Flow
 
Informix User Group France - 30/11/2010 - Nouveautés IDS 11.10 & 11.50
Informix User Group France - 30/11/2010 - Nouveautés IDS 11.10 & 11.50Informix User Group France - 30/11/2010 - Nouveautés IDS 11.10 & 11.50
Informix User Group France - 30/11/2010 - Nouveautés IDS 11.10 & 11.50
 
Kafka at half the price with JBOD setup
Kafka at half the price with JBOD setupKafka at half the price with JBOD setup
Kafka at half the price with JBOD setup
 
Load Balancing And Yahoo!
Load Balancing And Yahoo!Load Balancing And Yahoo!
Load Balancing And Yahoo!
 
MariaDB High Availability Webinar
MariaDB High Availability WebinarMariaDB High Availability Webinar
MariaDB High Availability Webinar
 
clustering and load balancing
clustering and load balancingclustering and load balancing
clustering and load balancing
 
System design for video streaming service
System design for video streaming serviceSystem design for video streaming service
System design for video streaming service
 
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
 
F5 link controller
F5  link controllerF5  link controller
F5 link controller
 
MariaDB High Availability
MariaDB High AvailabilityMariaDB High Availability
MariaDB High Availability
 
Network latency - measurement and improvement
Network latency - measurement and improvementNetwork latency - measurement and improvement
Network latency - measurement and improvement
 
SMB Traffic Analyzer @ Samba Xp 2009
SMB Traffic Analyzer @  Samba Xp 2009SMB Traffic Analyzer @  Samba Xp 2009
SMB Traffic Analyzer @ Samba Xp 2009
 
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
 
Deploying flash storage for Ceph without compromising performance
Deploying flash storage for Ceph without compromising performance Deploying flash storage for Ceph without compromising performance
Deploying flash storage for Ceph without compromising performance
 
Performance and Scalability Tuning
Performance and Scalability TuningPerformance and Scalability Tuning
Performance and Scalability Tuning
 
Big ip f5 ltm load balancing methods
Big ip f5 ltm load balancing methodsBig ip f5 ltm load balancing methods
Big ip f5 ltm load balancing methods
 
Ame 2269 ibm mq high availability
Ame 2269 ibm mq high availabilityAme 2269 ibm mq high availability
Ame 2269 ibm mq high availability
 
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
Ibm spectrum scale fundamentals workshop for americas part 7 spectrumscale el...
 
Exchange Server 2013 : les mécanismes de haute disponibilité et la redondance...
Exchange Server 2013 : les mécanismes de haute disponibilité et la redondance...Exchange Server 2013 : les mécanismes de haute disponibilité et la redondance...
Exchange Server 2013 : les mécanismes de haute disponibilité et la redondance...
 

Viewers also liked (17)

Intellij idea features
Intellij idea featuresIntellij idea features
Intellij idea features
 
worklight_development_environment
worklight_development_environmentworklight_development_environment
worklight_development_environment
 
Big data trendsdirections nimführ.ppt
Big data trendsdirections nimführ.pptBig data trendsdirections nimführ.ppt
Big data trendsdirections nimführ.ppt
 
Hans enocson how big data creates opportunities for productivity improvements...
Hans enocson how big data creates opportunities for productivity improvements...Hans enocson how big data creates opportunities for productivity improvements...
Hans enocson how big data creates opportunities for productivity improvements...
 
Collaborative filtering hyoungtae cho
Collaborative filtering hyoungtae choCollaborative filtering hyoungtae cho
Collaborative filtering hyoungtae cho
 
Role of locking- cds
Role of locking- cdsRole of locking- cds
Role of locking- cds
 
Introto netthreads-090906214344-phpapp01
Introto netthreads-090906214344-phpapp01Introto netthreads-090906214344-phpapp01
Introto netthreads-090906214344-phpapp01
 
Cdn imw01
Cdn imw01Cdn imw01
Cdn imw01
 
Visual studio-2012-product-guide
Visual studio-2012-product-guideVisual studio-2012-product-guide
Visual studio-2012-product-guide
 
Caqa5e ch4
Caqa5e ch4Caqa5e ch4
Caqa5e ch4
 
Des
DesDes
Des
 
Advancedrn
AdvancedrnAdvancedrn
Advancedrn
 
Going beyond-data-and-analytics-v4
Going beyond-data-and-analytics-v4Going beyond-data-and-analytics-v4
Going beyond-data-and-analytics-v4
 
Android sql examples
Android sql examplesAndroid sql examples
Android sql examples
 
(148064384) bfs
(148064384) bfs(148064384) bfs
(148064384) bfs
 
Ch20
Ch20Ch20
Ch20
 
Asp controls
Asp  controlsAsp  controls
Asp controls
 

Similar to Lec13 cdn

Content Delivery Network - CDN
Content Delivery Network - CDNContent Delivery Network - CDN
Content Delivery Network - CDNMojtaba HOUSHMAND
 
Business Models for Dynamically Provisioned Optical Networks
Business Models for Dynamically Provisioned Optical NetworksBusiness Models for Dynamically Provisioned Optical Networks
Business Models for Dynamically Provisioned Optical NetworksTal Lavian Ph.D.
 
Creating a Centralized Consumer Profile Management Service with WebSphere Dat...
Creating a Centralized Consumer Profile Management Service with WebSphere Dat...Creating a Centralized Consumer Profile Management Service with WebSphere Dat...
Creating a Centralized Consumer Profile Management Service with WebSphere Dat...Prolifics
 
CC-4153, Verizon Cloud Compute and the SM15000, by Paul Curtis
CC-4153, Verizon Cloud Compute and the SM15000, by Paul CurtisCC-4153, Verizon Cloud Compute and the SM15000, by Paul Curtis
CC-4153, Verizon Cloud Compute and the SM15000, by Paul CurtisAMD Developer Central
 
Cdn technology overview
Cdn technology overviewCdn technology overview
Cdn technology overviewYoohyun Kim
 
Unit 5 - Designing Internet Systems and Servers - IT
Unit 5 - Designing Internet Systems and Servers - ITUnit 5 - Designing Internet Systems and Servers - IT
Unit 5 - Designing Internet Systems and Servers - ITDeepraj Bhujel
 
Learning series fundamentals of Networking and Medical Imaging
Learning series fundamentals of Networking and Medical ImagingLearning series fundamentals of Networking and Medical Imaging
Learning series fundamentals of Networking and Medical ImagingRyan Furlough, BSCPE CPAS
 
network basics
network basicsnetwork basics
network basicsAvin Ash
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilitiesG Prachi
 
AWS re:Invent 2016: Global Traffic Management with Amazon Route 53 Traffic Fl...
AWS re:Invent 2016: Global Traffic Management with Amazon Route 53 Traffic Fl...AWS re:Invent 2016: Global Traffic Management with Amazon Route 53 Traffic Fl...
AWS re:Invent 2016: Global Traffic Management with Amazon Route 53 Traffic Fl...Amazon Web Services
 
Data Center Network Trends - Lin Nease
Data Center Network Trends - Lin NeaseData Center Network Trends - Lin Nease
Data Center Network Trends - Lin NeaseHPDutchWorld
 
Introduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxIntroduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxhishamousl
 

Similar to Lec13 cdn (20)

Slides cao
Slides caoSlides cao
Slides cao
 
Best Practices Using RTI Connext DDS
Best Practices Using RTI Connext DDSBest Practices Using RTI Connext DDS
Best Practices Using RTI Connext DDS
 
Content Delivery Network - CDN
Content Delivery Network - CDNContent Delivery Network - CDN
Content Delivery Network - CDN
 
Real time database
Real time databaseReal time database
Real time database
 
Chapter11
Chapter11Chapter11
Chapter11
 
Play With Streams
Play With StreamsPlay With Streams
Play With Streams
 
Business Models for Dynamically Provisioned Optical Networks
Business Models for Dynamically Provisioned Optical NetworksBusiness Models for Dynamically Provisioned Optical Networks
Business Models for Dynamically Provisioned Optical Networks
 
SFMap (TMA 2015)
SFMap (TMA 2015)SFMap (TMA 2015)
SFMap (TMA 2015)
 
Creating a Centralized Consumer Profile Management Service with WebSphere Dat...
Creating a Centralized Consumer Profile Management Service with WebSphere Dat...Creating a Centralized Consumer Profile Management Service with WebSphere Dat...
Creating a Centralized Consumer Profile Management Service with WebSphere Dat...
 
CC-4153, Verizon Cloud Compute and the SM15000, by Paul Curtis
CC-4153, Verizon Cloud Compute and the SM15000, by Paul CurtisCC-4153, Verizon Cloud Compute and the SM15000, by Paul Curtis
CC-4153, Verizon Cloud Compute and the SM15000, by Paul Curtis
 
Network
NetworkNetwork
Network
 
Cdn technology overview
Cdn technology overviewCdn technology overview
Cdn technology overview
 
Web Fendamentals
Web FendamentalsWeb Fendamentals
Web Fendamentals
 
Unit 5 - Designing Internet Systems and Servers - IT
Unit 5 - Designing Internet Systems and Servers - ITUnit 5 - Designing Internet Systems and Servers - IT
Unit 5 - Designing Internet Systems and Servers - IT
 
Learning series fundamentals of Networking and Medical Imaging
Learning series fundamentals of Networking and Medical ImagingLearning series fundamentals of Networking and Medical Imaging
Learning series fundamentals of Networking and Medical Imaging
 
network basics
network basicsnetwork basics
network basics
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilities
 
AWS re:Invent 2016: Global Traffic Management with Amazon Route 53 Traffic Fl...
AWS re:Invent 2016: Global Traffic Management with Amazon Route 53 Traffic Fl...AWS re:Invent 2016: Global Traffic Management with Amazon Route 53 Traffic Fl...
AWS re:Invent 2016: Global Traffic Management with Amazon Route 53 Traffic Fl...
 
Data Center Network Trends - Lin Nease
Data Center Network Trends - Lin NeaseData Center Network Trends - Lin Nease
Data Center Network Trends - Lin Nease
 
Introduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxIntroduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptx
 

Recently uploaded

Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Sonam Pathan
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一Fs
 
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Lucknow
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一Fs
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一z xss
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一Fs
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITMgdsc13
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMartaLoveguard
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxDyna Gilbert
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Dana Luther
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationLinaWolf1
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书zdzoqco
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)Christopher H Felton
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Excelmac1
 

Recently uploaded (20)

Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
 
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja VipCall Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
Call Girls Service Adil Nagar 7001305949 Need escorts Service Pooja Vip
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
 
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
 
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITM
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptx
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptx
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 Documentation
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...
 

Lec13 cdn

  • 1. Content Distribution Networks (CDNs) Mike Freedman COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101 http://www.cs.princeton.edu/courses/archive/spr13/cos461/
  • 2. Second Half of the Course • Application case studies – Content distribution, peer-to-peer systems and distributed hash tables (DHTs), and overlay networks • Network case studies – Enterprise, wireless, cellular, datacenter, and backbone networks; software-defined networking • Network security – Securing communication protocols – Interdomain routing security 2
  • 3. Single Server, Poor Performance • Single server –Single point of failure –Easily overloaded –Far from most clients • Popular content –Popular site –“Flash crowd” (aka “Slashdot effect”) –Denial of Service attack 3
  • 4. Skewed Popularity of Web Traffic “Zipf” or “power-law” distribution 4 Characteristics of WWW Client-based Traces Carlos R. Cunha, Azer Bestavros, Mark E. Crovella, BU-CS-95-01
  • 6. Proxy Caches client Proxy server client HTTP request HTTP request HTTP response HTTP response HTTP request HTTP response origin server 6 6
  • 7. Forward Proxy • Cache “close” to the client –Under administrative control of client-side AS • Explicit proxy –Requires configuring browser • Implicit proxy –Service provider deploys an “on path” proxy –… that intercepts and handles Web requests 7 client Proxy server client HTTP request HTTP request HTTP response HTTP response
  • 8. Reverse Proxy • Cache “close” to server –Either by proxy run by server or in third-party content distribution network (CDN) • Directing clients to the proxy –Map the site name to the IP address of the proxy 8 Proxy server HTTP request HTTP response origin server origin server HTTP requestHTTP response
  • 9. Router Router Data Centers . . . Servers Servers Client Reverse Proxy Reverse Proxy Requests Client Client Private Backbone Internet Google Design 9
  • 10. Proxy Caches (A) Forward (B) Reverse (C) Both (D) Neither • Reactively replicates popular content • Reduces origin server costs • Reduces client ISP costs • Intelligent load balancing between origin servers • Offload form submissions (POSTs) and user auth • Content reassembly or transcoding on behalf of origin • Smaller round-trip times to clients • Maintain persistent connections to avoid TCP setup delay (handshake, slow start) 10
  • 11. 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 12
  • 12. Modern HTTP Video-on-Demand • Download “content manifest” from origin server • List of video segments belonging to video – Each segment 1-2 seconds in length – Client can know time offset associated with each – Standard naming for different video resolutions and formats: e.g., 320dpi, 720dpi, 1040dpi, … • Client downloads video segment (at certain resolution) using standard HTTP request. – HTTP request can be satisfied by cache: it’s a static object • Client observes download time vs. segment duration, increases/decreases resolution if appropriate 13
  • 14. Content Distribution Network • 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 15 origin server in North America CDN distribution node CDN server in S. America CDN server in Europe CDN server in Asia
  • 15. 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, … 16 Requires continuous monitoring of liveness, load, and performance Requires continuous monitoring of liveness, load, and performance
  • 16. 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 GET OK 17
  • 17. 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 1.2.3.0/24 18
  • 18. 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 19 1.2.3.4 1.2.3.5 DNS query local DNS server
  • 20. Akamai Statistics • Distributed servers –Servers: ~100,000 –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 21
  • 21. HTTPHTTP How Akamai Uses DNS cnn.com (content provider) DNS root server 1 2 Nearby Akamai cluster GET index. html 22 http://cache.cnn.com/foo.jp g HTTP Akamai cluster Akamai global DNS server Akamai regional DNS server End user
  • 22. HTTPHTTP How Akamai Uses DNS cnn.com (content provider) DNS TLD server 1 2 Nearby Akamai cluster 23 DNS lookup cache.cnn.com Akamai cluster 3 4 ALIAS: g.akamai.net Akamai global DNS server Akamai regional DNS server End user
  • 23. HTTPHTTP How Akamai Uses DNS cnn.com (content provider) DNS TLD server 1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster 24 Akamai cluster 3 4 6 5 ALIAS a73.g.akamai.net DNS lookup g.akamai.net End user
  • 24. HTTPHTTP How Akamai Uses DNS cnn.com (content provider) DNS TLD server 1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster 25 Akamai cluster 3 4 6 5 8 7 DNS a73.g.akamai.net Address 1.2.3.4 End user
  • 25. HTTPHTTP How Akamai Uses DNS cnn.com (content provider) DNS TLD server 1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster 26 Akamai cluster 3 4 6 5 8 7 9 GET /foo.jpg Host: cache.cnn.com End user
  • 26. HTTPHTTP How Akamai Uses DNS cnn.com (content provider) DNS TLD server 1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster 27 Akamai cluster 3 4 6 5 8 7 9 GET /foo.jpg Host: cache.cnn.com 12 11 GET foo.jpg End user
  • 27. HTTPHTTP How Akamai Uses DNS cnn.com (content provider) DNS TLD server 1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster 28 Akamai cluster 3 4 6 5 8 7 9 12 11 10 End user
  • 28. HTTPHTTP How Akamai Works: Cache Hit cnn.com (content provider) DNS TLD server 1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster 29 Akamai cluster 4 3 5 6 End user
  • 29. 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 30
  • 30. 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 31
  • 31. Adapting to Failures • Failing hard drive on a 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 32
  • 32. 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 33
  • 33. 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) 34
  • 34. 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 35