42.0 The Proxy Server Squid
Squid is a widely-used proxy cache for Linux and
UNIX platforms. This means that it stores requested Internet objects, such
as data on a Web or FTP server, on a machine that is
closer to the requesting workstation than the server.
It may be set up in multiple hierarchies to assure optimal response
times and low bandwidth usage, even in modes that are transparent
for the end user. Additional software like squidGuard may be used to
filter Web contents.
Squid acts as a proxy cache. It redirects
object requests from clients (in this case, from Web browsers)
to the server. When the requested objects arrive from the server,
it delivers the objects to the client and keeps a copy of them
in the hard disk cache.
One of the advantages of caching is that several clients requesting
the same object can be served from the hard disk cache. This enables
clients to receive the data much faster than from the Internet.
This procedure also reduces the network traffic.
Along with the actual caching, Squid
offers a wide range of features such as
distributing the load over intercommunicating hierarchies of proxy servers,
defining strict access control lists for all clients accessing the proxy,
allowing or denying access to specific Web pages with the help of other
applications, and generating statistics about frequently-visited Web
pages for the assessment of the users' surfing habits.
Squid is not a generic proxy. It normally proxies
only HTTP connections. It does also support the protocols FTP,
Gopher, SSL, and WAIS, but it does not support other Internet protocols,
such as Real Audio, news, or video conferencing. Because
Squid only supports the UDP protocol to provide
communication between different caches, many other multimedia programs are
not supported.