As the story goes, World Wide Web inventor Tim Berners-Lee in early 1995 posed a challenge to his fellow academia at the Massachusetts Institute of Technology (MIT). Foreseeing the congestion that is all too familiar to millions of Internet users, Berners-Lee challenged his colleagues at MIT to invent a fundamentally new and better way to deliver Internet content.
Who knows if the Brainiacs at MIT were moved to heed the call for the good of “surfing” man, but entrepreneurial engineers and developers, motivated by the pragmatic promise of greenbacks, certainly found a way to ease the content delivery chokehold on the Internet. The solution is a recently developed concept known by such monikers as content delivery networking or intelligent content delivery enabled by Web caching. It’s created an effective way of enriching content delivery and decreasing download times by using caching solutions to push content to the edge of the network.
For the purposes of this discussion, we’ll call the concept Content Delivery Networking or CDN. The method works something like this: Through a network of localized caching imbedded throughout Internet devices, Internet response times can be drastically reduced through a scheme that brings information users most frequently access to physical locations close to them. Taking this notion a step further, not only content, but also actual processing power and intelligence might be distributed throughout both WANs and LANs through the same methodology.
The promise here is that CDN will enable a truly distributed style of computing and making networks the intelligent “utilities” users have long wished for. CDN creates dynamism by virtually eliminating long delays typical of Internet computing and enabling a richer content and processing experience.
It’s this model of “utility” that’s really exciting. In a perfect world, the way in which people want to network or compute in a distributed fashion is to simply “plug in and go.” CDN at least in theory is a significant step towards this model.
A concept known as Web caching enables CDNs. Web caching is the temporary storage of Web objects, such as HTML documents, which can be accessed for later retrieval. Localized caching reduces bandwidth consumption, since fewer requests and responses need to go over the network. It also reduces server load, since there are fewer requests for a server to handle. Finally, local caching reduces latency, since responses for cached requests are available immediately and are located closer to the client being served.
Caching can be performed by a client application built in to most Web browsers, such as Microsoft Explorer and Netscape Navigator. In addition, there are also a number of products that extend or replace the built-in caches with systems that contain larger storage, more features or better performance. In any case, these systems cache network delivered objects from many servers but all for a single user.
Caching can also be utilized in the middle, between the client and the server as part of a proxy. Proxy caches are often located near network gateways and are designed to reduce the bandwidth required over expensive dedicated Internet connections. Such systems may serve many users or clients with cached objects from many servers. In fact, much of the useful function in this method is in caching objects, which may be requested by one client for later retrieval by another client.
For even greater performance, many proxy caches are part of cache hierarchies, in which a cache may poll neighbouring caches for requested content in order to reduce the need to directly retrieve objects.
A cache might be located in a storage area directly in front of a particular server in order to reduce the number of requests the server may need to handle. Most proxy caches can be used in this fashion.
The concept of CDNs enabled by Web caching provides two enormous benefits:
Latency reduction: Since a request is satisfied from a cache located closer to an end user, rather than from the origin server, it takes less time for a client to get an object and display it. This process makes Web sites seem much more responsive.
Traffic reduction: Since each object is only retrieved from a server once, the amount of bandwidth used by a client is dramatically reduced. This saves money if a client pays by traffic, and keeps bandwidth requirements lower and more manageable.
CDN and the advent of Web caching addresses the most fundamental shortcoming of Internet-based computing – that it is slow and static. Moving content closer to users makes the entire Internet experience richer and much more dynamic, and provides a compelling enabler to new applications such as e-commerce, e-business and other electronically delivered services.
Schemes that address the inherent performance shortcomings of Internet-based computing are absolutely critical to the successful propagation of e-based services and the utilization of the Internet as something more than its current role as a static and generally slow computing environment.
CDN and the application of Web caching are important steps to this realization, and combined with multiservice communications plus higher speed networking infrastructure technology such as fibre optics, it represents the building blocks for next-generation networking.