Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

43
Using Multiple Content Delivery Networks to Improve Web Performance December 2013 Webinar Cory von Wallenstein Chief Technologist, Dyn @cvwdyn Aaron Peters CEO, Turbobytes @aaronpeters

description

Dyn Chief Technologist Cory von Wallenstein and Turbobytes CEO Aaron Peters discussed the benefits of using multiple content delivery networks to improve web performance.

Transcript of Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Page 1: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Using Multiple Content Delivery Networks to Improve Web PerformanceDecember 2013 WebinarCory von WallensteinChief Technologist, Dyn

@cvwdyn

Aaron PetersCEO, Turbobytes

@aaronpeters

Page 2: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 2 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Your Presenters

Cory von Wallenstein

Chief Technologist, Dyn

@cvwdyn

Aaron PetersCEO,

Turbobytes@aaronpeters

Page 3: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 3 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

• History of the CDN, and the pain today• Real-world global CDN performance data• How CDN load balancing works• Three stories of multiple CDN success• How can you get started?

Agenda

Page 4: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 4 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

In the beginning…

User Ye OldeWeb Server

Page 5: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 5 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

In the beginning…

User Ye OldeWeb Server

Local Area Network

Page 6: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 6 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

More users, across greater distances…

More UsersYe Olde

Web Server

Wide Area Networks

Page 7: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 7 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Continued growth… in users.

More GlobalUsers

Ye OldeWeb Server

Internet

Dial-upConsumer

ISPs

Page 8: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 8 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Continued growth… in data consumed.

More GlobalUsers

Ye OldeWeb Server

Internet

BroadbandConsumer

ISPs

Page 9: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 9 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Continued growth… in bandwidth.

More GlobalUsers

Ye OldeWeb Server

Internet

Even More Bandwidth On Broadband ISPs

Page 10: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 10 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Congestion…

More GlobalUsers

Ye OldeWeb Server

Internet

Even More Bandwidth On Broadband ISPs

Page 11: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 11 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Remove bottlenecks…

More GlobalUsers

More WebServers

Multiple Internet Routes

Page 12: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 12 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Latency and operational complexity…

More GlobalUsers

More WebServers

Multiple Internet Routes(hundreds of milliseconds)

Page 13: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 13 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Speed of light299,792.458 km/second(in a vacuum)

Theoretical RTT~40ms

Real RTT~90ms

Page 14: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 14 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Birth of the Content Delivery Network.

More GlobalUsers

Content DeliveryNetwork

Ye OldeWeb Server

Shorter Routes(tens of milliseconds)

Page 15: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 15 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

And things were great.

For a while…

Page 16: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 16 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

http://news.bbc.co.uk/2/hi/technology/8552410.stm

Page 17: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 17 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

http://news.bbc.co.uk/2/hi/technology/8552410.stm

Page 18: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 18 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

http://news.bbc.co.uk/2/hi/technology/8552410.stm

CDN A CDN BCDN C

CDN D

Page 19: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 19 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

2017: What to expect

Cisco Visual Networking Index: 2012–2017

Global IP traffic: 4x in past 5 years, increase 3x by 2017. Mobile increase 13x.

Busy hour traffic: up 41% vs 34% growth in average traffic.

Busy hour traffic to increase 3.5x by 2017, vs 2.9x in average traffic.

CDNs will carry more than 50% of all Internet traffic by 2017 (34% in 2012).

IP traffic growing fastest in Middle East & Africa (38% CAGR), followed by APAC.

Regional Compound Annual Growth Rates in TrafficAPAC (26%), North America (23%), Western Europe (17%),

Latin America (17%), Central & Eastern Europe (21%).

Page 20: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 20 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Your goalDeliver content to end users fast, everywhere, all the time.

Slow is the new downtime.100ms = 1% lost sales (Amazon) & 500ms = 20% traffic drop (Google)

Your real world challengeNo single CDN can do this: they all encounter operational performance problems, and they all have regions where they are slow.

http://bit.ly/19PU0w5 http://bit.ly/18TFRkC

Page 21: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 21 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Important note before examples…

We made certain to mention this multiple times in the webinar, and wanted to include in the shared slides as well.

• We’re about to show real world performance data collected through real user monitoring from Turbobytes.

• “Fail” is defined as a 15kB file taking longer than 5000ms to load. Your definition of “failed” may vary. Interpret failed ratios accordingly.

• The examples are all from great CDN vendors, who have built great and robust networks and deliver great experiences for their clients

• No one vendor is perfect for all users all of the time; all occasionally have temporary problems, and all have some parts of the world where they deliver better performance than others.

• The takeaway: we should all be designing FOR failure and degradation in our web architectures, and a content delivery network as part of that architecture is no different.

Page 22: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 22 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Example 1. CDN Outage in The Netherlands

Telia blackholed all traffic for ~ 60 minutes

Millions could not access Internap powered sites

“Fail” is defined as a 15kB file taking longer than 5000ms to load. Your definition of “failed” may vary. Interpret failed ratios accordingly.

Page 23: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 23 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Example 2. CDN problems in Brazil

Total time to fetch 15 KB object from Cloudfront increased from 400 ms to 900 ms for 4 weeks.

Page 24: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 24 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Example 3. CDN outage in Australia

Problem at peering partner PIPE Networks

“Fail” is defined as a 15kB file taking longer than 5000ms to load. Your definition of “failed” may vary. Interpret failed ratios accordingly.

Page 25: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 25 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Example 4. CDN performance in France from Orange

Akamai (G) has a much higher fail ratio on network of largest ISP in France.

“Fail” is defined as a 15kB file taking longer than 5000ms to load. Your definition of “failed” may vary. Interpret failed ratios accordingly.

Page 26: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 26 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Important note after examples…

We made certain to mention this multiple times in the webinar, and wanted to include in the shared slides as well.

Any of the examples shown could have substituted a CDN vendor, a time, and a region and still have served to illustrate the point: all content delivery networks have occasional performance problems, and all have some areas of the world where they perform better than others.

These are all great vendors, and you should not use the data presented to make a decision to use one CDN vendor over another.

The takeaway: we should all be designing FOR failure and degradation in our web architectures, and a content delivery network as part of that architecture is no different.

Page 27: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 27 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

What can you do about it?

Load balance multiple CDNs.

Page 28: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 28 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

How does CDN load balancing work?

User

Web Server

DNS Server

Q: www.example.com

A 1.2.3.4

AAAA fdda:5cc1:23:4::1f

Page 29: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 29 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

How does CDN load balancing work?

User

Web Server

DNS Server

Q: www.example.com

CNAME example.cdn.com

CDN

Page 30: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 30 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

How does CDN load balancing work?

User - USA

DNS Server

Q: www.example.comCNAME example.cdn-america.com

CDN America

User - France

User - Japan

CDN Europe

CDN APAC

Page 31: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 31 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

How does CDN load balancing work?

User - USA

DNS ServerQ: www.example.com

CNAME example.cdn-apac.com

CDN America

User - France

User - Japan

CDN Europe

CDN APAC

Page 32: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 32 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

How does CDN load balancing work?

User - USA

DNS ServerQ: www.example.com

CNAME example.cdn-apac.com

CDN America

User - France

User - Japan

CDN Europe

CDN APAC

Page 33: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 33 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

How does CDN load balancing work?

User - USA

DNS ServerQ: www.example.com

CNAME example.cdn-europe.com

CDN America

User - France

User - Japan

CDN Europe

CDN APAC

Page 34: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 34 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Three Stories of Multiple CDN Success

Reliability, Speed, and Price/Performance

Page 35: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 35 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Page 36: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 36 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Executing a Multi-CDN strategy

• Previously used one CDN to deliver static objects (EdgeCast)• Goals: 1) improve speed in South-America, 2) improve reliability and speed globally• Solution:

• Add another CDN with global presence incl. POP(s) in South-America• Load balance solely based on performance using Real User Monitoring data• Automate it all: use Turbobytes’ platform

Result: in Brazil, total time to fetch 15 KB file dropped from 700 ms to 330 ms (median)

Page 37: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 37 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Page 38: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 38 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

From Single CDN to Multiple CDNs

http://highscalability.com/blog/2010/2/6/geo-aware-traffic-load-balancing-and-caching-at-cnbccom.html

• Previous setup was a single large content delivery network vendor• Wanted better response time, lower cost, and better use of existing datacenters• Solution: Dyn Traffic Management combined with internal caching layer (aiCache)

• E.g., 20% of US East Coast Traffic to external CDN, 80% to internal CDN

• Results:• Removed 1 second of page load (30% savings)• Hits to origin reduced more than 80%• External CDN traffic down 80% - including 80% reduction in fees• More operational flexibility

Page 39: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 39 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Page 40: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 40 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Global CDN Load Balancing

• LinkedIn has a massive, globally-distributed, and rapidly growing user base• No one content delivery network can guarantee the user experience

LinkedIn requires in every part of the world (always up, always fast)• Solution: Leverage multiple external CDNs and CDN load balancing

• Dyn Traffic Management with API integration• Staff continuously monitor metrics and make geo-targeting/load balancing

adjustments for best user experience• Internal performance data and real user monitoring• External web performance monitoring

• Result is an exceptional experience for end-users all over the world

Page 41: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 41 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

What CDN should you use where?Turbobytes findings:• Every CDN has performance degradations• Often, but not always, CDNs with a local POP outperform the others in that region• Especially in APAC and South-America, performance differs greatly between CDNs

in many countries and fluctuates more than in US/EU

Tips:• Test performance of CDNs, and do it well:

• Test in all your key markets, and test for not just a few days • Test from the perspective of your end users: RUM• Analyze total object load time, not just 'response time'

• Pick the 2 or 3 CDNs that can together will give excellent performance everywhere

Page 42: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 42 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

How can I get started?

Don’t already have a CDN?Don’t want to manage multiple vendors?Want multiple CDNs managed for you?

Get Turbobytes

(Powered by Dyn Traffic Management)

Already have a CDN in place, and arelooking to add another?

Get Dyn Traffic Management

Page 43: Dyn & Turbobytes: Improve Web Performance By Using Multiple CDNs

Pg. 43 Improving Web Performance with Multiple CDNs @cvwdyn from @Dyn & @aaronpeters from @turbobytes

Questions?

Cory von Wallenstein

Chief Technologist, Dyn

@cvwdyn

Aaron PetersCEO,

Turbobytes@aaronpeters