An introduction to content delivery networks and how they improve customer satisfaction by optimizing website and mobile app performance.
What is a content delivery network (CDN)?
A content delivery network (CDN) is a network of geographically dispersed servers that enables faster web performance by locating copies of web content closer to end users or facilitating delivery of dynamic content (e.g., live video feeds).
Each CDN server is located on what is called the network edge—closer to end users than the host server, which is where the web site originates. For this reason, CDN servers are often called edge servers. Each CDN server stores or caches copies of a subset of the web content—HTML files, images, audio, video, applications—from the host server. By reducing the distance between this content and end users, the CDN helps the website publisher provide faster performance for its users and control its own bandwidth consumption and costs.
Organizations typically purchase CDN services from CDN providers, which maintain their own server networks.
In the video "What is a Content Delivery Network (CDN)," Chief Architect Ryan Sumner goes through a scenario where a CDN helps make the website load time faster for globally distributed users:
Benefits of a CDN
CDNs provide the following benefits:
- Better results for web publishers: A CDN provides site users with faster content load times. For web publishers, that equates to more page views, improved customer engagement, and less site abandonment.
- Reduced bandwidth consumption: Web hosts charge organizations for data transferred from the origin server. By storing copies of content closer to the end users, a CDN enables fewer data transfers from the origin server, reducing an organization’s bandwidth consumption and costs.
- Reduced latency: Latency refers to the delay between the time data is requested from a system and when the system actually starts sending it in response. A greater distance between an end user requesting web content and the server delivering can result in greater latency. Because CDN servers store web content caches closer to your users, they can reduce latency and improve performance.
- Better response to spikes or surges in traffic: A successful marketing campaign, a limited-time offer, a video gone viral—these types of events can create a sudden (anticipated or unanticipated) increase in content demand. CDNs use load balancing to distribute this demand across servers to prevent overloading any single serve. Load balancing also helps keep the spike or surge in demand from impacting website performance.
- Outsourced infrastructure support: By relying on a CDN, an organization does not have to spend time, human capital, or expenses building out and maintaining its own geographically distributed server network.
- Enhanced security: CDNs employ analytics and automation tools that can uncover distributed denial of service (DDoS) attacks, man-in-the-middle attacks, and other common attacks on web sites.
- Greater user satisfaction: Slow load times, media playback, and application responsiveness are among the chief reasons that users abandon and/or avoid web sites. Working with a CDN can prevent or reduce some of these performance issues, making it more likely content consumers will be satisfied with their site interactions.
- Improved content delivery: Not only do CDNs deliver content faster, but they also improve the quality of the delivered content. Video replay, video calls, and live streaming can be hindered by slow transmission, which may result in jitter. Buffering, poor image and sound quality, and incomplete transmissions also affect the delivery of video and audio content. CDNs help by shortening the distance between the content and the user and by load balancing traffic to prevent overwhelming routers or servers.
- Speedier e-commerce: E-commerce consumers have high expectations for online shopping experiences—they expect fast product image load times, quick payment method approvals, and easy transactions on any mobile or desktop device. CDNs help B2C and B2B retailers deliver e-commerce content and apps quickly during peak traffic periods.
How it works
As previously noted, a CDN helps a web publisher deliver faster, higher-quality performance for end users by delivering content from servers that are closer to users than the website’s origin server.
For example, suppose your website is based in the U.K. If someone from the U.S. accesses your site, the CDN serves that user from an edge server in the U.S., closer to the user, instead of from your U.K.-based origin server for the website. The result is faster content loading, faster web application performance, and improved user satisfaction.
More than half of all web traffic is served over CDNs, and that percentage continues to grow as businesses expand their global reach and offer more varied content types. These networks move content closer to end users so that the content may be delivered faster and with less latency. CDNs also distribute traffic loads so that no single server is overloaded with traffic requests. Gaming companies, cloud application creators, live-streaming and on-demand media, e-commerce sites with a global reach—as digital consumption needs grow, content owners rely on these networks to better serve their end users.
For a full overview of networking, see "Networking: A Complete Guide."
A CDN primarily offers improved web content delivery, but CDN providers offer additional services that complement serving content.
CDNs offer security services that guard data centers and websites against distributed denial of service (DDoS), man-in-the-middle (MITM), and other types of attacks.
In a DDoS attack, the attackers try to overwhelm a site with more traffic than it can manage, with the objective of disrupting or degrading service. CDNs use analytics and automation to monitor for these attacks and respond by limiting request rates (the number of information requests an HTTP can make in a specified time period).
For more info on DDoS attacks, check out our video, "What is a DDoS Attack?"
In a MITM attack, the attacker tries to intercept or alter the communication between the origin server, CDN servers, and website users. MITM attacks can occur at a number of places in a network, but CDNs help mitigate MITM attacks by adopting Secure Sockets Layer (SSL) and Transport Layer Security (TLS), protocols to secure communications between the CDN and website origin server, as well as the CDN and ISP.
If you work with a CDN, you'll most likely share network resources with other CDN customers. However, some CDNs now offer private CDNs, which provide the customer with their own dedicated CDN resources. A private CDN might appeal to an organization that has strict security needs, specific geographic requirements, or simply wants its own dedicated edge servers that are highly available and won't suffer any latency issues.
CDNs may offer analytics for monitoring website traffic and gathering metrics about visitors to a site. The objective is to track user behavior. With that information, website and web application creators can optimize content for users, improve site service, and target marketing efforts to specific user personas.
Every CDN provider maintains its own pricing structure. Most charge a monthly fee based on gigabytes of data transferred from the edge servers to end users. Rates vary based on the region of destination (the region where your cached content is hosted and accessed by users). Providers also have different policies for storage; some charge storage fees while others do not.
Major CDN providers post pricing on their websites. For most providers, the per-gigabyte rate decreases as the total gigabytes of data transferred increases. Leading CDN providers also charge their customers only for the bandwidth used each month so that billing reflects actual use of the service.
Several providers even offer free levels of service. What is included in that free level of service varies widely by provider. Free and paid levels of service come with specific service level agreements (SLAs). Leading CDN providers tend to offer 99.9% of uptime to customers.
Before choosing a CDN provider, understand its pricing structure and SLAs. Since most providers charge based on actual bandwidth used, estimate usage before choosing a service to gain a general idea of what monthly costs will be. There are CDN pricing calculators online that help you compare pricing among top providers based on bandwidth estimates and bandwidth use by geographical region.
CDN for websites
Not every website publisher needs a CDN. A local school district's website, for example, may not need a CDN because most users will access the site from a nearby location.
But if you have a media-rich website, a geographically dispersed group of users, or mission-critical content that requires fast delivery, a CDN may be your best option.
The proliferation of CDN providers has been spurred by an increase in content types and devices used to access that content. Some of the top providers include the following:
When choosing a CDN provider, consider the size and distribution of its network, how well its server locations (called points of presence, or PoPs) map to the locations of your site users, customer support availability, pricing, and service level agreements (SLAs). Also, consider if the provider offers any additional services that would be helpful to your organization, such as added security and analytics services.
CDN hosting describes the networked servers of a CDN provider that host selected web content from a website. While website hosting typically refers to only one server, CDN hosting includes many servers networked together. CDN hosting augments website hosting by caching content in network servers that are geographically closer to website users. This differs from a web server, which hosts your full site on the origin server. CDN hosting can, therefore, deliver content to users faster than the website's origin server.
Open source CDN
For website operators with robust content storage needs, CDN providers offer storage clusters that integrate with their network of edge servers. Website operators may want this storage capability if they serve large static files, such as videos or installation files. By storing these files closer to the end user, CDN storage delivers better service and faster downloads. These storage options also relieve the traffic burden on the origin server by decreasing load requests and routing those requests to CDN edge servers instead.
Learn more about how you can leverage Cloud Object Storage across all IBM CDN offerings.
If you're ready to learn more about using CDNs, try one of these tutorials:
In the tutorial "Accelerate delivery of static files using a CDN," you'll practice how to upload files to a Cloud Object Storage bucket and then make content globally available with a CDN.
Similarly, you can easily manage your data stored in IBM Cloud Object Storage via CIS's Resolve Override with COS capability.
“How to: Use a CDN with an Express web application" demonstrates the benefits of a CDN and teaches you how to use an Express JS application as a caching mechanism
Lastly, the "How IBM Cloud Internet Services optimizes performance" tutorial illustrates how to optimize the performance of your web services and applications.
CDNs and IBM Cloud
IBM offers CDNs in two flavors: IBM Content Delivery Network (CDN) and IBM Cloud Internet Services (CIS).
The IBM CDN, delivered over the Akamai network, allows your users to experience faster load times for web content and applications. It automatically scales your service as needed and uses pay-as-you-go pricing. Beyond meeting content demand, the IBM CDN also protects your website and web applications from attacks by adding an additional protective layer between your users and your infrastructure.
IBM Cloud Internet Services, delivered through Cloudflare, includes a set of edge network services to help you improve the performance of your web services and applications by leveraging three major features: Global Load Balancing and Content Optimization through Page Rules and Caching (CDN), which ensures every page renders as quickly and efficiently as possible. By protecting your origin servers from spammers, bots, and malicious crawlers, you can protect your origin’s resources for your application's performance, which improves your customer experience.
Sign up for an IBMid and create your IBM Cloud account.