Authors: Ariel Cohen, Sampath Rangarajan, Navjot Singh
This paper presents the design and implementation of a network- level support mechanism that enables transparent proxy caching of web objects using standard non-transparent proxy caches. There are commercial caching products available for transparent proxy caching. These solutions require that proxy caches be aware that they are receiving web requests transparent to the clients. These proxy caches are required to receive redirected client requests possibly using promiscuous TCP, construct absolute URLs to determine the name of the requested object and also masquerade as the origin server before sending the reply back to the client. In our implementation, we perform all these functions at the network level at the switch that redirects client requests to the proxy caches. This way, the proxy cache is not made aware that requests are transparently redirected to it. Requests appear to the proxy cache as if they come from a client whose browser has been configured to redirect requests to this proxy. Besides other possible advantages, an immediate advantage of this scheme is that any web server configured to act in proxy mode can be used to support transparent proxy caching without making any changes to the application level proxy or to the network level software on the machine on which the proxy runs. We have implemented our solution at the network level using a programmable gateway infrastructure (NEPPI) that we have developed.
Full Paper: postscript