Web Caching using Squid



Since its initial release in 1996, Squid has become a high-performance and secure web proxy. As Squid includes good caching facilities and is free for use, it has become the most commonly used proxy server on the Internet.

Squid can be installed on Linux distributions like Red Hat Enterprise Linux and Debian. It also runs on other operating systems including Windows. It is licensed under the GNU GPL.

Squid is a caching proxy for the Web supporting HTTP, FTP and more. It reduces bandwidth requirements and improves response time by caching and reusing frequently-requested web pages and resources such as images. ISPs, companies and various organisations rely on Squid to to drastically increase the number of users who can access the Internet at the same time. Squid tends to reduce web server loads.

Squid can also be used to deliver content from around the world – copying only the content being used, rather than inefficiently copying everything – using its advanced routing facilities. Multiple Squid servers can be setup hierarchically to build content clusters which route and load balance requests to web servers.

On Wikipedia, Squid is used to increase scalability. “[The Squid systems] are currently running at a hit-rate of approximately 75%, effectively quadrupling the capacity of the Apache servers behind them. This is particularly noticeable when a large surge of traffic arrives directed to a particular page via a web link from another site, as the caching efficiency for that page will be nearly 100%.” [Wikimedia Deployment Information.]

Technical aspects of Squid


By editing /etc/squid/squid.conf, one can change Squid’s http_port, the default port being 3128. Another important parameter is cache_mem, the amount of RAM Squid uses for caching objects. The default value is 256 Mb but can be increased.

Another important aspect of Squid is that it uses part of the disk for a cache. The cache_dir parameter is used to specify where and how big that disk cache should be. It generally belongs under /var.

Most people use Squid for its security features including the use of Access Control Lists to determine who can browse what websites and when. ACLs are very powerful and useful in a business setting.

Do not hesitate to contact us at Knowledge Seven if you have any web caching needs or you want to implement access control. We can also train your personnel in Squid administration.

Special session for Data Communication Ltd (DCL)

We ran a special session of our Squid training for DCL personnel in December and, while they still have some interrogations (e.g. on how to use Squid to cache video streaming content such as what exists on YouTube and Vimeo), they left us with some positive impressions that they have kindly authorised us to publish.

Novindra Appadoo  liked when we talked about ACL, peering, stats and authentication in Squid. Junaid Balladin mentioned that our explanations were good as well as the practical sessions. Jyotee Kumaree Caullychurn said that the course put emphasis on the practical implementation and configuration of Squid and that this will help her to administer and run Squid in a real world environment.

Ravi Jeetun also liked the explanations given while Shah Nawaaz Toonah found the introduction on HTTP, TCP and Apache very useful for a proper understanding of Squid.

Finally Vishaal Ramessur made us very happy when he said he liked everything! Thank you all.


Leave a Reply

Your email address will not be published. Required fields are marked *