Definition

What is a content delivery network?

A content delivery network (CDN), also called a content distribution network, is a group of geographically distributed and interconnected servers. To speed up the delivery of content to users, these servers provide cached internet content from a network location closest to a user.

The primary goal of a CDN is to improve web performance by reducing the time needed to send content and rich media to users. Today, CDNs serve most of the web traffic, including traffic from social media platforms like Facebook, e-commerce sites like Amazon, and streaming services like Netflix.

Why is using a CDN important?

The goal of a CDN is to speed user access to internet content by reducing latency and communication delays. CDNs do this by using a distributed network of servers that store web-based content that users frequently use on edge servers that are closest to their physical location. In this way, users can obtain content from the nearest CDN server instead of having to access the central server, which could be many miles away.

This server proximity improves speed of access and makes it more efficient for users to transfer content such as images, videos and files. Since frequently accessed content can be cached on local servers that are close to users, these shorter internet travel paths make the content less susceptible to security attacks and downtime.

The overall user experience is enhanced, especially for users who are located far from the central server. CDNs also speed up web page loading times while reducing the strain on the main server.

How does a CDN work?

The process of accessing content cached on a CDN network edge server is almost always transparent to the user. CDN management software dynamically calculates which distributed CDN server is located nearest to the user, makes a content request, and then delivers content to that server based on those calculations. CDN edge servers communicate with the content's origin server to deliver to the user cached content and new content that has not been cached.

CDN edge servers reduce the distance content travels and the number of hops a data packet makes. The result is less data packet loss, optimized bandwidth and faster performance. This minimizes timeouts, latency and jitter, and it also improves the user experience. In the event of an internet attack or outage, fresh content cached and hosted on a CDN server remains available to those users who are nearest to the edge locations until the time-to-live for data on the CDN server expires.

CDN technology is based on the following three fundamental techniques: caching, dynamic acceleration and edge logic computations.

Caching

Caching is used to store multiple copies of the same data on multiple CDN servers that are distributed across a worldwide network. In this way, content can remain on the distributed server closest to a user. This facilitates efficient content access with a minimum of communication hops.

The following is an example of a typical CDN caching process:

  1. A web server in Chicago hosts static web content that a website visitor in Washington, D.C., requests.
  2. Once the origin server in Chicago receives the request, it sends a response to the website visitor. Simultaneously, it delivers a copy of the response to the CDN point of presence (PoP) geographically closest to the website visitor.
  3. The CDN PoP stores its copy as a cached file.
  4. When the same visitor or another visitor in that location makes a similar request again, the caching server delivers the response, not the origin server.

Dynamic acceleration

Content remains on a local edge server in the CDN network, so users no longer have to request it from a distant, central server. However, content such as user dashboards or real-time data cannot be precached. CDNs accelerate the delivery of this content by optimizing the user, CDN server and the origin server.

Edge logic computations

Local CDN servers can be programmed to further simplify communication between the user-client and the server. Examples of edge logic computations include the validation and handling of user requests or ways to further optimize content to enhance server performance.

Organizations buy services from CDN providers for routing content to users from the nearest geographic location. CDN providers either host the content themselves or pay network operators and internet service providers to host CDN servers.

CDN providers also use load balancing and solid-state drives to help data reach users faster. They reduce file size using compression and special algorithms, and deploy machine learning and AI to enable faster load and transmission times.

A diagram showing how a content delivery network works with the user, CDN server and origin server.
CDN edge servers placed worldwide enable content owners to distribute content efficiently far from their origin servers.

CDNs vs. web hosts

Despite using similar technology, CDNs and web hosts have distinct purposes. The following are the main differences between the two:

  • Unlike web hosts, CDNs do not provide content across the last mile to consumers and only provide temporary content storage and caching.
  • Web hosting usually provides access to a single server that handles everything from host name resolution to delivering requests. CDNs use a network of servers that are spread out globally, resulting in reduced response times for websites because the data is served from the closest edge location.
  • A web host is responsible for hosting a website. Although a CDN does not host content, it caches it at the network edge to enhance performance. Most websites that struggle with performance issues opt for CDNs.
  • Web hosts serve all types of content but CDNs only serve and host static data. The workload on CDN servers is lessened as a result, letting them concentrate on their main task of edge delivery.
  • Issues, including restricted bandwidth, service outages and security risks, occasionally happen with traditional web hosting. CDNs address these problems by using content caching on edge servers.

What are the uses of a CDN?

The primary use of a CDN is to deliver content through a network of servers in a secure, efficient way. These networks improve the content security, performance and availability. Other CDN use cases include collecting user analytics and tracking data on network traffic. CDNs serve a range of content, including websites, mobile applications, streaming media and downloadable objects. Social media and search engine traffic also go through CDNs.

Media companies, telecommunications companies, professional sports organizations, news services, retailers and financial institutions rely on CDN services to accelerate the delivery of static and dynamic content, online gaming, mobile content, streaming video, and other specialized needs.

Static content refers to content initially requested by a user that remains constant and seldom changes, regardless of how many times it is requested. Dynamic content is new or continuously changing content that must constantly be refreshed or updated.

The following are some specific examples of how CDNs are used:

  • E-commerce organizations use CDNs to deliver content at busy times of the year when traffic spikes are likely.
  • Banks use CDNs to securely transfer sensitive customer data.
  • Mobile application providers use CDNs to reduce load times and increase response times for smart phones, improving mobile users' customer experience.
  • Self-driving car manufacturers use CDNs to remotely communicate with vehicles on the road.
  • Smart cities use CDNs to facilitate urban planning and development as well as to support the requirements of smart grids for energy distribution and management.

What are the benefits of a CDN?

CDNs provide the following advantages:

  • Efficiency. CDNs improve web page load times and reduce bounce rates. Both advantages keep users from abandoning a slow-loading site or e-commerce application.
  • Security. Besides content caching and web delivery, CDN providers offer services that complement their core functionality and capitalize on their presence at the network edge. These services include distributed-denial-of-service (DDoS) attack mitigation, web application firewalls (WAFs) and bot mitigation.
  • Availability. Since the website is distributed across multiple geographically dispersed servers, CDNs offer scalability. They can handle more traffic and avoid network failures better than origin servers. As a result, content is readily available.
  • Optimization. These networks provide a diverse mix of performance and web content optimization services that complement cached site content.
  • Resource and cost savings. CDNs reduce bandwidth consumption and costs.
  • Reduced latency. CDN architecture is designed to reduce network latency caused by hauling traffic over long distances and across several networks. Eliminating latency is important as more dynamic content, video and software as a service are delivered to an increasing number of mobile devices. A reputable CDN provider can assist with delivering high-quality content at extremely low latency rates.
  • Caching. CDN providers house cached content in either their PoPs or third-party data centers. This reduces latency, enhancing website performance and preventing server overload.
  • Improved performance. Many organizations use CDNs to cache website content to meet their performance needs. The demand for CDN services is increasing as websites offer more streaming video, e-commerce and cloud applications, where high performance is key. Few CDNs have PoPs in every country. As a result, organizations must use several CDN providers to ensure they meet the needs of their customers and users, wherever they are located.
  • Special services. Other services offered include web and application performance and acceleration services, streaming video and broadcast media optimization and digital rights management for video. Some CDN providers make their application programming interfaces available to businesses to meet their unique needs.

Considerations for selecting a CDN

Before selecting a CDN, it is important to identify the features and capabilities that are most important to the enterprise. Organizations should consider the following factors before making a purchase:

  • Performance. Organizations should ask providers how they accelerate and optimize their software to deliver best-in-time content to users and what their performance metrics are for speed and uptime.
  • Security. Since CDNs are edge servers, edge security is of paramount importance. What does the CDN provider have in place to prevent DDoS attacks? Does it employ Secure Sockets Layer encryption to safeguard privacy, authentication and integrity to internet communications? Does it use Transport Layer Security (TLS) to further guarantee privacy and data security for communications over the internet? If so, does TLS encrypt communications between websites and web browsers when users are accessing and loading content?
  • Load balancing. Does the CDN have a method of load balancing that can redistribute processing if a server failover becomes necessary, or web traffic exceeds normal levels? Load balancing enables multiple servers to automatically redistribute processing if one or more of them is over-taxed or encounters a failure. This is critical for maintaining high uptime and performance.
  • Global presence. Does the CDN provider have a global network of CDNs that can cover all the geographies where an enterprise's facilities and customers are located? A CDN in each location that can cache and deliver content to users can alleviate the cost of a data center in that region.
  • Analytics and AI. What types of metrics and analytics does the CDN offer? Popular analytics capabilities include log analysis to understand traffic patterns and performance monitoring for latency and throughput, analyses of how users interact with web-based content, and analytics that identify and probe content usability issues. AI can assess operations, performance and usage data to predict where technical issues are most likely to arise in the future, enabling sites to be proactive in fine-tuning their CDNs.
  • Pricing. CDN providers use various pricing models. Some CDNs only offer a pay-per-gigabyte use model, which can be an affordable option for small and mid-sized companies. Others offer a minimum monthly flat rate charge for service and then incremental charges on a per-gigabyte-consumed basis when the base rate is exceeded.
  • Customization. Some CDN providers offer basic CDN services, while others offer CDNs that can be customized based on enterprise needs. If the enterprise has substantial daily web traffic, CDNs can be tailored for optimal content access, and the CDN cache content can be customized to expeditiously deliver large content like videos to end users and customers.
  • Caching. Does the enterprise have the flexibility to determine how it wants to cache its content in local CDNs? Caching can be set so that every piece of content requested and accessed by users is automatically cached and maintained on the CDN server -- or IT can determine which types of content are to be cached in the CDN, and which are not.
An image showing a bulleted list of CDN must-have features.
Organizations must evaluate a variety of key features before selecting a CDN.

What are examples of CDN platforms?

There are many CDNs available, each offering a variety of features. Examples of products include the following:

  • Akamai CDN.
  • Amazon CloudFront.
  • CDN77.
  • Cloudflare.
  • Fastly Deliver.
  • Google Cloud CDN.
  • Imperva CDN.
  • KeyCDN.
  • Microsoft Azure CDN.
  • Rackspace CDN.

Some CDN providers, such as Cloudflare, market their platforms as CDNs with added services, including DDoS or WAFs. Other providers, such as Amazon Cloudfront, Google Cloud CDN and Microsoft Azure CDN, offer CDN services bundled with other cloud services, such as cloud security and managed domain name system.

History of CDNs

CDNs emerged as a way to maintain efficient website performance and are an integral part of modern internet architecture. Their history dates to the 1990s, and they have evolved through the years into the following three generations of technology.

First generation: Static CDNs

Akamai launched the first static CDN in 1998. The first-generation CDNs of the 1990s focused mostly on static content, such as software downloads and audio and video streaming.

Static CDNs offered the following features:

  • Content services that included Hypertext Markup Language and downloadable files.
  • Push caching from a central server to distributed edge servers.
  • Server performance optimization.
  • A distributed network topology.

This first generation of CDNs was cost-prohibitive for most. Large corporations were the primary customers.

Second generation: Dynamic CDNs

The rise of cloud and mobile computing in the late 1990s and early 2000s created the need for delivering more complex, dynamic multimedia and web content. Second-generation dynamic CDN technology advances addressed this. At the same time, new content delivery markets opened, and more companies offering CDN services launched.

Second-generation dynamic CDNs offered the following features:

  • Delivery of both static and dynamic content, including rich media, to end users.
  • Content pull caching from the central server.
  • Migration to a consolidated network topology.
  • Improved efficiency and accessibility of servers and resources.

Second-generation CDN offerings were also expensive. Businesses were the primary customers.

Third generation: Multipurpose CDNs

The third-generation or next-generation CDN uses multiple CDNs from various providers. Instead of just one, a vast network of POPs is used, further improving the speed of content delivery. This expands the reach of CDN networks to wider regional and global coverage while eliminating cybersecurity risks and outages.

Multipurpose CDNs offer the following features:

  • The delivery of both static and dynamic content, including rich media.
  • The use of origin server pull caching.
  • A highly consolidated network topology.
  • Improved security, performance and availability.
  • Affordability.

Because third and current generation CDNs are more affordable than their predecessors, anyone who owns a website can afford to use one.

New CDN features

Modern CDNs are evolving to include the following new features:

  • Integration with overall edge architecture. CDNs are becoming a kind of front-end cloud that application developers can use for deploying and provisioning edge-based applications. This has implications for both in-house and vendor application developers, who are starting to incorporate CDN capabilities directly into enterprise architecture.
  • CDN requests from users are becoming chattier. The requests are characterized by more frequent interactions between users and CDN servers, with fewer requests for large content quantities. This could focus CDN improvements on higher transaction speeds and less on large content management and downloads.
  • CDN edge servers are incorporating more powerful hardware. This includes running graphics processing units for AI inference engines.
  • CDN providers are deploying dynamic compression. This automatically reduces the size of responses that are transferred from the edge to a client, even if they were not compressed by the origin server. This creates faster page loads for users.
  • CDN providers are adopting Hypertext Transfer Protocol 3. HTTP/3 offers performance improvements over HTTP/2 and versions that rely on Transmission Control Protocol. It uses QUIC, a new internet transport protocol that is encrypted by default and helps accelerate traffic delivery.
  • CDN providers are incorporating AI into their offerings. AI can analyze vast amounts of data in real-time to make decisions about load balancing, caching and security.

According to a Cisco research study, the modern network must be smarter, more secure and more adaptive to protect performance and prevent costly future outages.

Continue Reading About What is a content delivery network?

Dig Deeper on Network infrastructure