Open Source Router Spotlight

A few months ago we asked a simple question - what do you use for your router, and what would you look for in a router review. Unless you’re entirely mobile, getting online these days pretty much requires the use of some kind of NAT router. Picking that hardware is often a function of what software can be tossed on top, and having a consistent and familiar set of configuration pages makes setup and maintenance much less of a nightmare than dealing with the third party alternatives. There are so many arguments for using some open source package instead of the first party software which is usually derived from the board software package the SoC vendor hands out.

In the responses to that article, a few major things stuck out for me: what is the current landscape as far as hardware goes, and what performance impact if any is there that arises from running a third party software package on a router. I've split the follow up into two sections as a result. The first focuses on the current hardware landscape, and the second is a performance investigation of the third party software packages.

Ganesh and myself are currently sitting on two 802.11ac routers from Buffalo and Netgear, and a big part of this piece is simply feeling out what axes of performance need measuring for a typical router review. This is by no means a be-all or end-all review, but hopefully gives a bit of perspective for users setting up a connection for the first time and looking for a router, or wondering about the differences between a few different popular platforms.

The motivations for installing third party firmware on a router are often pretty simple: for adding features, increasing stability, or the desire for a better designed UI. Users either feel restricted by the feature set of the first party firmware, either from a lack of updates by the OEM or simply a perceived value-add from moving to a platform that’s actively being developed. Some of the original desire to move to third party firmware in years past was born out of necessity - a limited number of NAT connection states made use of P2P across some routers impossible without third party software. Other features that drive people to open source distributions include better QoS (Quality of Service) traffic shaping and management, static DHCP functionality, the ability to mount and serve attached storage or printers, compatibility with a wide variety of VPN services, ability to change WiFi Tx power, client status reporting, and even overclocking.

Hardware

For the purposes of this piece, I chose two hardware platforms that have seen widespread adoption and have great support among the most popular open source third party router firmwares. In the next article I'll also toss in my venerable WRT54G-TM into the fray, just to illustrate how that platform performs in comparison with much more modern hardware.

ASUS RT-N16

First is ASUS’ RT-N16 single band 2x2:2 router, which is rapidly becoming the new go-to router to replace the aging WRT54GL series. It seems like just about every third party platform I can find supports the RT-N16, and the device even has a small but growing lineup of accessories, including external fans for overclockers (really). The features that make it desirable are actually pretty straightforward.

First, it has three easily removable antennas which are just screw-on SMA connectors. This makes it easy to upgrade or replace the stock 2 dBi antennas with just about anything. SMA antennas are very easy to find these days, I literally have a drawer full of antennas with SMA connectors, from highly directional yagis or a cantenna, to directional patch antennas, or very flat profile 9 dBi omnidirectional ones as shown below.

 

Second, the RT-N16 is based around the fastest Broadcom SoC that most open source firmware packages currently support, BCM4718. This SoC includes a MIPS32 72K CPU which can run up to 533 MHz (the RT-N16 ships with a 480 MHz stock clock, but users can run it at 533 MHz with appropriate cooling), support for 1x32 bit PCDDR2 RAM up to 533 MHz, onboard GigE, one PCIe x1 interface, and support for 2x2:2 802.11n on either 2.4 or 5 GHz. The hardware also includes 128 MB of DDR2 and 32 MB of flash, which is among the most for this class.

I opened up the RT-N16 and all of this is visible immediately. The BCM4718 SoC is under a small heatsink at center which is held on with some double sided tape and easy to upgrade if you want to push it all the way to 533 MHz. There are two DRAM modules off to the right, and below that is the BCM53115S five port gigabit ethernet switch, which gets muxed out as 1 WAN and 4 LAN ports.

Remember that although the SoC’s WiFi baseband supports both 2.4 and 5 GHz, simultaneous operation would require an additional radio, hence why the RT-N16 is 2.4 GHz only. In addition, you’ll notice the RT-N16 includes three external antennas, but supports only two spatial streams. This third antenna is used in a switched diversity mode to increase signal to noise ratio at the receiver. ASUS has a simultaneous dual band 3x3:3 router built around a faster BCM4706 SoC and two BCM4331 radios, the “Dark Knight” RT-N66U, which also is starting to garner a serious open source following. We’re going to take a look at that in a later piece, however.

Gallery: ASUS RT-N16

Next, the RT-N16 includes gigabit ports all around, and a four port switch which supports jumbo frames. In an age where DOCSIS 3.0 cable modems include GigE by default and where cable ISPs sometimes allow QoS boosts past 100 Mbps, it makes sense to have a WAN port that likewise will do the full PHY rate.

The BCM4718 also includes USB 2.0 support for two ports, which are exposed on the back of the RT-N16 for mounting storage or printers. The power supply is an external wall unit which is pretty standard, which supplies 5V at 1.25A maximum.

The RT-N16 has been out for some time, which is partly why it’s so well supported among the commercially available router platforms out there today, and isn’t very expensive at around $85 from Newegg.

PC Engines ALIX

While the ASUS RT-N16 (and most other Broadcom-based routers) are MIPS based (although Broadcom’s latest 802.11ac SoC is ARM), our second platform is an embedded x86 platform I’m a big fan of, and it comes from a Swiss company named PC Engines. The platform originally started out as WRAP (Wireless Router Application Platform), and evolved into ALIX with better connectivity when AMD came out with a faster CPU. It’s essentially an embedded PC in the truest possible form – there’s no active cooling, and the device has the form factor of a normal off the shelf router, actually alongside the RT-N16 the Netgate is notably smaller. You’d be hard pressed to tell that there’s a PC inside.

At the core is an AMD Geode LX800 CPU which runs at 500 MHz and draws just 1.8W, requiring no active cooling. Also onboard is 256 MB of PCDDR RAM, one miniPCI slot, and three VIA VT6105M 10/100 NICs. Storage comes using a CF card which works over IDE. There are also two USB ports, but not USB 2.0, and a serial port on the back for debugging and configuration. Having 500 MHz of x86 makes the platform very well suited to doing much more than a cheaper off the shelf router platform. The current generation of ALIX is constrained pretty much only by the fact that it is limited to 10/100 ethernet thanks to those VIA NICs. I’m hoping that PC Engines upgrades the platform to GigE sooner than later.

PC Engines makes the board, and you can either assemble the mainboard and chassis yourself by ordering from them, or go to an assembler and get the whole combo including power supply in a nice wrapped up package. I’ve used the Netgate m1n1wall 2D3 assembled kit which runs $225 for some time now to much success. You’ll notice that you still need a WLAN card, in this case miniPCI. That’s a bit of a limitation since most miniPCI cards top out at 802.11a/b/g support, and for this reason many people running the ALIX platform use it for routing alongside an additional wireless AP. That said, you can get a card or kit, and I’ve gone with the pretty powerful Atheros based 250 mW DCMA–82 which has two MMCX connectors, pigtails, and 5 dBi omnidirectional antennas.

The combination is more expensive than a normal off the shelf router, but because it’s x86, you can run a host of different Linux, FreeBSD, and commercial router platforms simply by flashing them onto the CF card, some of which offer considerably more functionality.

The power profile of the Netgate / ALIX is actually right alongside the RT-N16 as well, as I'll show later, at around 6-7 watts. The ALIX platform uses a 15 V, 1.25 A external wall power supply, though again even under maximum use the box only draws a maximum of around 7 watts. 

In high school I ran a WRAP based router because I wasn't satisfied with the QoS on other platforms, and since then have deployed WRAP and ALIX in a bunch of different places when people aren’t able to get by with just a normal consumer grade router running third party firmware. It truly is some of the most robust hardware out there, usually with insane uptime in the months or years. Some examples of where I’ve deployed ALIX include a chain of local cafes with the exact same configuration above, where they serve a captive portal as well as internet to an endless deluge of WiFi users, a research lab with around 50 clients and lots of VPN use, a small business with 10 desktops and VPN telecommuters, and another growing small business that only recently outgrew ALIX and moved onto a 1U appliance. It’s a competent platform that definitely sits somewhere between consumer router territory and much more industrial solutions.

To be Continued...

In part 2 we'll focus on on some of the third party software packages and how they perform on these platforms. Stay tuned!

POST A COMMENT

45 Comments

View All Comments

  • mckirkus - Wednesday, August 22, 2012 - link

    Your best bet is to keep the router and Wifi devices separate. Wifi standards change faster than diapers on an bean eating baby and there's no go reason to throw out the baby (router) with the bath water every time. (New baby 10 days ago if you couldn't tell). Reply
  • crimson117 - Thursday, August 23, 2012 - link

    As the father of an 11-month old, Congratulations! :)

    Also I wish I had read your advice before buying my Asus RT-N65u two weeks ago.

    http://www.asus.com/Networks/Wireless_Routers/RTN6...
    Reply
  • kpb321 - Wednesday, August 22, 2012 - link

    I recently picked up a Belkin Play N600 HD Wireless Dual-Band N+ Router. It's nice because it's a simultaneous dual band router with Gigabit Ethernet and 2 usb ports that is regularly available pretty cheap. I picked mine up for $30 new. The only major disadvantage is that has internal antennas so you can't replace them with directional or higher gain antennas. It does have only 64mb of memory and 8mb of flash but that doesn't really seem to be a major limitation. I have plenty of free memory and the flash is enough to handle the biggest builds generally available and USB allows you to add a thumb drive or hd for real amounts of storage for NAS type functionality. Reply
  • dman3k - Wednesday, August 22, 2012 - link

    So did I. I might have screwed myself for not testing the router with the official most up-to-date firmware. I immediately flashed in DD-WRT out of the box. Network performance of it was worse than my D-Link 655. I then flashed it back to official firmware, and now I've spent ~$9 to ship it to Belkin for RMA.

    This time around, I'm going to test the official firmware's performance first. Maybe it's just as bad if not worse than DD-WRT. If so, I think I'll be keeping my D-Link 655 for a while.
    Reply
  • kpb321 - Wednesday, August 22, 2012 - link

    I haven't had any problems with mine but I actually flashed to Toastmasters Tomato-usb build instead of DD-WRT. I'm assuming you are referring to wireless performance. Tomato makes it pretty easy to up the transmit power among other possible tweaks to improve wireless performance. Reply
  • Simon42 - Friday, August 24, 2012 - link

    I'm using the Belkin F7D4302 - a close relative with no Gb ports and 1 usb. I'm running Tomato and there's a 2 Tb drive permanently mounted. Great for XBMC, including 10GB 1080p files on 5 Ghz band. It's really day and night compared to the original Belkin firmware which was utterly crappy! Reply
  • reckless76 - Wednesday, August 22, 2012 - link

    I've been running a Sonicwall tz-180 with their advanced firmware and it seems to be working very well for me. I can download a torrent, talk through vonage, and stream a blu-ray rip across my LAN all at the same time without any troubles.

    Does a solution like this in the article offer anything I'm missing?
    Reply
  • ZPrime - Wednesday, August 22, 2012 - link

    Disappointed that bad-ass embedded hardware from Soekris wasn't included. the latest Net6501 series is a dual-core Atom with up to 2GB of RAM, SATA, mSATA, PCIe expansion, and Gigabit ports. Reply
  • mike8675309 - Wednesday, August 22, 2012 - link

    I'm running DD-WRT on a few devices including an older Asus WL500W that did get replaced once on RMA. One of the primary issues that I've seen people dealing with on wifi routers running with higher horsepower is poor power quality. The little power supplies shipped with some units are simply not up to the job to keep high quality power available to the router.

    This thread and DD-WRT has a series of posts on power supplies and their relation to signal quality.
    http://www.dd-wrt.com/phpBB2/viewtopic.php?t=54242

    You might try your tests with better power supplies to note any change.
    Reply
  • Daniel Egger - Wednesday, August 22, 2012 - link

    If you don't want/need external antennas but just a very capable simultaneous 11n router/AP with GigE the N56U is quite a good choice.

    What I'd really like to see are some power measurements. I'm looking for something a little bit greener than the 18W of continuous power consumption of the N56U.
    Reply

Log in

Don't have an account? Sign up now