Past EED rants


Live leaderboard

Poker leaderboard

Voice of EED

Thursday 2 February 2006

Beard and sandals to go! [Lurks]

Probably the longest running discussion of the relative merits and demerits of any particular genre of product, which I have engaged in on this web site, concerns various forms of broadband router. Cable, adsl, with/without wireless and so on. The problem is, domestic routers just aren't real cut out to do anything than handle a few people web browsing. I literally have a plastic crate full of routers that didn't make the grade. There's units in there that crash in five minutes after running a bittorrent client, there's one that actually crashes if you FTP in (that one is hilarious, it's great otherwise) and many others that will crash or slow to a snail, almost all of them in fact, after a few days of heavy torrents and so on.
Moving out of London, I was faced with dumping my 10mb cable modem (boo!) and picking up yer bog standard 2Mb ADSL. Importantly this is a work connection to, since I work from home, and I was planning for the addition of a proper IP phone. I'll blog that one later. So what I needed was something industrial, something with QoS so I could assign bandwidth to the IP phone so it wouldn't break up when I'm using the net for other stuff.
There's something I probably need to explain first. Cable modems are basically 10mb modems which have a software throughput limiter built-in. This is great because when you load a web page, it often bursts out on all those http fetches at full 10mb speed before the software says woah there jimmy, you're too tight for the full 10mb service, I is gonna cap you to some arbitrary figure your ISP has decided is worth the earth money you have agreed to pay them. ADSL isn't like that. ADSL is a pipe of a fixed width. What this means is that it's not possible to burst some data out to clear the data queue, your data has to wait in the queue until it can be sent - even if in total your throughput is well under your actual bandwidth. What does this mean Captain Manwaring? It means that even though you're only downloading at a speed much less than your total bandwidth, the latency or delay of the data getting through, goes up. It goes up a lot. Don't panic! We'll return to this later.
Getting back to the story at hand, I needed something industrial as I said so I ordered a top-of-the-line Draytek Vigor 2800. I kept my old Linksys cable modem with it's fancy three-way MIMO wireless, and just retasked that to be a wireless access point - thereby attaining the best of both worlds. Now, first thing. The Draytek is good. I mean proper good. It not only does port mapping and stuff, it has port mapping and open port ranges for specific IPs so you'll never run out of anything. It's a proper ADSL2+ router so futureproof also, when BT finally get around to rolling that out nationally. However the big deal is the Draytek has QoS, proper QoS and I mean it's ninja it really is. I defined groups via IP services/ports and groups via IP address, assigned a fraction of the bandwidth to them so the wife's work PCs had their allocation, the office IP phone had an allocation and life should be pretty good.
It wasn't enough. Nothing I could do would make the IP phone work without breaking up even when an upload torrent was going at a measly 30% of downstream bandy. World of Warcraft was 2000+ ms pings and having recently got the wife into WoW, I faced the absurd situation where I have my better half actually complain to me about downloading something because she can't play games. Clearly this would not do. I tore my hair out for some time speaking to the folks at Draytek. In the end I simply came to believe that the Draytek had too large a buffer on the ADSL modem side of things and that QoS ultimately was for nowt. What I needed was a new beast, what I needed was traffic shaping. Y'all go read that link because I can't be arsed to explain it in detail here but in essence, traffic shaping introduces several queues rather than one and you prioritise traffic into those queues based on your own rules. Obviously the most important one goes first.
There are some domestic routers coming onto the market that do this stuff like D-Links gaming router but I was really beyond using some el-cheapo off the shelf solution, vast unsuccessful experience so far (points to the box of domestic routers) proving that basically they'll be some show stopper with this junk. I needed something industrialthat had traffic shaping. What I needed, what I have always needed but been too slack to sort out, is a Linux-powered gateway.
There's a couple of factors which swung me around to this way of thinking, firstly a quick exploration of ebay turned up a number of bargains to be had of older small form factor Compaq desktops which would be ideal for the purpase. The second, and most important factor, there are a number of CD bootable mini-distros which do all this shit off the bat. A by no means comprehensive list but that which I examined in my exploration includes: Smoothwall, IPCop and M0n0wall.
The great thing about these is you can just shove in a CD and give them a whack and if they don't work right or suck a bit, you can just try another one. Paraphrasing a somewhat lengthy investigative period, I settled on IPCop. Smoothwall didn't have trafficshaping functionality built-in, so I would have had to have bought a pair of sandals and a comedy beard in order to hack those onto it. M0n0wall looks pretty good but is a tiny BSD-based distro which boots directly off the images provided rather than installing to the HD of the unit. IPCop won out because it would format the HD and do a full install from a CD boot, had wonder shaper-based traffic shaping built-in and had support for an internal Connexant-based PCI card. That meant I could flog off the Vigor 2800 and have paid for everything and had cash left for drowning my sorrows at having to sink to such depths of geekery.
I tell you now, IPCop is the business it really is. It installs off CD in no time and actually has some nifty other stuff built-in which you may or may not use. However it wasn't all plain sailing. The PC is pretty old and crusty and I intially couldn't get a second NIC or the internal ADSL card to work at all. However being an old PC vet, I remembered what you had to do in order to make PCs work many years back. In essence I just needed to fuck about with the IRQs until it worked. I had a bit of a panic whereby I sort of got the el-cheap ADSL modem recognised and working but not actually working. In the end I sorted it out, mostly by doing your usual stuff involved in making Linux things work in my extremely limited experience, just messing about with stuff until it worked.
In the end it worked and it's really really good. The Compaq box and the ADSL card cost me about £85 all inc with postage. I've got the Squid web proxy running on the box and bugger me if web browsing isn't very nippy indeed now, much like it was when I was on the 10Mb cable modem in my old gaff. I've got nifty traffic graphs, proxy graphs, proper logs off the firewall and of course as many goddamn mapped ports and stuff as I want. Most importantly of ALL, I have traffic shaping and I can report that my IP phone has been absolutely flawless since I set this all up.
A victory then. A sort of half-bearded thonged rather than sandaled victory but a victory nevertheless. The box itself is remarkably appliance like. The Compaq wont boot without a keyboard jacked into it but from power-on to the satisfyingly loud activation beep and the (excellent) web interface being available on the network takes just a matter of seconds and a few seconds following that, another beep indicates the ADSL link is up.
I have no hestitation about recommending this to others but I'm not surprised by how few people comparitively do. Arriving at this result came about through tentative glimpses of the odd obscure forum and blog post and a considerable leap of faith without recommendations from trustworthy sources.
So perhaps now the router graveyard will finally grow no further. This should do me for the conceivable future until such time as ADSL2+ comes along and I'll have to figure out how to support that. Most likely with the slightly-less-elegant addition of a NIC and an external ADSL modem but we'll cross that bridge when we come to it.


  1. All very interesting, but I feel that the fundamental question remains unanswered. Does the missus still slap you upside the head when you're leeching something, saying loudly: "I've got a red bar! How am I supposed to play like this?!"

  2. Hehe. Well, if I cap a download to 50% bandy (120k/s-ish), then things are fine. I'd like a bit more control over the wondershaper parameters, I'm thinking I need to shh into the box to give a text file a tweak or something. Just waiting for M&S to deliver suitably strapped footware.

  3. Is this recommended even for us, lets say, not so uberskilled semigeeks? This i ask since i feel that im quite far away from the sandals, but i do have 2 unused old comps...

  4. I don't see why not. The great thing is it's easier to install than Windows XP is. Just shove a CD in and let it go. In your case I think you have a cable modem? So you'll need two network cards in the PC.