synthetic and real world web performance monitoring
DESCRIPTION
By Nathan Moore, EdgeCast/Verizon Web Performance Team EdgeCast competes heavily on performance. We work very hard to make the Internet faster, more reliable, and more robust. One of the ways we do this is through our partnerships with third party monitors. We measure our real-world performance constantly across the globe to ensure that we identify and react to any problems quickly and efficiently. The goal: eliminate any potential difficulty that can get between end users and their content. Our friend and ally: third party monitors: Our third party monitors help us to improve ourselves while providing the assurance and validation that our service legitimately performs to both our and our customer's expectations. The below presentation was given recently at a small web performance conference, showing both the general operating theory behind our use of third party monitors and some specific use case examples demonstrating the value that they bring. The use of synthetic and real world monitoring: We use both synthetic and real world monitoring to ensure delivery quality and performance. This presentation shows three recent EdgeCast examples of how we deploy these testing techniques to optimize our vast, global network. Transact: Launching a whole new global network Launching a new product is always difficult. Doubly so when the word "worldwide" is attached to it. The challenge before us was to take our brand new Transact platform, complete with a brand new network and servers in over 20 brand new POPs around the world, and make it perform as well as our existing highly optimized network. We relied extensively on third party monitors to both make this happen, and to demonstrate that we had succeeded. IPv6: Deploying the future: World IPv6 Day was designed to raise awareness that the future of the Internet is here, and that it's time to begin the needed transition away from IPv4 into the world of IPv6. EdgeCast participated, and deployed IPv6 throughout its extensive worldwide network. But we needed to test: how did we know that we could deliver content across the IPv6 world? Using the RIPE/ATLAS probes to run worldwide traces gave us the data we needed to demonstrate that we could. Competitive A/B testing: proving our performance: It's not just the technology side of the business that needs to know how the EdgeCast network is performing. Our sales team depends heavily on the independent measurements provided by third party monitoring services. This allows for A/B comparisons and independent confirmation of our performance claims. However, sometimes the monitoring services uncover some very odd and strange behavior, which requires some level of analysis to get at the root of.TRANSCRIPT
EdgeCastPerformance Engineering Group
Third Party MonitoringUse Cases
Nathan Moore, Web Performance [email protected]
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
2
Analyze performance trends and come up with ideas to make the CDN faster
© 2013 EDGECAST NETWORKS
Web Performance Group
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
3
• Network Stack• Routing• Kernel• Application
© 2013 EDGECAST NETWORKS
Performance Optimizations
TCP Optimizations
4
• We monitor as much as we can to find these:
© 2013 EDGECAST NETWORKS2850 OCEAN PARK BLVD, SUITE 110, SANTA
MONICA CA
Performance Optimizations
Needles in haystacks
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
5
You can’t manage what you don’t measure
-- Deming-- Drucker
-- Traditional
© 2013 EDGECAST NETWORKS
Why monitor?
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
6
• Performance– Latency– Bandwidth
• Availability– Uptime
• Rate of Change of Internet– Snapshot of Internet as a whole
© 2013 EDGECAST NETWORKS
What can you monitor with Third Party Applications?
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
7
Web performance drives KPIs
© 2013 EDGECAST NETWORKS
Why care?
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
8
KPIs:
• Fast websites drive Sales and Engagement• Reliable websites drive Sales and Engagement
© 2013 EDGECAST NETWORKS
Why care?
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
9© 2013 EDGECAST NETWORKS
Not just a made-up statistic
http://sites.google.com/site/glinden/Home/StanfordDataMining.2006-11-28.ppt?attredirects=0
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
10
What you can measure, you can optimize
-- Ilya Grigorik
© 2013 EDGECAST NETWORKS
Why monitor?
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
11© 2013 EDGECAST NETWORKS
Simplified Internet Traffic Flow
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
12© 2013 EDGECAST NETWORKS
Categorizing the World
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
13© 2013 EDGECAST NETWORKS
Monitoring the World
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
14
Synthetic monitoring is needed to dynamically monitor the External
Internet
© 2013 EDGECAST NETWORKS
What are Third Party Monitors for
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
15© 2013 EDGECAST NETWORKS
Monitoring Hooks for Synthetic Monitoring
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
16© 2013 EDGECAST NETWORKS
Synthetic Monitoring
Synthetic monitoring is clean
• Small number of nodes• Well defined network• Highly reliable links between nodes and networks• Shows health of the backbone of the Internet
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
17© 2013 EDGECAST NETWORKS
State of the Internet
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
18
Real User Monitoring (RUM) is needed to
measure what your end users really see
© 2013 EDGECAST NETWORKS
What are Third Party Monitors For
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
19© 2013 EDGECAST NETWORKS
From Synthetic to Real User Metrics (RUM)
Reporting Server
CDN 1 CDN 2 CDN 3
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
20© 2013 EDGECAST NETWORKS
Real User Data / RUM
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
21© 2013 EDGECAST NETWORKS
Real User Metrics (RUM)
RUM is messy. Rum is the real observed data generated by real users on the real Internet on real web browsers
Combinatorics:• Hundreds of Millions of TCP connections• Tens of Millions of end users • Thousands of ISPs• Tens of backbone providers• One of your web servers
• Data Distribution issues:• Power law distributions => averages lose explanatory power• Quantiles and Cumulative Density Functions (CDF) gain importance• Aggregating data and mining for correlations becomes more difficult
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
22© 2013 EDGECAST NETWORKS
Real User Data / RUM benefits
Data aggregated across country and displayed across world
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
23© 2013 EDGECAST NETWORKS
Use Case 1:What if you only have synthetic monitors?
New platform launch:
EdgeCastTransact
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
24© 2013 EDGECAST NETWORKS
Use Case 1:Launch of Transact
Directive from CEO:
Performance must match the existing matured network!
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
25© 2013 EDGECAST NETWORKS
Use Case 1:Launch of Transact
Transact is a brand new product from EdgeCast, designed to accelerate e-commerce performance on the web.
Featuring full PCI compliance, it has its own dedicated and highly reliable network, its own dedicated servers, and a fully integrated security layer.
The challenge is to deploy a brand new network, and make it perform like an existing, fully matured network.
Third party monitors are the key to accomplish this, and to know when we’ve accomplished it.
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
26© 2013 EDGECAST NETWORKS
Use Case 1: Launch of TransactEstablished monitors across the major third parties to observe actual latencies worldwide
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
27© 2013 EDGECAST NETWORKS
Use Case 1:Launch of Transact
Compared performance between Transact and EdgeCast ADN at all nodesUsed the delta to determine where issues were
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
28© 2013 EDGECAST NETWORKS
Use Case 1:Launch of Transact
Iterated: As issues were resolved, updated with new monitoring data
Repeat process!
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
29© 2013 EDGECAST NETWORKS
Use Case 1:Launch of Transact
Result: Worldwide average performance within 1.5ms
EdgeCast ADN Transact
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
30
Third party monitoring allows A/B comparison
© 2013 EDGECAST NETWORKS
What are Third Party Monitors For
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
31© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLAS
Using RIPE/ATLAS to evaluate the network for IPv6 launchfor World IPv6 Day, 2012
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
32© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLAS
For World IPv6 Day, we deployed IPv6 across our entire network.
The Challenge:
How does the IPv6 Internet perform? We used RUM data provided by RIPE/ATLAS to find out.
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
33© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLAS
http://atlas.ripe.net/about
RIPE Atlas is a global network of probes that measure Internet connectivity and reachability, providing an unprecedented understanding of the state of the Internet in real time.
http://www.ripe.net
The RIPE NCC is one of five Regional Internet Registries (RIRs) providing Internet resource allocations, registration services and coordination activities that support the operation of the Internet globally.
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
34© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLAS
JSON based API Ability to run multiple tests
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
35© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLAS
We launched a beacon dedicated to IPv6 measurements which tested:
• IPv4 only• IPv6 only• Dual IPv4 & IPv6
To reduce failures, the beacon also checked connectivity to ipv6.google.com
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
36© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLAS
What did we learn from Atlas about our IPv6 performance and availability?
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
37© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLAS
IPv6 Reach Analysis
AS path analysis AS path of failed traces
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
38© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLASVisualization of Country-of-Origin traffic to EdgeCast POP
Ex: Ukraine is served by both POP7 and POP1, and POP7 has higher latency
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
39© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLAS
Availability predictions before launch
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
40© 2013 EDGECAST NETWORKS
Use Case 2: RIPE/ATLASPerformance improvements during pre-launchConclusions: IPv6 still has room for improvement
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
41© 2013 EDGECAST NETWORKS
Use Case 3: Analytics within Third Party Monitors
Using Third Party Monitors to answer real-world questions
Often, we’re asked questions by different groups of the company.
Sales, for instance, always wants to prove that we’re the fastest worldwide.
But what to do when some regions are faster than others?
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
42© 2013 EDGECAST NETWORKS
Use Case 3: Analytics within Third Party Monitors
Sales wanted to know why a prospective client was performing really well in Asia, but not nearly as well in Europe.
AsiaEdgeCast Mystery Competitor X
EuropeEdgeCast Mystery Competitor X
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
43© 2013 EDGECAST NETWORKS
Use Case 3: Analytics within Third Party Monitors
There was a lot of variance within countries
EdgeCast Mystery Competitor X
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
44© 2013 EDGECAST NETWORKS
Use Case 3: Analytics within Third Party Monitors
The scatterplot shows some odd signs of horizontal banding.
EdgeCast Mystery Competitor X
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
45© 2013 EDGECAST NETWORKS
Use Case 3: Analytics within Third Party Monitors
Good clue: Looking at the total downloaded bytes instead of response time, the banding becomes really obvious, and wildly different in size
EdgeCast Mystery Competitor X
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
46© 2013 EDGECAST NETWORKS
Use Case 3: Analytics within Third Party Monitors
A histogram shows the magnitude of this difference
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
47© 2013 EDGECAST NETWORKS
Use Case 3: Analytics within Third Party Monitors
Conclusion:
Client was returning different data depending on the geoIP lookup of the end user. So end users in different countries were deliberately being returned different objects.
However, as caches, both EdgeCast and Mystery Competitor X were caching the index.html page, so whatever was on that page was cached and returned on every request. New data was only returned once every day, when the caching rule expired, and a fresh request to origin was made.
The extreme difference in size was largely a function of random chance- we got lucky to return smaller objects during this sample time.
2850 OCEAN PARK BLVD, SUITE 110, SANTA MONICA CA
48© 2013 EDGECAST NETWORKS
Questions?