Next Stop, the Cloud: Understanding Modern Web Service

advertisement
Next Stop, the Cloud:
Understanding Modern Web Service
Deployment in EC2 and Azure
Keqiang He, Alexis Fisher, Liang Wang,
Aaron Gember, Aditya Akella, Thomas Ristenpart
University of Wisconsin-Madison
1
Move to IaaS clouds
Private
Datacenters
Co-location
Centers
2
Incomplete view of cloud use
Want a global, in-depth understanding
of IaaS cloud usage patterns
3
Fundamental questions
1. Who is using public IaaS clouds?
→ Traffic patterns; network design/traffic engineering
2. How are these services using the cloud?
Impact of failures; ways to improve availability
→ Design of new systems/services
→
3. How can quality of experience be improved?
→
Deployment design (e.g., ideal region/zone usage)
4
First in-depth empirical study
examining IaaS cloud usage patterns
and identifying ways tenants could
better leverage IaaS clouds
5
IaaS cloud environments
DNS
Server
VM
VM
Platform-as-a-Service
LB
(PaaS)
Proxy
VM
PaaS
Node
CDN
6
Datasets
• University packet capture
– Deep, but possibly atypical, perspective
IP Ranges
Campus
Traffic
1.4TB Capture
Conn
records
• Alexa subdomains DNS records
– Broad, high-level perspective
Zone transfer
Top 1
million
Subdomains
DNS
records
7
Fundamental questions
1. Who is using public IaaS clouds?
→ Traffic patterns; network design/traffic engineering
2. How are these services using the cloud?
Impact of failures; ways to improve availability
→ Design of new systems/services
→
3. How can quality of experience be improved?
→
Deployment design (e.g., ideal region/zone usage)
8
How many popular web
services use the cloud?
43% in top
250K domains
5.1%
0.7%
Both
40,333
Cloud-using domains
94.2%
Cloud availability and performance
issues may impact over 4%
2 of 68
9.
of popular web services
Non-cloud-using domains
959,667
13.
29.
35.
36.
3 of 142
4 of 181
18 of 24
14 of 89
9
Which (locally) popular
web services use the cloud?
Traffic Volume (Bytes)
18.3%
81.7%
1.
2.
3.
4.
5.
68.2%
1.7%
1.1%
0.7%
0.6%
1.
2.
3.
4.
5.
atdmt.com
3.1%
2.4%
msecnd.net 2.3%
1.5%
s-msn.com
1.4%
10
What type of content is served by
(locally) popular web services?
2.4%
Other (TCP)
0.3%
Other (UDP)
0.1%
24.2%
DNS (UDP)
HTTP (TCP)
HTTP Content Type
73.0%
Compression could be employed
1.
HTTPS (TCP)
text/html
to save WAN bandwidth
2.
text/plain
Top 100 cloud-using
and improve delivery
latency
3.
image/jpeg
domains account for
≈80%
≈100%
of HTTP flows
24.1%
23.4%
10.6%
4.
app/flash
5.
app/octet-stream 7.8%
8.7%
11
Fundamental questions
1. Who is using public IaaS clouds?
→ Traffic patterns; network design/traffic engineering
2. How are these services using the cloud?
Impact of failures; ways to improve availability
→ Design of new systems/services
→
3. How can quality of experience be improved?
→
Deployment design (e.g., ideal region/zone usage)
12
IaaS cloud environments
DNS
Server
VM
LB
Proxy
PaaS
PaaS
VM
VM
Node
CDN
13
Which front ends are used?
DNS
Server
VM
sub.abc.com
A
?
72.44.32.1
sub.abc.com
CNAME
abc.elb.aws.com
abc.elb.aws.com
A
72.44.42.1
VM
LB
Proxy
VM
sub.abc.com
CNAME
proxy.heroku.com
proxy.heroku.com
A
72.44.62.1
DNS
records
PaaS
Node
?
?
14
Which front ends are used?
PaaS front end
LB front end
VM front end
3%
8%
Elastic
Beanstalk
4%
72%
There is limited uptake
0%
50%
100%
of value-added
features
15%
3+ VMs
35%
2 VMs
50%
1 VM
97%
≈60% of ELB-using subdomains
resolve to 2+ ELB IPs
≈4% of ELB IPs are shared
by 10+ subdomains
15
Which front ends are used?
LB
PaaS
9.
LB
PaaS
13.of value-added
Failures
features
CDN
29.
will impact
the
most
popular
VM
35.
EC2-using
subdomains
36.
VM
LB
16
Which locations are used?
DNS
records
17
How many and which regions are used?
Virginia
40 548
Ireland
California
116 366
Oregon
Singapore
521 681
Tokyo
Sao Paulo
18
How many and which regions are used?
632
502
Virginia
862
558
California
Illinois
1 205
Texas
Ireland
2 071
1 035
Netherlands
Singapore
1 395
Hong Kong
19
How many and which regions are used?
8%
3%
2+ regions
2+ regions
1 region
1 region
Single region
97% failures can
take down a large fraction
1
9.
7.
of cloud-using2subdomains
13.
29.
35.
36.
1
1
2
18.
20.
31.
92%
3
5
1
5
How many and which
availability zones are used?
• Latency measurements
– Low latency => instances are in same zone
– High coverage, low accuracy (noisy)
• IP address correlation
– IPs are in the same /16
subnet => instances
are in the same zone
– Higher accuracy,
low coverage
21
How many and which
availability zones are used?
22.3%
3+ Zones
33.2%
1 Zone
Single zone failures can take
44.5% down 16% of subdomains
2 Zones
and cripple many9.others
13.
29.
35.
36.
4
5
1
3
5
22
Fundamental questions
1. Who is using public IaaS clouds?
→ Traffic patterns; network design/traffic engineering
2. How are these services using the cloud?
Many
popular
web
services
are
not
→ Impact of failures; ways to improve availability
deployed optimally for their users
→ Design of new systems/services
3. How can quality of experience be improved?
→
Deployment design (e.g., ideal region/zone usage)
23
Future measurements
•
•
•
•
Use of other clouds (e.g., Rackspace)
Use of other EC2 and Azure features
Back end deployments
Packet captures from other vantage points
24
Summary
• Systematic method for studying IaaS cloud use
• 4% of popular web services use EC2/Azure
• VMs are the most popular EC2 front end, but
value-added features are used by top domains
• Limited region and zone use (and diversity)
makes web services vulnerable to failures
25
Are web services deployed near users?
• Compare a domain’s customer country
(according to Alexa) and region usage
• 47% of subdomains are not deployed
in the same country as users
• 32% subdomains are not deployed
on the same continent as users
26
What is the user perceived network
performance for different regions/zones?
Regions should be selected
based on users’ locations
27
Download