A content delivery network or content distribution network (CDN) is a group of geographically distributed web servers meant to provide more efficient delivery of content to a large number of users. CDNs benefit users and content providers by shifting the burden of large downloads from a single server to multiple severs in different locations. In many cases, end users don’t notice that they are using a CDN. Several companies now specialize in offering CDN services, and many large organizations use them to distribute software, video, and other types of content.
The use of a content delivery network can mitigate some of the problems that have developed with modern use of the Hypertext Transfer Protocol (HTTP) which forms the foundation of the World Wide Web. HTTP was designed for scenarios in which a web browser downloads content from a single web server. This presents a problem for large web sites or sites which suddenly experience a spike in network traffic. A single HTTP server can handle a limited number of simultaneous users, after which the server becomes very slow or completely unreachable. HTTP servers are also vulnerable to Distributed Denial-of-Service (DDoS) Attacks, which send large numbers of irrelevant requests to a web server, making it impossible for actual users to access the site.
Instead of relying on a single HTTP server, a content delivery network uses multiple servers in various locations, each with their own copies of a site's content. If any single server becomes too busy, the others pitch in to handle additional traffic. CDNs make it much more difficult for a DDoS attack to bring down a web site. In addition, placing servers in a variety of locations can increase the speed available to end users because the nearest server can be selected. Servers closer to users tend to be faster because data has to travel through fewer points on the Internet to reach its destination.
Most Internet users won’t even notice if a content delivery network is being used. Requests are sent to an HTTP sever normally, and the CDN will direct the user’s web browser to another server based on a number of factors. Some CDNs use the Domain Name System (DNS) to redirect traffic, while others may direct traffic based on file type or by dynamically replacing Uniform Resource Locators (URLs) in a web page.
Many large corporations will turn to a content delivery network to distribute software or other types of large files. They may choose to build their own CDN or contract with a company that owns a large network and specializes in CDN services. CDNs are especially well suited to delivering streaming media because the closer proximity of the servers to end users results in fewer interruptions in data flow, which means smoother playback. Many large network providers are building their own content delivery networks or encouraging third parties to place CDN servers inside their data centers. These providers hope to earn additional revenue from the increasing popularity of Internet television and other forms of digital distribution.