In all honesty, we hit the home network pretty hard here at Casa de' G-98. At any given time, there are 6 computers, an ethernet surveillance camera system, a couple Snap Servers, a Vonage phone modem, an MP3 media server, and so forth connected together. That whole hydra-headed mess feeds through a Linksys WRT54G router, then on to a D-Link DI-102 packet optimizer before making a left turn at the cable modem to the Intarwebz.
I could be on the workstation in the garage making a new vinyl sign for a customer, listening to MP3s stored on the Snap Servers, while Mrs. G-98 is browsing the Web and on the phone with her mom, and the two WarCrack addicts are hot and heavy in another quest for Gawd knows what.
I used to experience lock-ups of the network after about 5 days of "average" use in my house. This stemmed back to a glitch in the factory Linksys WRT-54G v5.0 firmware - it tracks connections for 5 days, but doesn't flush them when the cache fills up. Once that cache fills, it locks up, and you need to reboot the thing. An earlier fix required me to add a digital audio timer to the power side of the router, forcing a reboot at 5:00 AM every morning. That worked fine, but really didn't address the problem, although it somewhat tidied up my basement communications rack system:
Doing some homework, I learned about the big aftermarket for earlier versions of the Linksys WRT54G made prior to v5.0. It appears they had more internal memory, and ran a version of Linux as their firmware of choice. Being a dabbler in all things Linux, this got my attention! The two top contenders in the line-up were DD-WRT and Tomato, neither of which would work on my original WRT54G v5.0 router - so I had to find either one of the older, large-memory versions, or one of the WRT54GS versions Linksys marketed for aftermarket firmware.
Fast-forward a few weeks, and I'm the proud owner of a very early model WRT54G v1.0, distinguishable by the lack of Cisco labeling, as well as the 20 or so diagnostic LEDs on the front panel not found on later versions. I immediately set about to modify the thing, because I wanted it to last for a very long time in its new role. Hey, it's not like the warranty would be voided, so off came the external cover. A tiny 5-volt fan went inside the case, as did about a half-dozen finned heat sinks on the bigger chips, all to cool the little router and increase longevity for the long term.
Installing DD-WRT was quite straightforward, but you could tell that the feature-rich firmware really bogged down the WRT54G v1.0, it just plain crawled. I'd been warned that the WRT54G v1.0 had a slower Broadcom CPU, 125Mhz vs. the later 200Mhz processors, but that 75Mhz difference really didn't explain the slowdown I was experiencing. I debated tweaking the myriad user-configurable options, or installing either the Mini or Micro variety of DD-WRT, but had also been wanting to try Tomato, so I moved on to the latter.
Wow! Tomato's installation was downright easy, and once the router rebooted itself, things fell into place nicely. As a matter of fact, the router has been running Tomato ever since, with nary a hiccup. That 75Mhz drop in CPU speed? You'll never know it's there, the router's throughput and efficiency with the lean Tomato code is just that quick. I let it run without any adjustments whatsoever for a week, just to see if I could get by the dreaded 5-day hurdle. No problems, so I started entering port forwarding addresses for Vonage, WarCrack, Ventrilo, you name it, all by the IP addresses of those machines needing the port adjustments. Then I prioritized traffic based on those ports, such that our phone calls would take the top of the bandwidth heap, then down from there. The results were impressive, and with the packet streamlining of the D-Link DI-102 in conjunction with the Tomato QOS functions, my Vonage voice conversations have been crystal-clear.
There's also a full Wireless-G suite, with a particularly neat feature - you can adjust the transmitter's output wattage to boost your signal strength over distance. Bear in mind, you don't get something for nothing, and I purposely put additional cooling measures inside my WRT54G's chassis to dissipate the heat generated by the increased transmitter output. I had to look pretty silly walking through the snow in my backyard with laptop turned on, checking out the range of my Wireless-G signal, but darned if it doesn't work as advertised! I had considered getting an older WSB24 outboard signal booster to better feed my Dell Inspiron notebook while on the back deck, but the power adjustment in Tomato quite honestly matches the gain offered by the former device without need to further complicate things.
That just scratches the surface, and the firmware includes some very comprehensive logging abilities, complete with a real-time scrolling bandwidth meter, a 24-hour chart, and logs that go from daily, to weekly, to monthly (Image courtesy of the author's website):
That's pretty doggone nice, and Jon (the author) has been very busy with improvements and upgrades, several having been released since January of this year alone! What I had considered a cheap and perhaps disposable piece of networking gear is now nearly indispensable, performing functions well outside the $35.00 I paid for it. I upgraded the communications rack to better support the upgraded router, as well as adding another 5-port switch for later expansion of the network.
Yeah, I know it ain't terribly professional, but it does what my MCSE-addled brain set it up to do, and the time-switched outlet of the clock has been set to "always on" with no need to reboot the router so far, having gone just over 30 days of glitch-free operation. Jon, I doubt you need more endorsements, but you're getting one from me, and I heartily recommend that owners of these little blue Linksys boxes head to your website to get their own version of your Tomato firmware: