A Comparison of Public Proxy Software using Wisconsin Proxy Benchmark
Jin Zhang and Pei Cao
University of Wisconsin-Madison
list of available proxy software, we downloaded and tried to install
all of the publicly available proxy software. Here is a report of our
We also conducted a very preliminary test of the collection of
software using a small
configuration of the Wisconsin Proxy Benchmark. We report our results here.
You should read Duane's
brief description of the proxy software first, and then read this document.
This document includes our understanding of the architecture of the proxy
products and our experience with installing and testing them.
Note: the benchmark results reported here are very preliminary, and
should be in no way considered as any significant indication of the proxy's performance.
The configuration of the benchmark is described here.
For each proxy, we listed blow:
architecture of the system: process based, thread based or event driven;
installation experience: how to install the software, easy or hard (for us)
configuration experience: how to configure the system. Basically, there
are three typical ways to configure the proxy:
using a configuration file, that is, the administrator manually edits the configuration file
using a web based configuration interface
using the command line arguments when starting the proxy program
limitation: the limitation we observed about the proxy
architecture: process based, fork
one process on each request
installation: run make
see Squid and Netcache
architecuture: single process, event-driven
simple, just "make install"
architecture: process based proxy,
fork one process on each request
simple, may need to change a little bit of Makefile before running make
quite a lot of command line options
can not specify the cache size
commercial product; runs on WinNT only; rumors is that
it will come free with WinNT 5.0;
architecture: process based,
simple, run configure and make
can not run without caching
commercial product; runs on Novell's own operating system;
in other words, software/OS integrated;
architecture: process-based, pre-forked processes
architecture: thread based, pre-fork threads
installation: simple, run
java install to install
uses web-based interface for configuration. But need to learn much about
the system architecture before knowing how to configure.
proxy returns "HTTP/1.1 200" even if the original server returns
commercial product; not available to us.
architecture: thread based
simple, runs configure, make install, install
web-based configuration interface. Need some time to figure out, but not
when the server replies with "Expires:" header, the proxy does not
cache the document.
commercial product; runs only on Windows NT.
architecture: thread based, create
a new thread on each request.
with bytecode, no installation needed after unpack the package
configuration file, need to know a little bit about system architecuture
the modules of the system.
commercial product; integrates the proxy software and the OS;
commercial product; not available to us;
commercial product; comes as both a software-only product
and a software/OS integrated product. We have not been able to obtain
an evaluation version.
IBM Web Traffic Express
commercial product. We got an evaluation version off the
Web, but can't install it on our Solaris 2.6 machine. The installation guide
on the Web apparently only covers installation on WinNT. We simply can't
figure out how to install it. IBM didn't offer much help.
commercial product. Performs image compression and caching.
Only available through ISPs using it. Intel claims that about three ISPs are
using this product.
commercial product. Evaluation versions not available to us.
"Packetstorm Technologies sells a caching appliance called WebSpeed
which runs Squid and is configured for transparent caching. "