measuring*the*web:* parti22*contentdelivery*networks*€¦ · measuring*the*web:*...
TRANSCRIPT
Measuring the Web: Part I -‐-‐ Content Delivery Networks
Prof. Anja Feldmann, Ph.D.
Dr. Ramin Khalili
Georgios Smaragdakis, PhD
Acknowledgement
Material presented in these slides is borrowed from presentaJons by:
Mike Freedman (Princeton University), Ravi Sundaram (Northeastern University, Akamai),
Craig Labovitz (Arbor Networks, DeepField), Fabian Bustamante (Northeastern University), Tobias Flach (University of South California)
2
Today’s Internet Traffic
3
– Web becomes main transport for video and everything else
– Thousands small web sites subsumed by large content providers
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 aXack 4
Internet
Content Providers
End Users
The Web: Simple on the Outside…
IXP
IXP
Network Providers
Content Providers
End Users
Peering Points
…But ProblemaBc on the Inside
For TCP Distance MaXers
7
UJlizing Caching: Proxy Caches
client
Proxy server
client
origin server
8
8
Forward Proxy
• Cache “close” to the client – Under administraJve control
of client-‐side AS
• Explicit proxy – Requires configuring browser
• Implicit/Transparent proxy – Service provider deploys an “on path” proxy – … that intercepts and handles Web requests
9
client
Proxy server
client
Reverse Proxy
• Cache “close” to server – Either by proxy run by server or in third-‐party content distribuJon network (CDN)
• DirecJng clients to the proxy – Map the site name to the IP address of the proxy
10
Proxy server
origin server
origin server
Content DistribuJon Network
• ProacJve content replicaJon – Content provider (e.g., CNN) contracts with a CDN
• CDN replicates the content – On many servers spread throughout the Internet
• UpdaJng the replicas – Updates pushed to replicas when the content changes
11
origin server in North America
CDN distribution node
CDN server in S. America CDN server
in Europe
CDN server in Asia
Server SelecJon Policy
• Live server – For availability
• Lowest load – To balance load across the servers
• Closest – Nearest geographically, or in round-‐trip Jme
• Best performance – Throughput, latency, …
• Cheapest bandwidth, electricity, … 12
Requires conJnuous monitoring of liveness, load, and performance.
Monitoring includes traceroutes, pings, BGP updates etc
Server SelecJon Mechanism
• ApplicaJon – HTTP redirecJon
• Advantages – Fine-‐grain control – SelecJon based on client IP address
• Disadvantages – Extra round-‐trips for TCP connecJon to server
– Overhead on the server
GET
Redirect
GET
OK
13
Server SelecJon Mechanism
• RouJng – Anycast rouJng
• 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
14
Server SelecJon Mechanism
• Naming – DNS-‐based server selecJon
• Advantages – Avoid TCP set-‐up delay – DNS caching reduces overhead
– RelaJvely fine control
• Disadvantage – Based on IP address of local DNS server
– “Hidden load” effect – DNS TTL limits adaptaJon
15
1.2.3.4
1.2.3.5
DNS query
local DNS server
CDN example: Akamai
Servers at Network Edge
Content Providers
End Users
IXP
IXP
Akamai StaJsJcs
• Distributed servers – Servers: ~150,000 – Networks: ~1,100 – Countries: ~80
• Many customers -‐ Web portals
-‐ Streaming
-‐ E-‐commerce
• Client requests -‐ Hundreds of billions per day
-‐ 15-‐20% of all Web traffic worldwide
17
HTTP
How Akamai Uses DNS
cnn.com (content provider) DNS root server
1 2
Nearby Akamai cluster
GET index.html
18
http://cache.cnn.com/foo.jpg
HTTP
Akamai cluster
Akamai global DNS server
Akamai regional DNS server
End user
HTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Nearby Akamai cluster
19
DNS lookup cache.cnn.com
Akamai cluster
3
4ALIAS: g.akamai.net
Akamai global DNS server
Akamai regional DNS server
End user
HTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Akamai global DNS server
Akamai regional DNS server
Nearby Akamai cluster
20
Akamai cluster
3
4 6
5
ALIAS a73.g.akamai.net
DNS lookup g.akamai.net
End user
HTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Akamai global DNS server
Akamai regional DNS server
Nearby Akamai cluster
21
Akamai cluster
3
4 6
5
8
7
DNS a73.g.akamai.net
Address 1.2.3.4
End user
HTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Akamai global DNS server
Akamai regional DNS server
Nearby Akamai cluster
22
Akamai cluster
3
4 6
5
8
7
9
GET /foo.jpg Host: cache.cnn.com
End user
HTTP
How Akamai Uses DNS
cnn.com (content provider) DNS TLD server
1 2
Akamai global DNS server
Akamai regional DNS server
Nearby Akamai cluster
23
Akamai cluster
3
4 6
5
8
7
9
GET /foo.jpg Host: cache.cnn.com
12 11
GET foo.jpg
End user
HTTP
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
8
7
9
12 11
10 End user
HTTP
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
25
Akamai cluster
4
3
5
6 End user
OpJmizaJons to Improve Performance and Increase Cache Hit
26
-‐ Terminate the connecBon close to the end-‐user -‐ UBlize proprietary protocols between the servers
Example $ dig www.audi.com
; <<>> DiG 9.6-‐ESV-‐R4-‐P3 <<>> www.audi.com ;; global opJons: +cmd ;; Got answer:
;; -‐>>HEADER<<-‐ opcode: QUERY, status: NOERROR, id: 47918 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 8, ADDITIONAL: 8
;; QUESTION SECTION:
;www.audi.com. IN A
;; ANSWER SECTION: www.audi.com. 900 IN CNAME www.audi.com.edgesuite.net.
www.audi.com.edgesuite.net. 8850 IN CNAME a1805.r.akamai.net. a1805.r.akamai.net. 20 IN A 23.62.61.73 a1805.r.akamai.net. 20 IN A 23.62.61.65
;; AUTHORITY SECTION: r.akamai.net. 5386 IN NS n5r.akamai.net. r.akamai.net. 5386 IN NS n6r.akamai.net.
r.akamai.net. 5386 IN NS n7r.akamai.net. r.akamai.net. 5386 IN NS n3r.akamai.net. r.akamai.net. 5386 IN NS n4r.akamai.net.
r.akamai.net. 5386 IN NS n0r.akamai.net. r.akamai.net. 5386 IN NS n1r.akamai.net. r.akamai.net. 5386 IN NS n2r.akamai.net.
;; ADDITIONAL SECTION: n5r.akamai.net. 5647 IN A 195.95.193.90
27
RedirecBon
Example $ dig www.audi.com
; <<>> DiG 9.6-‐ESV-‐R4-‐P3 <<>> www.audi.com ;; global opJons: +cmd ;; Got answer:
;; -‐>>HEADER<<-‐ opcode: QUERY, status: NOERROR, id: 47918 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 8, ADDITIONAL: 8
;; QUESTION SECTION:
;www.audi.com. IN A
;; ANSWER SECTION: www.audi.com. 900 IN CNAME www.audi.com.edgesuite.net.
www.audi.com.edgesuite.net. 8850 IN CNAME a1805.r.akamai.net. a1805.r.akamai.net. 20 IN A 23.62.61.73 a1805.r.akamai.net. 20 IN A 23.62.61.65
;; AUTHORITY SECTION: r.akamai.net. 5386 IN NS n5r.akamai.net. r.akamai.net. 5386 IN NS n6r.akamai.net.
r.akamai.net. 5386 IN NS n7r.akamai.net. r.akamai.net. 5386 IN NS n3r.akamai.net. r.akamai.net. 5386 IN NS n4r.akamai.net.
r.akamai.net. 5386 IN NS n0r.akamai.net. r.akamai.net. 5386 IN NS n1r.akamai.net. r.akamai.net. 5386 IN NS n2r.akamai.net.
;; ADDITIONAL SECTION: n5r.akamai.net. 5647 IN A 195.95.193.90
28
RedirecBon
Try:
curl –H Host:www.audi.com hXp://23.62.61.73/index.html
29
Measuring CDNs
• UJlize a number of vantage points or Open DNS resolvers
• Every e.g., 60 secs, each vantage point queries an appropriate URL delivered by Akamai, or CNAMES (e.g., *.akamai.net)
• Similar technique can be used for other CDNs (e.g., Limemight)
PL Node
Akamai Edge Server 2
Akamai Edge Server 3
Akamai Low-Level DNS Server .……
Akamai Edge Server 1
Measuring CDNs By uJlizing a large number of vantage points or open resolvers it is possible to collect all the IPs of the CDNs!
Example of measurement in 2009:
30
AKAMAI CDN: Country # of IP United States 16,843 United Kingdom 1,690 Japan 1,622 Germany 1,103 Netherlands 857 France 722 Australia 514 Canada 438 Sweden 396 Hong Kong SAR 370 Others 3018 Total 27,573
Limelight CDN: Country # of IP United States 2,830 Germany 314 United Kingdom 300 Netherlands 199 Japan 126 Canada 121 France 120 Hong Kong SAR 83 China 53 Australia 1 Total 4,147
31
Measuring CDNs
day
night
Berkeley Purdue
Where to Measure CDN and Web traffic? OpJon 1: IXP infrastructure
Source: DE-‐CIX, 2012
Complex system Centralized monitoring
Internet eXchange Point (IXP)
Layer-2 switch
AS1
AS4
AS2 AS3
AS5 AS6
EsJmaJon of CDN and Web traffic
AS4
Akamai AS (AS1)
AS3
AS2
IXP
Akamai
Akamai
Akamai Akamai Link
IXP Results
• Around 70% of the traffic is Web (Large IXP, 2012)
• A relaJve small number of large CDNs, Hosters, and Streaming providers are responsible for >50% of the traffic
35
Where to Measure CDN and Web traffic? OpJon 2: Private peering locaJons
Source: DE-‐CIX, 2012
• ARBOR study: -‐ 110+ ISPs / content providers -‐ Including 3,000 edge routers and 100,000 interfaces -‐ And an esJmated ~25% all inter-‐domain traffic
• AT&T Backbone study: Backbone, access, and mobile network
• Deutsche Telekom Study: Passive measurements from 20K residenJal users
A Few Large CDNs and Datacenters are responsible for most of the Web
AT&T Study (2010)
Arbor Study (2009-‐13): ConsolidaJon of Web Traffic
%Traffic due to CDNs 2009: 25% 2011: 35% 2013: 50%
A Few Large CDNs and Datacenters are responsible for most of the Web
Deutsche Telekom Study (2010)
..and the CDN traffic increases
39