Radar Methodology

The Cedexis Radar community measures many cloud, content delivery, and private platforms, as users experience them, from over 32,000 networks around the globe. The result is a real-time picture of global performance for all of these platforms from nearly every network in every country in the world.

Test Objects

Four test objects are deployed to every major CDN and cloud provider and any private platforms which community members would like to measure:

Probing

The test objects are probed using the Radar client to collect actionable comparative data about the providers and platforms measured. Over 350 organizations have joined the Cedexis Radar community by deploying the Radar tag. When someone visits their sites the browser instantiates the Radar client. The Radar client waits until two seconds after the browser's onLoad() event and then downloads instructions from Cedexis. These instructions specify which platform to measure next during the session, picked from among the community platforms and any private platforms specific to that community member.

The Radar client initiates up to three measurements for the platform it is instructed to measure. At each step in the chain the Radar client "cache busts" the local browser cache by appending a random number to an HTTP GET query string. The specific object(s) loaded from the given platform depend on which browser the client is using, either the JavaScript timer-method objects or the Navigation Timing-method objects.

1: HTTP Connect

First, Radar measures how long it takes to download the small object. This measurement includes local DNS resolver cache hit or miss time, TCP socket set up time, and, if the measurement is of a CDN, then also the caching node hit or miss time. Some of these are not in the control of the provider being measured so there tends to be more variability in this measurement.

2: HTTP Response

As soon as that first download completes, the Radar client downloads the small object again, reusing the open TCP connection and the browser's cache for DNS resolution. This is HTTP Response time and we consider it to be an accurate representation of basic latency from the browser to the provider.

3: HTTP Throughput

The large object is downloaded, again reusing the TCP connection and browser DNS cache, to measure Kbps (KiloBits) based on start and finish of the download over time. Not all providers are measured for throughput.

Error Rate

Finally, the Error Rate is calculated based on which of these downloads succeed or fail.

Delivery Page Load Time

Beyond probing providers, Radar also collects Navigation Timing data from the browser for each page load. This kind of data is usually called "Real User Measurement" or "RUM" and is useful for understanding per-page performance in the browser. It is not useful for making comparative choices between providers.