So you want to make your multimedia snappy? Meet CDNs!
Providers deliver digital content across globally distributed nodes via Content Delivery Networks (CDN), which frees up networks and improved the user experience.
CDN stands for Content Delivery Network or Content Distribution Network and describes an approach to deliver web content with high performance. A tree structure takes on tasks of the classic web server. The root of this infrastructure is a source server (CDN Origin Server) that passes copies of its contents to nodes. These globally distributed nodes, in turn, serve the clients of the end users.
For this to work, users must of course be connected to the appropriate node. As a rule, a DNS-based request routing is used for this purpose. When clicking on a corresponding URL, the DNS server of the CDN then provides the IP address of a node that can serve the client the best.
CDNs are operated by specialized service providers who are paid by the content provider. Despite CDN support, content providers typically continue to run classic web servers of their own. Hosting companies like Inmotion hosting provide users as a first point of contact with relatively compact HTML pages – but their links point to URLs of the CDN, if larger downloads or media files are to be distributed. Providers thus retain full control over their offer. The Inmotion hosting reviews we have read are great, that’s why I mentioned them.
Benefits of CDNs
On the one hand, CDNs increase performance because the distributed nodes can be closer to the client. “Closer” in this sense refers to the network distance and includes not only the length of the network path but also its capacity.
Clients benefit from lower packet transit times (RTT) and higher throughputs. Balanced CDNs also relieve the network infrastructure as a whole, because data cached by nodes need not be sent from the web server at one end of the world to the client at the other for each client request.
On the other hand, a CDN can also help to distribute the load of requesting clients to different servers (in this case, nodes). Realized by service providers, CDNs provide enough resources to handle unexpected peak loads. Moreover, due to their topology, CDNs can be easily scaled, which means that if necessary, they can easily be expanded to include additional nodes.
Depending on the application, it may be useful for (large) content providers to use several different CDNs at the same time – for example, if individual CDNs do not cover all geographical target regions equally well. In addition, a multi-CDN strategy can increase available capacity and performance. If you use several CDNs, it also makes it easier to compensate for possible failures of a CDN provider. Typical users of Multi-CDN are vendors of video streaming services or social networks with a large and global user base.
On the one hand, multi-CDNs can be provided via aggregators that combine individual CDNs and provide them via a single console. For customers, this approach is particularly convenient, but at the same time limits the possibilities for control and adaptation. On the other hand, customers can also book the stand-alone services of several CDN providers and take care of the load balancing themselves. However, more control is also associated with additional overhead for management and configuration.
Although also synonymous with multi-CDNs, Federated CDNs vary in detail. In a Federated CDN, different service providers combine their infrastructures into a common resource pool. This will allow smaller providers to offer high-performance CDN services.
Difference with server farms, proxies and P2P
CDNs should not be confused with server farms or proxy servers. While server farms act more or less as a logical web server in one location, CDNs not only optimize server-side performance, but also the actual network traffic through their globally distributed nodes. In principle, the model of proxy servers completely turns CDNs upside down: proxies store content for repeated retrieval that has already been requested by users. In a CDN, a provider proactively distributes its content to the nodes. In the meantime, CDNs differ from a decentralized peer-to-peer approach in their hierarchical, centrally controlled character.