What you need to know to evaluate, select and deploy a multi-CDN solution
Let’s dive right in. In this article, online content and data distributors will get a thorough overview of the concept of using multiple CDNs (content delivery networks) as opposed to a single CDN. We’ll start by defining multi-CDN, give a brief state of the market and explain why using a multi-CDN is becoming best practice. We’ll then break down the common issues being addressed, the types of providers, top CDN architectures and technical considerations. We wrap up with how to transition and our tips for selecting the right provider.
Content delivery networks (CDN) play the valuable role of making online content available to users across a distribution area. From regional to global in footprint, top CDN companies localize the content to users by caching it on servers in their various points of presence (PoPs). An effective CDN ensures that content is available, throughput is sufficient to deliver it and latency is low enough that it won’t be delayed in getting to users. When a CDN doesn’t perform as expected, quality-of-service (QoS) drops and quality-of-experience (QoE) for users is negatively impacted.
A multi-CDN is a configuration of two or more CDNs in such a way that each provider serves a portion of the request volume. In most cases, a load-balancing scheme is defined and determines how the traffic will be distributed between the CDNs.
State of the market: Multi-CDN as best practice
The global trend continues with more and more content being delivered online. The use of multiple CDNs is not new, but early adopter had to pave the way. Load-balancing logic was more rudimentary, systems were less integrated and managing multiple providers came with challenges.
More recently, the ecosystem has evolved in favor of content and data distributors. The availability and performance of almost all CDNs, cloud providers and ISPs are being tracked in near-real time. This has enabled intelligent load-balancing logic. The rise of APIs (application program interfaces) by CDNs has made integrating multiple providers and provisioning services much simpler and faster. Top multi-CDN providers now offer tools to normalize CDN logs, establish analytics, and monitor and troubleshoot multi-CDN deployments.
Holistically, a win-win is created through the use of multi-CDNs. Content distributors get improved CDN performance, end users get reliable access to content, CDNs are directed the traffic they are most fit to handle, and the internet at large sees a healthier distribution of traffic.
Transitioning from single CDN to multi-CDN
For those who are not aware or have not evaluated multi-CDN, there is an opportunity for improvement on a number of fronts.
First, single CDNs are not created equal, especially in all regions and across all ISPs. Traditionally, content distributors have looked for the single best CDN provider who can cover their user base. With the rise of video streaming, many are interested in the best video CDN. Now with multi-CDN deployments, several CDNs can be engaged to best cover regions and ISPs.
Next, there is an opportunity to break single vendor reliance. Having all traffic on a single network increases the risk of performance issues or service downtime. When issues occur, content distributors are hard pressed to quickly engage other providers. Once embedded with a CDN, workflows are constrained to the supported functionality of that provider.
Finally, all CDNs suffer from performance issues, it’s a natural part of managing a network in public waters. Multi-CDNs provide natural insulation. In aggregate, these issues occur dozens or even hundreds of times daily across the globe. Typically we see spikes in latency or drops in throughput and availability. The issues can last for 5 – 15 minutes and the CDNs generally self-heal, but users are impacted during these performance drops. Occasionally CDNs (even tier-1 providers) suffer broader or more prolonged outages.
Employing a multi-CDN helps to route traffic through the healthiest CDNs at the time of the request and given the user’s location and ISP. We recommend looking for solutions that are intelligently load-balanced based on quality-of-experience parameters.
Multi-CDN solutions are improving
For those who have reviewed but not found the right multi-CDN solution, there are updated offerings in the market that address these common prior obstacles:
- Having been too deeply embedded with a single CDN
- Not having found an affordable enough price
- Having existing contracts with future end dates
- Concerns about the time and resources for implementation
- Belief that traffic is too low to warrant a multi-CDN
- Assumption that the CDN of their cloud computing provider should be used
Most of these issues have been resolved by multi-CDN providers. First, for those deeply embedded, many of the add-on services are now available in multi-CDN environments. Alternatively, in cases it is possible to pull content processing functions back to the origin so CDNs can play a simplified role.
For those looking for affordable solutions, there are now options for turn-key multi-CDN services that are competitively priced against single CDN rates.
For existing contracts, those can be used with load-balancing solutions as well as during turn-key multi-CDN transitions. Ask your provider for transition plan options.
Types of Multi-CDNs
We review three common types of multi-CDN solutions: load-balancing software, primary/fallback configurations, and turn-key services. Regardless of the implementation type, multi-CDNs carry some common attributes and benefits over single CDNs.
First, configuring multiple CDNs extends the fundamental premise of content delivery networks—localizing content by caching it across more available servers. It’s a natural extension to evolve into using multiple networks.
Beyond overview maps, it is important to note the nuance of what PoP locations mean and don’t mean. For instance, while often beneficial, it is not required to have a PoP in a city or country to serve content there. As an example, a request by a user in Brazil may be served from a CDN PoP in Miami. This may be appropriate since network proximity and geographical proximity are not the same. All said, multi-CDN solutions allow for the tailoring of CDN mixes for improved performance.
While as many as a dozen or more providers may be available, the number of CDNs in a mix is typically between 2-5. This is driven by factors such as the required functionality that must exists across the CDNs, the volume of traffic, the geographical distribution of users, cache hit/miss ratios and so on. Ask your multi-CDN provider for guidance on the right CDNs for your use case and distribution regions.
Types of Multi-CDNs
Load balancers are software that allow you to structure your own multi-CDN. They perform the function of routing traffic to the CDNs in your mix and help you to manage a multi-CDN. Load balancing software can be a good option for those who prefer to:
- Implement and manage their own multi-CDN
- Customize their load-balancing logic
- Allocate traffic across their own servers and CDNs
- Negotiate and manage their own CDN contracts
- Customize and troubleshoot their implementation
- Manage development internally as CDNs update – i.e. API changes
CDNs are increasingly embracing the inevitability of multi-CDNs as best practice. As such, some providers offer a primary/fallback multi-CDN service. These typically designate their network as the primary CDN with one or more others as fallback providers. Should they suffer performance issues, the traffic is routed to the secondary CDNs.
An advantage of this type of service is that you can maintain your primary provider relationship and still benefit from multi-CDN. That said, you may have less flexibility in the CDN mix and supported functionality. Additionally, there can be an inherent bias in routing traffic through the primary provider as opposed to directing it based on QoE.
The final category is turn-key multi-CDN services. These offerings are intended to be a one-stop shop and include everything needed to operate a multi-CDN: CDN contracts, management platforms, load balancers, routing decision data and more. They are a good option for those large and small who don’t have the team, time, resources or desire to build and manage their own multi-CDN.
Common attributes and benefits include that they:
- Are in the business of running a full-service multi-CDN
- Offer a large mix of providers (6-15 CDNs available)
- Consolidate all services into a single contract
- Offer flat rate pricing across CDNs and regions
- Simplify integration and make CDNs interchangeable
- Take on the management of CDN providers
- Offer add-on services for use in multi-CDN environments
- Have the expertise to advise on the best CDN mix
- Provide support and troubleshooting
For many, little to nothing must be changed to use a multi-CDN. For others, certain workflow adjustments are needed to become “CDN agnostic”. Generally, the goal is to pull content processing functions upstream (towards the origin and away from the CDN). Doing so simplifies the role that the CDNs play and makes them more interchangeable. Here are six technical considerations:
Content distributors typically store assets on either their own servers, cloud storage services (like Amazon S3), or storage services from CDNs themselves. Generally, CDNs providing storage either prefer, incent, or mandate that their CDN be used for distribution. CDN agnostic storage services are available in the market and through multi-CDN providers and help to break vendor lock in. They often assist with migrations and offer competitive prices.
For those with sensitive content who utilize security schemes including tokenized urls or full digital rights management (DRM), these are now supported in multi-CDN environments. Work with your provider to clarify how to implement and which CDNs support your requirements. As an example, the Kuno Flow turn-key multi-CDN utilizes a three-way shared secret for tokenization.
#3: Origin protection
Depending on the content type and workflow, CDNs are configured for either a “push” or “pull” of content from the origin server. Multi-CDNs often leverage a pull workflow. Given that multiple CDNs are accessing content, it is important to be aware of the request volumes to the origin. To avoid overwhelming the origin,we advise adding an origin shield to serve the content to the CDNs.
#4: Egress traffic
Part of “egress” is the traffic delivered from the content location (origin servers, storage buckets, etc) to the ingest point of the CDN. Multi-CDNs naturally consume additional egress (i.e. three CDNs instead of one). While it varies by use case, proportionate to the volume of data delivered by the CDNs, origin-to-CDN egress is typically lower. To optimize for the reduction of egress costs and load on the origin, consider using an origin shield and make sure that the cache hit ratios are healthy on each CDN in the mix.
For those who need automation with CDN services, this is possible in a multi-CDN. That said, CDNs vary in whether they have APIs or not and what calls are supported. Working with a turn-key provider can save you the hassle of evaluating CDN APIs and performing multiple integrations.
For content like live video that needs to be processed additionally prior to distribution, it is recommended that this be done prior to the CDNs. For those who currently send a single stream to their CDN where it is transcoded, some turn-key providers (like Kuno) offer the same service for multi-CDN. An alternative is to transcode on aservice like Wowza Media Systems, Amazon Elemental, Microsoft Azure Media Services, Mistserver, Red5 Pro, and the like.
For other technical considerations specific to your workflow, ask your provider how they can be managed in a multi-CDN environment. In cases, it may be beneficial to parse your traffic based on requirements and send the compatible portion to a multi-CDN.
Evaluation: Questions to ask
Once you’ve identified the category of multi-CDN you prefer and the providers you want to engage, here are some helpful topics to cover:
- Which components of a multi-CDN are part of the service and which ones are you expected to provide and manage yourself?
- If CDN providers are included, which ones are available and how will your mix be determined?
- If a CDN provider chosen for the mix isn’t performing well, what options do you have for replacing them with another?
- Which CDNs does the provider recommend for your use case and distribution regions? Why?
- Which CDNs will accommodate your technical requirements?
- How is the load balancing logic set?
- What data are considered when making a CDN routing decision?
- Does the load balancing logic favor any specific provider and if so, for what reason?
- How does the solution ensure the highest QoE for end users?
- How much time or development resources will be needed for integration and ongoing management?
- Does the service offer a consolidated way to monitor and troubleshoot the multi-CDN and its components?
- What add-on services are available?
- How is the service priced? Do they charge separately for load balancing, routing decision data, http requests, DNS decisions, analytics, log aggregation, origin shield, SSL, tokenization and so on?
- Are there differences in pricing betweenCDN providers or distribution regions?
- Are there geographical restrictions or regional delivery ratios that must be maintained?
- Can they accommodate your existing CDN contracts either through transition or on an ongoing basis?
- What support levels are offered? If there are issues with CDNs, who follows up to resolve them?
Selection and driving success
The multi-CDN trend speaks for itself. When done right, an intelligent network of networks will always beat a single network. Regardless of the solution type or the provider you select, deploying a multi-CDN is a great way to fortify your service.
For additional information and resources on multi-CDN, please visit us at https://system73.com/kuno-flow-multi-cdn/.
If you have questions about this article or would like to speak with our team regarding turn-key multi-CDN services, contact us anytime!