Next
Previous
Contents
Squid is a high-performance proxy caching server for web clients,
supporting FTP, gopher, and HTTP data objects. Unlike traditional
caching software, Squid handles all requests in a single,
non-blocking, I/O-driven process.
Squid keeps
meta data and especially hot objects cached in RAM, caches
DNS lookups, supports non-blocking DNS lookups, and implements
negative caching of failed requests.
Squid supports SSL, extensive
access controls, and full request logging. By using the
lightweight Internet Cache Protocol, Squid caches can be arranged
in a hierarchy or mesh for additional bandwidth savings.
Squid consists of a main server program squid, a Domain Name System
lookup program dnsserver, some optional programs for rewriting
requests and performing authentication, and some management and client
tools. When squid starts up, it spawns a configurable number of
dnsserver processes, each of which can perform a single, blocking
Domain Name System (DNS) lookup. This reduces the amount of time the
cache waits for DNS lookups.
Squid is derived from the ARPA-funded
Harvest project.
Internet object caching is a way to store requested Internet objects
(i.e., data available via the HTTP, FTP, and gopher protocols) on a
system closer to the requesting site than to the source. Web browsers
can then use the local Squid cache as a proxy HTTP server, reducing
access time as well as bandwidth consumption.
Harris' Lament says, ``All the good ones are taken."
We needed to distinguish this new version from the Harvest
cache software. Squid was the code name for initial
development, and it stuck.
Squid is updated often; please see
the Squid home page
for the most recent versions.
Squid is the result of efforts by numerous individuals from
the Internet community.
Duane Wessels
of the National Laboratory for Applied Network Research (funded by
the National Science Foundation) leads code development.
Please see
the CONTRIBUTORS file
for a list of our excellent contributors.
You can download Squid via FTP from
the primary FTP site
or one of the many worldwide
mirror sites.
Many sushi bars also have Squid.
The software is designed to operate on any modern Unix system, and
is known to work on at least the following platforms:
- Linux
- FreeBSD
- NetBSD
- OpenBSD
- BSDI
- Mac OS/X
- OSF/Digital Unix/Tru64
- IRIX
- SunOS/Solaris
- NeXTStep
- SCO Unix
- AIX
- HP-UX
-
OS/2
For more specific information, please see
platforms.php.
If you encounter any platform-specific problems, please
let us know by registering a entry in our
bug database.
Recent versions of Squid will compile and run on Windows/NT
with the
Cygwin /
Mingw packages.
Guido Serassio
maintains the native NT port of Squid and is actively working on having the needed changes integrated into the standard Squid distribution. Partially based on earlier NT port by
Romeo Anghelache.
LogiSense
has ported Squid to Windows NT and sells a supported
version. You can also download the source from
their FTP site.
Thanks to LogiSense for making the code available as required by the GPL terms.
- squid-users@squid-cache.org: general discussions about the
Squid cache software. Subscribe via
squid-users-subscribe@squid-cache.org.
Previous messages are available for browsing at
the Squid Users Archive,
and also at
theaimsgroup.com.
- squid-users-digest: digested (daily) version of
above. Subscribe via
squid-users-digest-subscribe@squid-cache.org.
- squid-announce@squid-cache.org: A receive-only list for
announcements of new versions.
Subscribe via
squid-announce-subscribe@squid-cache.org.
- squid-bugs@squid-cache.org:
A closed list for sending us bug reports.
Bug reports received here are given priority over
those mentioned on squid-users.
- squid@squid-cache.org:
A closed list for sending us feed-back and ideas.
- squid-faq@squid-cache.org:
A closed list for sending us feed-back, updates, and additions to
the Squid FAQ.
We also have a few other mailing lists which are not strictly
Squid-related.
- cache-snmp@ircache.net:
A public list for discussion of Web Caching and SNMP issues and developments.
Eventually we hope to put forth a standard Web Caching MIB.
- icp-wg@ircache.net:
Mostly-idle mailing list for the nonexistent ICP Working Group within
the IETF. It may be resurrected some day, you never know!
All of our mailing lists have ``-subscribe'' and ``-unsubscribe''
addresses that you must
use for subscribe and unsubscribe requests. To unsubscribe from
the squid-users list, you send a message to squid-users-unsubscribe@squid-cache.org.
As of version 2.5, Squid can terminate SSL connections. This is perhaps
only useful in a surrogate (http accelerator) configuration. You must
run configure with --enable-ssl. See https_port in
squid.conf for more information.
Squid also supports these encrypted protocols by ``tunelling''
traffic between clients and servers. In this case, Squid can relay
the encrypted bits between a client and a server.
Normally, when your browser comes across an https URL, it
does one of two things:
- The browser opens an SSL connection directly to the origin
server.
- The browser tunnels the request through Squid with the
CONNECT request method.
The CONNECT method is a way to tunnel any kind of
connection through an HTTP proxy. The proxy doesn't
understand or interpret the contents. It just passes
bytes back and forth between the client and server.
For the gory details on tunnelling and the CONNECT
method, please see
RFC 2817
and
Tunneling TCP based protocols through Web proxy servers (expired).
Squid is
copyrighted
by the University of California San Diego.
Squid uses some
code developed by others.
Squid is
Free Software.
Squid is licensed under the terms of the
GNU General Public License.
We think so. Squid uses the Unix time format for all internal time
representations. Potential problem areas are in printing and
parsing other time representations. We have made the following
fixes in to address the year 2000:
- cache.log timestamps use 4-digit years instead of just 2 digits.
- parse_rfc1123() assumes years less than "70" are after 2000.
- parse_iso3307_time() checks all four year digits.
Year-2000 fixes were applied to the following Squid versions:
-
squid-2.1:
Year parsing bug fixed for dates in the "Wed Jun 9 01:29:59 1993 GMT"
format (Richard Kettlewell).
- squid-1.1.22:
Fixed likely year-2000 bug in ftpget's timestamp parsing (Henrik Nordstrom).
- squid-1.1.20:
Misc fixes (Arjan de Vet).
Patches:
Squid-2.2 and earlier versions have a
New Year bug. This is not strictly a Year-2000 bug; it would happen on the first day of any year.
Yep. Please see the
commercial support page.
The following people have made contributions to this document:
Please send corrections, updates, and comments to:
squid-faq@squid-cache.org.
This document is copyrighted (2000) by Duane Wessels.
This document was written in SGML and converted with the
SGML-Tools package.
Most current version of this document can always be found at
http://www.squid-cache.org/Doc/FAQ/ in HTML, Plain Text, Postscript and SGML formats.
Want to contribute? Please write in SGML...
It is easier for us if you send us text which is close to "correct" SGML.
The SQUID FAQ currently uses the LINUXDOC DTD. Its probably easiest
to follow examples in the this file.
Here are the basics:
Use the <url> tag for links, instead of HTML <A HREF ...>
<url url="http://www.squid-cache.org" name="Squid Home Page">
Use <em> for emphasis, config options, and pathnames:
<em>usr/local/squid/etc/squid.conf</em>
<em/cache_peer/
Here is how you do lists:
<itemize>
<item>foo
<item>bar
</itemize>
Use <verb>, just like HTML's <PRE> to show
unformatted text.
Next
Previous
Contents
|