What Is A CDN? Content Delivery Networks Explained – CDNetworks

Why Use a CDN?

CDNs help businesses deliver content to end users effectively by minimizing latency, improving website performance and reducing bandwidth costs.

Another unique feature of CDNs is that it allows the edge servers to prefetch content in advance. This ensures that the data you are going to deliver is stored in all CDN data centers. In CDN parlance, these data centers are called Points of Presence (or “POPs”). PoPs help minimize the round-trip time by bringing the web content closer to the website visitor.

For example, assume that you run an ad campaign and advertise your service or product among millions of potential customers. You may expect a large number of customers to rush to your site after reading the post. If you deal with influencers who have good audience engagement rates, the volume of traffic can see an even bigger spike. Can you be sure that your origin server will be able to handle this spike in volume all at once?

In such a scenario, CDNs can help distribute the load between the edge servers, and everyone will get the response. Because only a small fraction of requests will reach the origin, your servers will not experience massive traffic spikes, 502 errors, and overloaded upstream network channels.

Benefits of CDNs

Depending on the size and needs of your business, the benefits of CDNs can be broken down into 4 different components:

Improving website page load times
By enabling web content distribution closer to website visitors by using a nearby CDN server (among other optimizations), visitors experience faster webpage loading times. Visitors are usually more inclined to click or bounce away from a website with a high page load time. This can also negatively affect the webpage’s ranking on search engines. So having a CDN can reduce bounce rates and increase the amount of time that people spend on the site. In other words, a website that loads quickly will keep more visitors around longer.

Reducing bandwidth costs
Every time an origin server responds to a request, bandwidth is consumed. The costs of bandwidth consumption is a major expense for businesses. Through caching and other optimizations, CDNs are able to reduce the amount of data an origin server must provide, thus reducing hosting costs for website owners.

Increasing content availability and redundancy
Large amounts of web traffic or hardware failures can interrupt normal website function and lead to downtime. Thanks to their distributed nature, a CDN can handle more web traffic and withstand hardware failure better than many origin servers. Moreover, if one or more of the CDN servers go offline for some reason, other operational servers can pick up the web traffic and keep the service uninterrupted.

Improving website security
The same process by which CDNs handle traffic spikes makes it ideal for mitigating DDoS attacks. These are attacks where malicious actors overwhelm your application or origin servers by sending a massive amount of requests. When the server goes down due to the volume, the downtime can affect the website’s availability for customers. A CDN essentially acts as a DDoS protection and mitigation platform with the GSLB and edge servers distributing the load equally across the entire capacity of the network. CDNs can also provide certificate management and automatic certificate generation and renewal.

How Else Can A CDN Be Helpful?

The CDN is not limited to the benefits explained above. A modern CDN platform delivers many more advantages to your business and engineering teams.

It can be used to manage access from different regions on the planet. While you allow access for some regions, you can deny access to others.

You can easily offload application logic to the edge and close to your customers. You can process and transform the request/response headers and body, route requests between different origins based on request attributes, or delegate authentication tasks to the edge.

Large amounts of traffic require an infrastructure for log collection and processing for further analysis. CDNs collect the logs and provide an interface to conveniently analyze the data generated by the visitors.

It is only natural that something becomes easy to use when you are already familiar with it. For that reason, CDN Pro edges are NGINX based. This means you can perform tasks using standard NGINX directives.

Our engineering team spent thousands of hours extending NGINX.

Data Security & CDNs

Information security is an integral part of a CDN. CDNs help protect a website’s data in the following ways.

By providing TLS/SSL certificates

CDN can help protect a site by providing Transport Layer Security (TLS)/Secure Sockets Layer (SSL) certificates that ensure a high standard of authentication, encryption, and integrity. These are certificates that ensure that certain protocols are followed in the transfer of data between a user and a website.

When data is transferred across the internet, it becomes vulnerable to interception by malicious actors. This is addressed by encrypting the data using a protocol such that only the intended recipient can decode and read the information. TSL and SSL are such protocols that encrypt the data sent over the Internet. It is a more advanced version of Secure Sockets Layer (SSL). You can tell if a website uses the TLS/SSL certification if it starts with https:// rather than http:// , suggesting that it is secure enough for communication between a browser and a server.

Mitigating DDoS attacks

Since the CDN is deployed at the edge of the network, it acts as a virtual high-security fence against attacks on your website and web application. The scattered infrastructure and the on-edge position also makes a CDN ideal for blocking DDoS floods. Since these floods need to be mitigated outside of your core network infrastructure, the CDN will process them on different PoPs according to their origin, preventing server saturation.

Blocking bots and crawlers

CDNs are also capable of blocking threats and limiting abusive bots and crawlers from using up your bandwidth and server resources. This helps limit other spam and hack attacks and keeps your bandwidth costs down.

Static & Dynamic Acceleration

Static content refers to those assets of yours that do not need to be generated, processed, or modified before they are delivered to end-users. These might be images or other media files, binaries of all sorts, or static parts of your application such as HTML, CSS, JavaScript libraries, or even JSON, HTML, or any kind of dynamic responses that do not change often. You can prefetch such content in advance, as mentioned earlier. Then, when you need to invalidate such content and remove it from edge servers, you can purge the desired paths.

Dynamic acceleration applies to something that cannot be cached on the edge due to its dynamic nature. Imagine a WebSocket application that listens for events from a server or API endpoint whose response differs, depending on credentials, geographic location, or other parameters. It is hard to leverage the cache machinery on the edge in a way that is similar to caching static content. In some cases, tighter integration between the app and the CDN may help; however, in some cases, something other than caching should be used. For dynamic acceleration, CDN’s optimized network infrastructure and advanced request/response routing algorithms are used.

Billing model or “What do I pay for?”

Conventionally in a CDN, you pay for the traffic consumed by your end-users and the amount of requests. Additionally, HTTPS requests require more computing resources than HTTP requests, which creates more load on the CDN provider equipment. For this reason, you may pay additional costs for HTTPS requests, while HTTP requests are not billed at an additional cost.

As the computation moves to the edge, the CPU becomes an object of billing. Requests might have various processing pipelines and, as result, will require different amounts of CPU time. It is impractical to bill by the requests count; it is more practical to bill by traffic amount + cpu time used.

CDN Components Explained

Various elements make up a CDN, enabling it to perform as it does.

Here is a brief explanation of the role of three major components:

Points of Presence (PoPs) – PoPs are data centers strategically placed to make communication between users faster. Bridging the gap between the website’s content and visitor makes for a much faster and less disruptive user experience.

Caching servers – These are the components responsible for storing and delivering cached files. Their primary function is to speed up website load times while at the same time reducing bandwidth consumption.

Storage(SSD/HDD + RAM) – All retrieved data is located on SSD (solid-state drives), HDD (hard-disk drives), or in RAM (Random-access memory). Those files that are utilized most commonly are usually held on the swiftest medium – RAM.

The Different Types of CDNs

Not all CDNs operate in the same way, and some are better placed to serve certain types of content than others. Here are the 3 types of CDN to choose from:

Peer-to-peer CDN

​​If you have previously used a torrent, you likely already know how peer-to-peer CDN works.

This CDN works using Peer to Peer protocol. In Peer to Peer CDN, contents are not cached on an edge server. Instead, every user in the network who accesses the content also shares the content.

So, for example, when a user downloads a movie from a torrent, he is also sharing parts of the movie with other users in the background. This is very cost-effective as it does not need any expensive hardware.

Push CDN

With Push CDN, you as the website owner or developer are solely responsible for it.

Instead of waiting for the PoP server to pull the web page data when a request is made, you are already pushing the content you want on the PoP servers even before any request is made. This information and its associated elements will then be stored in the cache until it is removed or purged.

Using Push CDN, you have complete control. What you push on the PoP server is what will appear on the web visitor’s device when they make a web request.

Original Pull CDN

Origin Pull CDN, as the name suggests, involves a PoP server pulling the web page data and other elements from the origin server.

The CDN will determine which information to serve to the web user when a request is received.

For example, when the client sends a request that requires static assets to be fetched from the CDN, if the CDN doesn’t have it, then it will fetch the newly updated assets from the origin server and populate its cache with this new asset, and then send this new cached asset to the user.

Contrary to the Push CDN, this requires less maintenance because cache updates on CDN nodes are performed based on requests from the client to the origin server.

Who Uses CDN?

CDN is used by businesses of various sizes to optimize their network presence, availability, and provide a superior user experience for customers. A CDN is particularly popular in the following industries:

Why Choose CDNetworks? 

CDNetworks is a global leading Content Delivery Network (CDN) with fully integrated Cloud and Edge Computing solutions.

With over 2,800 PoPs and terabit-level bandwidth capacity, our solution CDN Pro peers with ISP providers worldwide, from all major networks, to deliver your content with low latency and optimal performance.