FreeBSD Based Gaming Router
Zaphoid writes "Lan Game Reviews has posted an article on how to use an old computer and FreeBSD distro m0n0wall to create a gaming router. Gaming routers allow users to use their full bandwidth for downloads and other high bandwidth apps, and low latency applications at the same time. By keeping packet queues on the router side, rather than the modem side. Users are able to achive great pings in online games, while fully using their download bandwidth. This is a great alternitive to expensive gaming routers on the market today."
Gaming routers are under $100, so unless you already have an old PC, it's cheaper just to get the gaming router and not have to worry about building your own. Plus, what about wireless access? That seems to come with every gaming router today, so even the hardware cost kind of outweigh this approach. I'll stick with my D-Link DGL-4300 router, it's small, uses less power, no noise, has wireless access, and a ton of other features that I'll never use.
Guys (and the few but very welcome gals), before we all start flaming about how hard it is to set up OpenBSD/FreeBSD and a firewall for a newbie, please take a look at the m0n0wall site. m0n0wall is completely self contained and is very easy to set up. It is completely web interface driven and is managed in much the same way as a consumer broadband router is. m0n0wall is, in my humble opinion having used it for a number of years and loveing it, and excellent firewall product and is very capable. If you have not seen it, grab a copy and have a look. Cheers, Tim.
T-3 at work. Shared among 3 sites. No special queue or anything else. 37Mb/s for 28 minutes.
Router is FreeBSD 4.11, PIII 450 with 2 3COM 3C905B's Around 1100 lines in ipf rule set. Not very well optimized, I have 1 group. I have NAT enabled, but this is not using NAT.
Does this help for some numbers?
Who on earth said anything about it being faster? My guess is that the performance difference between dedicated hardware and PC is quite negligible. All the article said was that you can do quality-of-service queueing with regular PC hardware pretty easily, and that if you already have a spare PC, that's cheaper than buying dedicated hardware for the purpose. As far as I know, the article didn't claim that a PC was any better at the job than dedicated hardware; it just claimed that routing with quality-of-service is better than routing with it.
Getting back to the subject of performance for a moment, the low bandwidth involved in most home network connections (even if they are called "broadband") is so small that just about any computer that can run current software can handle it. Remember, computers are built to move hundreds of megabytes around in a second, and we are only talking about fractions of a megabyte.
That leaves only the issue of latency. But, on regular 10 megabit ethernet, a full-size 1536 byte frame can transmit in not much longer than 1 ms. Lots of fancy routing hardware is built so it can figure out how to retransmit a packet before the entire packet has been received, so a router could in theory add less than 1 ms of latency on 10 megabit ethernet. But even if your PC receives the whole packet and then waits a whole extra millisecond before starting to retransmit it, you've still only added 2 ms of latency, which is really not that much. At least, on my cable modem, if I ping the local university, my latency averages about 125 ms. How big of a deal is it if I had 2 ms to that?
For what it's worth, I just did two ping tests to test how much latency going through a PC does add. I first pinged the local university from my firewall machine, which is a 600 MHz Athlon running Solaris 8. The lowest ping time recorded was 9 ms. Then, I pinged the same machine from a Mac that sits inside the firewall, so that the Solaris 8 machine is routing the ICMP packets it was (in the previous test) originating. The result? The lowest ping time recorded for the Mac going through the Solaris machine was 9.178 ms. It's hard to say since the Solaris machine doesn't measure in fractions of a millisecond, but the point is that ping times were not increased dramatically. In fact, it appears to be less than one millisecond difference.
http://www.openwrt.org/
It's the most open of the alternativesd, last I looked. Not necessarily great for the lazy, though, since it will want some hand-configuring.