Web Caching as a Viable Exchange Point Service

A proposed business-compatible model of
web caching as a service provided at a NAP

Background

NLANR has been operating a national public web caching system for about two years, as part of a research proposal sponsored by the National Science Foundation to architect and deploy prototype Internet information provisioning infrastructure. While the project has been an enormously successful `proof-of-concept' to the Internet community, especially internationally where it was received subjected to far higher and faster accelerating demand than we intended, participation in a cooperative global web caching mesh has for a variety of reasons been slower to catch on in the United States.

A significant barrier to the use of caching by ISPs in the United States is the lack of a discernable pricing and business model to support caching as a commericial Internet service, either independently, packaged with a backbone service, or packaged with exchange point connectivity service. NLANR's project has allowed the development and deployment of a strong research code platform, as well as a prototype infrastructure that has recevied international recognition for its operationally pivotal role in the Internet. However, partly because of the tremendous success and resulting expectations of this `prototype' infrastructure, NLANR has not had the budget or cycles to pursue penetration of the U.S. commercial Internet market, partially expecting it to catch on from its own momentum.

In 1997, NSF approved a follow-on award to use the by then globally-entrenched NLANR caching infrastructure for extended architectural investigation and experimentation. We maintain a project plan timeline, status reports, and cache status page including information on upgrades, major configuration changes, and outages.

More importantly, we are now in a position to move forward with architectural models of caching that are more compatible with commerically-provisioned commodity intrastructure, and in which ISPs themselves will have an incentive to participate. On 1 December 1997, we are deploying a prototype web cache service at MAE-West, specifically designed to demonstrate the viability of a commercial model for providing web caching service.

Purpose and Motivation

The model that we (NLANR/CAIDA) have employed for the past two years in the Cache Hierarchy has relied on the costs of network transit actually being underwritten by one or more institutions and networks. If Web caching is to become commercially viable, however, new models must evolve.

We are prototyping a new cache peering model at MAE-West which does not involve any network giving us 'free transit'. Rather, the cache is offered as a free service of the exchange point. Participating networks are responsible for cache misses (i.e., webpage not present in the cache), and no single network assumes responsibility for transit. In this model exchange point customers BGP peer with the cache, directly exchanging traffic with other cache peers.

The primary benefits of this service are:

  1. An ISP's services to customers (both end-users and intermediate networks buying transit service) should be enhanced, e.g., the speed with which webpages are served up will improve, particularly for image files, popular websites and frequently accessed overseas sites.
  2. Access to web server information will likewise be enhanced, e.g., the cache will improve the speed with which the public can access web servers hosted by ISPs or their customers by making webpages more readily accessible to customers of networks peering with the MAE-West cache. We anticipate implementing hit metering at the MAE-West cache within the year and will work with the peers to provide these data, if desired by the peer network.

Having a web cache at popular Internet exchange point provides ISPs an opportunity to leverage their presence at this strategic position in the Internet topology. Because the exchange point is a likely component of the paths of many web pages travelling across the Internet, storing web pages on a web cache at this point offers ISPs a potentially significant savings in bandwidth and end user latency by allowing them to retrieve pages there rather than having to go on to the original source.

We recognize that as with any new investment of effort, ISP will have to balance the benefits of this opportunity with the operational and engineering costs of the additional peering session with NLANR/CAIDA. We hope that ISPs see it in their best interest to at least explore these tradeoffs, and indeed we intend for this endeavor to facilitate such internal research. We welcome input, feedback, questions, criticism, and open discussion on the napcache@caida.org or nanog@merit.edu lists, if deemed appropriate.


How You Can Participate

We really need to emphasize that this experiment relies critically on ISP peering cooperation. Unlike our other NLANR root caches, this cache will receive no government or otherwise donated support for network service (no free transit). In order for the cache to be able to reach web servers, we need to peer with as many ISPs as possible at the exchange point.

Router Peering

In order to use the cache, your MAE-West router must fully peer with the cache's router (AS 5637, IP: 198.32.136.3). Peering ensures not only that child and sibling caches throughout your and your customers' networks will be able to use the cache, but also that the cache will be able to retrieve documents from your and your customers' web sites on behalf of other requesters.

To establish a peering session with us, please send mail to nlanr-cache@nlanr.net. You will need to provide:

  1. contact info for an individual responsible for completing and sanity-checking the initial peering session
  2. contact info for the Network Operation Center responsible for maintaining the peering session and correcting any subsequently-appearing problems (likely same as above, i.e., the NOC)
  3. AS number and IP address of the MAE-West router which you wish to use for your end of the peering session.
  4. An AS-MACRO decribing your customers.
  5. optionally, a list of the network prefixes which you intend to advertise to us, so that we can sanity-check your announcement and let you know if anything more or less appears. Again, we would like you to register this list with the RADB where it is possible, so that we can generate the configuration automatically. You will need to update your aut-num to reflect the policy.

Here is a list of organizations already peering with us.

Cache Peering

As a government-funded research group, NLANR is not in a position to provide guaranteed "24x7" cache service. If the cache becomes unreachable in the middle of the night, we will not necessarily be able to immediately fix it (although, some of us do have strange sleep schedules...). For this reason, we very strongly make the following recommendations:

Sample configuration:

	cache_host   sj.cache.nlanr.net parent 3128 3130
        query_icmp on

We have made some modifications to Squid to account for the fact that the cache may not be able to reach some Web sites. This cache will return the ICP_MISS_NOFETCH reply code for sites which are not reachable. Squid determines site reachability with ICMP. When Squid fails to connect to a site, it deletes the ICMP measurements from its database. Then it will return ICP_MISS_NOFETCH for that site until the site becomes reachable again.

If you're interested, here is the sj.cache configuration file, updated daily.


Equipment and Location

The cache is running on a dedicated server attached to MAE-West via a dedicated BGP router on a switched FDDI port at 55 South Market, San Jose:

Network Diagram

Router

Cache

Dns

Software

NLANR uses and develops the Squid Cache software. It runs on any modern Unix system and is freely available. Other caching software is listed on the NLANR Cache Home Page.

Router Configuration

to keep RADB current; run

	RtConfig -supress_martian \
		< sj.cache.nlanr.net.src \
		> sj.cache.nlanr.net-config

$Id: index.html,v 1.11 1998/02/04 20:27:57 wessels Exp $