Setting up a multi-CDN strategy for your web applications is a common and effective way to speed up service delivery while also providing failover support. But even a multi-CDN service is not immune to performance issues; intermittent performance drops can and do still happen. In these situations, your first suspect should be the DNS.
In this article, we’ll explore how multi-CDN networks work and why, even with a multi-CDN approach, it is still very important to monitor for DNS issues when analyzing your CDN performance.
What is Multi-CDN?
For illustration, let’s say that you’d like to play an international online game on your console that is globally trending. The game is originally from (and hosted in) South Korea and is being downloaded by thousands of other people at any given moment. But instead of dreading extremely long download times (or worse, disconnects and failures), you’re able to go from purchasing the game to playing it within 30 minutes. This is made possible by multi-CDNs, where your console can fetch a cached version of the game made available through a North American CDN that’s much closer.
Although accessing the cached version of the game is much better than fetching it from South Korea, the download (or streaming) experience may still be less-than-ideal, depending on where in North America you are (e.g., Virginia versus San Francisco). With a Multi-CDN approach, the content can be cached in more places, many of which are potentially closer to the end user or are experiencing less traffic.
A Single CDN vs Multi-CDN
Let’s take a quick look at how this works.
The Multi-CDN Workflow
1. The user accesses a domain.
2. The browser checks its local cache for related DNS records.
3. The browser queries the ISP’s DNS.
4. ISP’s DNs reaches out to the root server.
5. The root server redirects the request to a GTLD server.
6. The GTLD server returns the Name Server of the domain queried.
7. The DNS resolver queries one of listed name servers. This repeats until the host name is resolved.
8. The multi-CDN host decides where to route the request, based on real-time performance metrics captured internally.
9. The DNS resolver continues to resolve the host until reaching an edge server which finally serves the content.
For a Multi- CDN Workflow, you might think that this workflow involves a lot of DNS resolution actions--and you’re right. It’s important to remember that, ultimately, the DNS lies in-between your users and the CDNs caching your content--regardless of how many CDNs you use.
Let’s take a look at why the DNS is so important for a successful Multi-CDN Strategy.
The Impact of Response Failures
Performance improvements made by setting up a Multi-CDN can be lost when the DNS resolver queries for available name servers and all listed name servers fail to respond. The end user may not notice this failure, as the DNS retries to make contact, but they will certainly notice a degradation in service. In the context of our online gaming example, this could manifest as extended download times and a lag in streaming.
Without a way of seeing the failure events and their frequency, it’s difficult to measure the impact your DNS has on content delivery.
How DNS Monitoring Helps
Catchpoint’s DNS monitoring solution has the option to fail tests at the moment available name servers fail to respond, meaning that you can be alerted of the issue as it happens. This enables your team to resolve DNS issues quickly before your users notice an impact on application performance.
Want to get more familiar with DNS components? Read about them in our DNS monitoring guide.
A multi-CDN service can make your web applications faster and more reliable but is still not failsafe. End users rely on several components to successfully fetch and interact with content on the web, including the DNS. Even when a local CDN has the cached content in question, issues with the DNS can severely impact performance--ultimately leaving a poor impression on the end user. To avoid this scenario, businesses must consider DNS monitoring so that they can proactively address access and delivery issues as they arise in real-time.