next up previous
Next: Conclusions and Future Work Up: Forwarding Requests among Reverse Previous: Delayed Dissemination of Cache

Related Work

Several products (e.g., Network Dispatcher [7], Distributed Director[5], Radware [13], InterNAP [8], and ArrowPoint [2]) implement triangular communication at the switch and router levels. Also, LARD [12] deploys a similar TCP hand-off mechanism for request distribution in a clustered Web server. In this case, client requests arrive at a switch that forwards them to a server in a server farm. In contrast to these products or research projects, we envision the triangular communication between Web proxies. This entails several differences between the two approaches. Among them, the need for the first proxy to complete the establishment of TCP connection and interpret the request (rather than blindly forward all packets); the need to interface with a cache cooperation mechanism to find a remote proxy with the requested page and the need for dynamic impersonation of the forwarding proxies (in the case of a switch, all servers are statically configured to always impersonate the IP of the switch; in our case, the second proxy must impersonate different proxies for different requests). In this respect, our work looks more similiar to Distributed Packet Rewriting (DPR) [3]. However, DPR is still targeted at relatively tightly coupled web servers. Our approach is deployed in a WAN environment.

Dynamic impersonation of other senders is also performed by transparent proxies. In this context, a switch or a router intercepts TCP port 80 traffic and diverts it to a proxy, which establishes the TCP connection with the clients impersonating the various Web servers they are trying to access. Technically, transparent proxies and switch-level triangular communication together implement most of the transport-level functionality required by our approach, giving us optimism in the feasibility of our proposal. At a higher level, our approach also requires interfacing with the proxy cooperation mechanism and the implementation of the synchronization protocol to fulfil the requirements of HTTP pipelining (see Section 3.1).


next up previous
Next: Conclusions and Future Work Up: Forwarding Requests among Reverse Previous: Delayed Dissemination of Cache
Limin Wang
2/20/2000