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:
For more specific information, please see platforms.html. If you encounter any platform-specific problems, please let us know by sending email to squid-bugs.
Recent versions of Squid will compile and run on Windows/NT with the GNU-Win32 package.
However, Squid does not yet perform well on Windows/NT.
We also have a few other mailing lists which are not strictly Squid-related.
All of our mailing lists have ``-request'' addresses that you must use for subscribe and unsubscribe requests. To unsubscribe from the squid-users list, you send a message to firstname.lastname@example.org and in the subject and/or body of your message, you put the magic word ``unsubscribe.''
Several Squid and Caching-related web pages are available:
Squid can proxy SSL requests. By default, Squid will forward all SSL requests directly to their origin servers. In firewall configurations, Squid will forward all SSL requests to one other proxy, defined with the ssl_proxy directive.
Squid is copyrighted by the University of California San Diego and Duane Wessels. 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:
Year-2000 fixes were applied to the following Squid versions:
Yep. The following companies will support Squid for you:
We provide commercial Squid support; we frequently deploy squids in caching proxy, transparent caching proxy, httpd accelerator, and hierarchical modes, for a wide variety of corporate and public sector clients, including members of the Fortune 500. Inquires can be directed to FSC Information.
We are supporting the complete SA territory and speak Portuguese, Spanish, English and German. We are experienced in compiling Squid for SCO and FreeBSD. We do custom configurations, OS and cache fine tuning, maintenance and remote adminstration. Also we can help setting your server into existing hierarchies giving you best performance. Contact us on our Web site or send some e-mail to our Infomatik Information address.
netwing provides commercial Squid support. We are specialized in installing Squid Proxy Systems on Linux machines. Please contact us by sending an e-mail to email@example.com.
pushcache.com provides a version of Squid and an accompanying library modified to support push as well as the traditional pull. We support our software and traditional Squid. Contact us at firstname.lastname@example.org.
We are supporting squid, apache, linux and other public license software for professional use in germany. email us.
Plugged In Software provides commercial support for Squid, Apache, sendmail, Samba, RedHat Linux and other Open Source (TM) software. For further information, please see our home page or email our sales staff.
If you know someone who takes money for supporting Squid, let us know and we will add their information here.
The following people have made contributions to this document:
Please send corrections, updates, and comments to: email@example.com.
This document is copyrighted (1998) by Duane Wessels and the National Laboratory for Applied Network Research
This document was written in SGML and converted with the SGML-Tools package. This document is available in both HTML and compressed Postscript.
It is easier for us if you send us text which is close to "correct" SGML. Here are the basics:
Use the <url> tag for links, instead of HTML <A HREF ...>
<url url="http://squid.nlanr.net" name="Squid Home Page">
Use <em> for emphasis, config options, and pathnames:
Here is how you do lists:
<itemize> <item>foo <item>bar </itemize>
Use <verb>, just like HTML's <PRE> to show unformatted text.