Jun 9 2006

Linux on a Linksys

Jeffrey Larson

I think I’ve found a new project that will go on my task list.

As many of you probably know, at our house we use a VOIP solution (from Primus Canada) for our home phone. The reason for this is simple. Telus charges $26/month for a residential phone line with no long distance, no options/features, just a plain phone that works for local calling. Primus charges $15/month for their TalkBroadband service which allows us to have our same home phone number. It utilizes the internet to make phone calls, so since we have Shaw’s Highspeed Internet, we get to pay $9 less for our phone. We pay an extra $8/month for 300 minutes of long distance (North America) and ALL the calling features you can think of. (see the Ultimate Bundle)

You should also know that I run my own server at my house. Running both my server and the phone gateway on my internet connection has not been an issue, however, lately we’ve experienced some LAN-based quality issues with our phone. Specifically, the outgoing voice (what the other people hear) gets choppy when other computers are using the upstream from our house (for example, a user downloading a file from my webserver, or someone using a Peer to Peer (P2P) program to upload a shared file). The main issue is that my current network configuration does not take Quality of Service (QoS) into consideration. Basically, our outgoing voice traffic does not get prioritized above the other traffic, so the voice packets sit on the outgoing queue of my router before they can be sent to the internet through my cable modem.

There are a few solutions here:

  1. go buy a QoS compatible router
  2. build a firewall/router out of an old computer using linux
  3. OR combine 1 and 2

For a while now, Linksys has build consumer level routers/switches/etc that are quite popular. In fact, a couple years ago, Linksys released the WRT54G with source code under the GPL. There boxes allow an embedded linux OS to run on them. Out of that, OpenWRT comes building up a fresh linux platform that runs on a bunch cheap router hardware.

I plan on buying a WRT54G/S very shortly. It should be a fun little project. I think it will probably cost more time than the money saved on cheaper hardware, but the time spent to make it work will be the fun part!