Content Delivery Networks (CDNs) provide end users with fast digital experiences by serving static assets from the “edge” of the internet closest to them. These edges are part of the CDN’s large, global network of servers. CDNs can also leverage their superior network peering capabilities whenever an end user wants access to a domain beyond their own network.
CDNs are a great way to upgrade the accessibility of your applications or services--however, picking the right CDN provider is challenging. In this article, we will examine which factors to consider when evaluating a CDN provider.
Qualities of a Good CDN Provider
Let’s start with the basic essentials of a CDN provider. The CDN provider in question should:
- Be faster than your origin
- Be good at delivering small files (e.g., 5KB)
- Be able to deliver large payloads
- Minimize latency caused by geographical distance
Additional Benefits of Using a CDN
CDNs provide additional benefits beyond just speed.
- You free up a lot of resources, time, and personnel by offloading static file management to a CDN
- You can get assistance from the CDN provider with DDOS attacks
- You can leverage the CDN provider’s resources for handling seasonal traffic spikes
Key CDN Metrics to Watch
Because of the demands of modern websites, infrastructure needs are becoming increasingly complex. It’s not enough to simply select a CDN provider that seems faster or farther-reaching than your origin server. The following sections outline some of the most important metrics to ask for when vetting a potential CDN Provider.
1. DNS Response Time
Some CDN providers have complex DNS setups that can slow performance. This could look like a relatively fast wait time that gets offset by a slower DNS response time. Last-mile and end user DNS performance can vary quite a lot from tests run in the backbone. This is because end users rely on the DNS resolvers of their Internet Service Providers (ISPs) or Public Resolvers, whereas backbone monitoring relies on resolvers that are very close to the machine running the tests.
2. Connect Time
Review the differing connect times to make sure that your CDN has great network connectivity, low latency, and no packet loss. Additionally, you want to make sure it does not get slower during peak hours and that you are being routed to the right network peering. For example, if an end user is on Verizon FIOS, there is no reason to go through five different backbone networks because that CDN does not have a direct peering with Verizon.
3. Wait Time
Wait Time is an indicator for any potential capacity issues and bad configurations located either within the provider’s CDN network or your origin server. Wait Time also reveals whether or not your content is actually being served from the edge or if it is being fetched from your origin server.
Why wouldn’t your content be available on the edge, if that’s what you’re paying for? Well, CDNs deliver different levels of performance for static assets that are considered “hot,” or requested 100,000+ times within the past hour (versus only a few times per hour). This is because CDNs are a shared environment, where popular assets need to be delivered the fastest.
Make sure that the throughput of the CDN test is higher than the origin no matter what the file size is!
Many CDNs use commercial geo-mapping databases to map their customers to the correct locations, but sometimes customers are assigned incorrectly due to the wrong IP address. It’s important to run traceroutes from where you are monitoring to make sure you are not mapped to the wrong place. For example, if you run a traceroute and discover that your CDN is sending requests to the United Kingdom from your home connection in Los Angeles, something is not right.
6. Cache Hit or Miss Ratio
Most CDNs will give you access to a control panel, so make sure you monitor your Cache Hit / Miss ratio. Take notice of how often your CDN has to come back to the origin. A good CDN architecture should not come to the origin very often.
7. Other Metrics
Below are a few other good-to-know metrics to use when comparing CDN providers.
- Time to purge a file from the edge
- Time to load a file to the edge
- Time to active Cname
Key Questions to Answer
After gathering information on the key metrics mentioned earlier in this article, the next step is to have your IT Ops team answer a few simple questions:
- Can the CDN improve performance in key markets?
- How much can it improve performance?
- How well does the CDN provider handle public name resolvers?
- Are the metrics from the CDN (such as DNS, Connect, Wait and Response) consistent?
- Will choosing this CDN Provider translate into revenue increase?
Now you know how to evaluate CDN providers when looking to offload your static asset management and improve content delivery to your end users. But once you have selected a CDN and are up and running on their platform, the work is not over.
You should plan to communicate regularly with your CDN provider and monitor their performance metrics against the origin at all times. Doing so will create a symbiotic relationship between you and your provider, and benefit all parties (including your end users) in the long run.