Bandwidth throttling for the win

08 May 2013 by Lincoln Ramsay

I have a problem. My internet connection is slow. It’s not too bad for light use but downloading anything more than a few megs means waiting. Worse, while I wait for the download to complete, everything else is slow.

Some years ago, someone came up with a great script called The Wondershaper. Of course, it’s Linux only and to be most effective, you need to run it on your gateway/router box. I did try running it on my Linux box but it slowed down LAN traffic too. I tried to come up with a Mac version but all I could get was a simplistic version that again, slowed down LAN traffic. So I really needed to get it running on my router.

Well my router is an iiNet BoB. For some reason, they lock users out of it. They have QoS stuff but it’s very limited and doesn’t do anything like what wondershaper does.

So today I got a Buffalo WZR-HP-G300NH which runs DD-WRT out of the box and doesn’t lock me out.

So now the BoB is just an ADSL modem while the Buffalo runs my network proper. I didn’t even need to login and setup wondershaper manually because the DD-WRT web interface already supports this.

The only tricky part came after I managed to have both routers advertising the same SSID. Yeah… you shouldn’t do that. My Mac got all confused and needed to be rebooted, I think because of bogus ARP/route cache stuff. The old WRT54G I use as a wireless bridge (so the TiVo can get on the network) fared even worse, hard-resetting itself in its confusion.

But it’s all good now and there seems to be an improvement already. There’s way more QoS stuff exposed by DD-WRT and there’s always raw iptables if I need it.