We were also interested in analysing the impact of low bandwidth connections on proxy performance. We wanted to analyse how proxies behave when they must handle requests sent by several clients, using slow connections, such as modems. We used a modem emulator [2] which introduces delays to each IP packet transmitted in order to achieve a certain effective bandwidth that is smaller than the one provided by the network connection. This modem emulator, implemented in the Linux operating system, assigns to each process a predefined maximum bandwidth that it can use. The default bandwidth used in our experiments is 28.8Kbps for each process. We used the WPB to measure the performance of the four proxy servers included in our testbed when requests were sent by clients running on top of this modified version of Linux. We spread 30 clients over three DEC Celebris XL590 90 MHz Pentium machines with 32 MB of main memory each and standard 10 Mbps Ethernet card. We spawn 20 WPB server processes on two COW nodes. We compare the results for these experiments with those collected when the same number of clients were spread over the same machines running an unmodified Linux. The network connecting clients and proxies is non-dedicated and includes one router in the path.
Tables 5 and 6 show the results obtained for all four proxies. No errors were observed during the experiments for any proxy server. It is clear that the low bandwidth effect dominates. The latency increases by more than a factor of 2 for all proxies. It is also interesting to notice that the difference between the latencies observed in the first and second phases is smaller for the low bandwidth connection. This reflects the fact that the time spent in the communication between client and proxy is the dominant factor in the overall performance and it is much more important than the delay introduced by misses in the cache, since the connections between servers and proxy is much faster in our setup. The decrease in the hit ratio is also noteworthy, especially for Apache and Proxy N. Observing the results collected by iostat and vmstat, it is clear that the bottleneck is the transmission in the network. Despite the shorter service time, disk throughput is lower for the experiments with low bandwidth. The utilization of both disk and cpu is much lower for the 28Kbps bandwidth experiment and, as consequence, the overall proxy throughput degrades.