A multi-CDN strategy can help you reduce latency, improve performance and save costs if you can route traffic in real time using the CDN provider that provides the best cost/performance ratio for your business.
A Content Delivery Network (CDN) is a group of geographically-distributed servers which help you deliver your content faster to users. However, CDNs can perform differently at different times or in different locations. They can experience outages and slowdowns. With a multi-CDN strategy your content is hosted with more than one CDN provider, enabling you to drive better application performance and in many cases, lower costs.
The performance of a single CDN often varies by geography, performing well in some regions and not so well in others. This is a function of regional coverage and connectivity of the CDN points of presence (PoPs). Even the best-performing CDNs regularly experience spikes in latency that can last for hours. Global online organizations need their applications to perform well in all regions and at all times. A multi-CDN strategy, including adding regional CDNs where global CDNs' performance is consistently slower, can deliver better performance than one CDN for all.
Some CDNs provide specialized features, such as live video streaming, static content optimization, or security. By using several CDNs, each with different specialized features, you can use individual CDNs for the type of content or usage scenario they’re best at.
Different CDN providers may have variable pricing for different regions of the world, for peak vs. off-peak hours, volume pricing, etc. By using several CDN providers and diverting traffic to the CDN that provides the lowest cost at a given time or for a given user, you can substantially reduce cost.
Each CDN operates its PoPs differently and may have access to different upstream data centers. At any given time, PoPs in the same geographical location, but operated by different CDN providers, will have different latency. You can benefit by pitting these PoPs against each other and diverting traffic to the PoP that currently provides the best latency.
CDN providers, while they operate large commercial networks, do not have unlimited capacity. Large peaks in traffic may overwhelm your CDN provider. Also, CDNs can experience regional or even global outages. With Multi CDN, in case of a problem you can immediately divert traffic to another CDN which is up and running.
If a CDN is compromised, or taken down by a DDoS attack, it can take out thousands of websites relying on that CDN to deliver content. Having multiple CDN providers reduces this risk, because it’s highly unlikely attackers will take out two or more CDN providers at the same time.
One way to set up multi-CDN is to contract with a third-party provider that bundles several CDNs. These providers function as CDN brokers. Instead of sending your traffic to one specific CDN, you send it to the multi CDN provider, and their platform routes traffic among the CDNs it manages on your behalf. Multi-CDN providers route traffic based on criteria which may differ between providers, but typically include user geography, performance and cost.
A user requests a domain name such as www.example.com, a DNS lookup is performed.
A CNAME DNS record is returned to the resolver, redirecting to a subdomain on the multi CDN provider’s domain, such as example.multicdn.com
A the resolver makes a second DNS lookup to find the multi-CDN provider’s subdomain.
The multi-CDN returns to the resolver the CNAME of the CDN it selected for this particular query.
The resolver issues a third DNS lookup to find the IP of the specific CDN provider.
User connects to the CDN and data transfer starts.
This is a fairly complex process which involves three DNS lookups, slows down the user’s initial connection to the CDN, and also positions the multi CDN as a single point of failure.
Handles dynamic routing of users to CDNs
Some providers offer sophisticated control and customization of how users can be routed
Some providers provide tools for putting your content on multiple CDNs
Multiple DNS lookups
Potential single point of failure
Management complexity of adding one more vendor to your stack
You can setup multi-CDN yourself, by signing up for several CDNs, and use NS1 Managed DNS to intelligently route traffic traffic between them.
A user requests www.example.com and a DNS lookup is performed.
The DNS record contains CNAMES for several CDNs. DNS traffic routing rules determine which CNAME is returned in response to the query.
The resolver issues a DNS query to resolve the CNAME of the chosen CDN.
The user connects to the CDN and data transfer starts.
Easy to implement
Leverages the DNS - no added vendors or infrastructure needed
DNS traffic routing rules do not automatically adjust for changing conditions
NS1's next-generation managed DNS service with Pulsar RUM Steering makes real time, infrastructure aware traffic management decisions that significantly boost performance of multi-CDN infrastructure.
The DNS set-up and look-up process are the same as in the basic DNS routing scenario, so implementation is straightforward. The difference is in how the NS1 platform leverages real time information gathered from the internet and from the CDNs to deliver a better end user experience.
Pulsar is the real time traffic management engine in the NS1 platform that takes multi-CDN performance to the next level. Pulsar is a real user metric (RUM) based system that aggregates network performance data from millions of users in order to constantly track which CDNs are performing best in which regions at any point in time. Pulsar is aware of which CDNs are experiencing timeouts and slowdowns - and where users are affected, and can route users to a better performing one. Pulsar is part of NS1's Managed DNS Filter Chain, so it is easy to combine Pulsar criteria with geographic, weighting and sticky rules for multi-CDN traffic steering.
Pulsar criteria include network latency and CDN availability. The data is highly granular, so Pulsar is aware of issues that may be confined to only a small geographic area, subnet or ASN. This attribute of Pulsar makes it especially useful and effective because it can correct for performance issues affecting only one particular area or ASN without changing CDN routing decisions for users elsewhere.
A user requests www.example.com. A DNS lookup takes place.
The DNS records for example.com are managed by NS1. It accepts the user requests and decides which CDN the user should be routed to based on:
Geography assigns users to CDNs based on region
Network latency latency from the requesting users location and ASN to the different CDNS.
CDN availability - success rate responding to requests coming from the users's location and ASN.
Cost and Business Logic you can feed real time cost and usage metrics into NS1, to balance performance against cost, avoid CDN overages and meet contract commitments
NS1 DNS chooses the optimal CDN CNAME and returns it to the resolver. The resolver resolves the CNAME and directs the user to the correct CDN.
State of the art traffic routing ensuring optimal cost/performance ratio
More granular control over traffic routing
Easy to implement traffic routing logic - no programming or scripting needed
No third party add-on - it is integrated with the DNS
Compatible with NS1 DNS redundancy
Any multi-CDN strategy involves the complexity of coordinating hosted content with more than one CDN.
DNS entries for different hostnames are manually pointed to a specific CDN. For example, you can point video.example.com to a specialist video streaming CDN, and image.example.com to a static media CDN. If one of these CDNs goes down, you manually change the DNS records to point to an alternative CDN.
You can define load balancing rules to allocate traffic between CDNs based on your business requirements. In combination with sticky routing rules, you can also improve cache hit ratios while dividing traffic across CDNs.
Enterprises often find it beneficial to host content with regionally based CDN providers. There are often cost and performance benefits, and benefits of having in-region CDN diversity. NS1 makes it easy to implement a traffic management strategy that supports this. Our geofencing capability ensures regional providers only receive traffic from users located in the region. This can be used in combination with weighted load balancing between more than one in-region CDN with sticky routing to improve cache hit ratios. These techniques make it easy to use regional CDN providers in combination with global providers to deliver excellent user experience, everywhere.
NS1 is the best choice for organizations implementing multi-CDN. Its combination of simplicity and ease of use with flexible and powerful DNS traffic management enable our customers to achieve significant performance gains and cost reductions.
NS1 maintains 28 high capacity POPs with direct access to Tier 1 Internet Service Providers, using Anycast to direct users to the DNS server that provides the fastest response.
NS1’s Pulsar technology uses Real User Monitoring to measure actual performance experienced in real time for each CDN. Based on this data, it can dynamically route each user to the CDN likely to provide them with the best experience.
NS1 uses state of the art geo-IP location targeting to identify where end users are located, and can route users to CDN or self-hosted resources based on geographical rules.
NS1 lets you control how users are routed to different CDNs within a familiar DNS administration interface. No need to learn a new system or write code to control routing parameters. NS1 provides an intuitive set of drag-and-drop filters you can easily use to implement the multi-CDN traffic management logic that is best for your business.
NS1 connects to each CDN via an open API, to see if resources are available, their current bandwidth and network latency. It uses this data to route users to the CDN that provides the best experience, based on real end-user measurements from their location.