Archive for May, 2007

Its not over until its over!

May 28, 2007

A user posted to the squid-users list about a Squid web UI and a number of people gave options. One option was mentioned, but the original poster commented the project was “dead” and he couldn’t run something thats “dead”.

Henrik’s reply points out that open source software isn’t dead until the last copy has vanished. Someone then picked up on this in their blog.

I can’t help but think the original poster is after some software thats actively developed, so he doesn’t have to develop or pay for it. That only works if there’s a critical threshold of developers keeping development alive. Squid languished for a while because everyone wanted to run it, but somehow no-one was funding or contributing towards further public Squid developments. Luckily this seems to have picked up somewhat, but we definitely could do with assistance.

Squid updates

May 27, 2007

A few updates, as we’ve all been busy:

  • Amos is pushing forward his IPv6 work slowly; its probably going to wait for Squid-3.0 to be released and made stable but its making progress
  • I’ve done some profiling on Squid-3’s performance and I’m working on a few cheap methods to gain a few percent by not zero’ing buffers that don’t need zero’ing – another possible Squid-3.1 candidate
  • We learnt how C++ will “upgrade” types where the correct constructor is available – part of some performance regressions in Squid-3 (and the more noticable crashes!) popped up after some changes were made to neaten the code up…
  • Duane and Alex are still working hard to bring Squid-3’s behaviour close to stable as they can – hopefully a Squid-3.0 STABLE release will occur soon!
  • I’ve been working a little on /dev/poll (Solaris, IRIX) support for Squid-2 and I think I’ve finally solved the behaviour issues. This should drastically improve Squid’s performance under Solaris and IRIX.

Squid Presentation @ 2007 Sweedish Linux Users Meeting

May 23, 2007

Henrik is giving a presentation about Squid at the 2007 Sweedish Linux Users Meeting.

Quoting Henrik:

“This is mainly targeted at those of you living in Sweden near Stockholm.

I will hold a Squid seminar this Friday in stockholm as part of the swedish linux user group annual meeting. The seminar will be held in Swedish.

It’s free of charge, but you need to register. See page for details.

There is also a number of other interesting seminars held.”

Solaris improvements to Squid-2.

May 21, 2007

I’ve begun coding up some improvements to Squid-2 – support for /dev/poll – which should dramatically drop CPU usage for those busy Squids running under Solaris. Its a sort of “beta” at the moment so please test carefully.

Solaris has had /dev/poll since Solaris 2.7. I thought about coding up an event ports version instead of /dev/poll, but then those running Squid on older platforms/hardware couldn’t benefit, and Squid wouldn’t really take advantage of the benefits the Solaris event ports give over /dev/poll.

The Squid-2 snapshots can be nabbed from . Compile with


; /dev/poll should be listed as the IO loop in cache.log as Squid starts up.

I’d appreciate feedback.

Squid-3 IPv6 support

May 16, 2007

I have had some requests about what capabilities the squid3-ipv6 work has so here are some details for the testers and other interested parties.

Please keep in mind that this post describes a completely theoretical set of capabilities. While they are supposedly possible now. They still need testing to find the bugs that might stop it being so.

I have so far been concentrating on the client side of squid. Where it locates the pages requested.

Features page is at:

Combined the bits roughly make a request-path from a URI -> DNS -> ACL -> Remote Server and back to storage. (NOTE: this does NOT include Auth). It is not yet listening for requests on IPv6 from clients.

There are two important points to notice: Firstly clients still have to be in IPv4, Secondly the URI being in the path allows them to request domains or direct IPA that are within IPv6 netspace.

The goal and jackpot for testers is to see the dancing turtle at from a machine in IPv4 through squid.


Squid3-ipv6 needs presently (for IPv6 to work) to be running on a machine with both IPv4 and IPv6 addresses, v4 to receive requests and v6 to test how well it copes there. I won’t go into the setup of IPv6 on a machine here.

squid.conf can contain IPv6 addresses if an IPv4 was previously valid there AND if the configured feature is in the experimental list. IPv6 equivalent of ipv4:port is [ipv6]:port

debug_options ALL,1 14,9

Right now there are around 4-dozen points in the code where it unconditionally requests an IPv4 address to be used from that point on. Please report to me any info squid spits out about bad .conf options or stack backtraces of where it says “Cannot convert non-IPv4 to IPv4.” (its expected to crash there for now) along with any other bugs not in the squid bugzilla.

“Squid in 5 minutes” article in RedHat Magazine

May 16, 2007

There’s an article in the Redhat Magazine entitled “Squid in 5 minutes”. Its a simple introduction to configuring Squid as a proxy for a LAN. They do use Squid-2.5 though – I’d suggest installing Squid-2.6.STABLE13 at this point instead of their Squid-2.5 package.

IPv6 News of the week

May 15, 2007

I’ll make it quick since I’m posting from the wrong end of tommorrow for most of you.

This week one very important and one not so important things have happend to the world of IPv6.

In world news: the ‘end of IPv4’ has been recalculated with a better model and found to be much closer than thought. It was expected ‘next decade’. Now the big crunch is expected to start on or around 21 Dec 2009.

In local breaking news: the ident ACLs in squid got updated a few minutes ago. Now lets hope ident servers around the world can reply.

Squid-3.0.PRE6 has been released!

May 15, 2007

Following a mammoth effort by Alex Russkov and Duane Wessels, Squid-3.0.PRE6 has been released. Duane’s waiting for the mirrors to catch up before he makes a formal announcement. Note the PRE6 release notes haven’t been updated yet – that’ll happen real soon now.

Duane and Alex have been concentrating on show-stopper bugs in order to get Squid-3 finished and out the door for people to use. Alex has been concentrating on fixing ICAP related bugs to make Squid-3’s ICAP support rock solid.

New website is up!

May 15, 2007

The new website is up at . Please report issues via the Squid Bugzilla. (Obviously, feel free to email us or comment here if the website is so broken you can’t use the Bugzilla..)

HTMLised Squid Configuration Document

May 13, 2007

The default configuration file is the “authoritative” documentation for Squid options but its a bit on the big and unwieldy side. Henrik pointed out on IRC that it’d be nice if we had a HTML version of the squid.conf.default file; hyperlinked and highlighted.

So I hacked up a quick script to convert the default configuration data file (, which gets processed into the configuration parser and default configuration file)  into a bunch of HTML pages – one per option, then an index page.

Henrik then changed things around a little to generate an index page with sections – like the actual configuration file – and we’re shifting configuration options around into said sections. Amusingly, too much ended up in the “miscellaneous” section. Thats slowly being fixed.

Some options could do with better documentation; some options have no documentation at all! If you’d like to submit some updates then please feel free to leave a comment.

You can find the daily configuration manual build for Squid-2 HEAD here.