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!

Comments Locked

46 Comments

View All Comments

  • sinerasis - Wednesday, August 22, 2012 - link

    Very nice, makes me miss my RT-N16's... those are great routers. I live in a condo with a lot of noise so I had to get 5Ghz routers (eventually settled on the Linksys E3000's, which are not as nice, but work better for my purpose).

    Will the switch to ARM be a good or bad thing for third party software? I will be upgrading to ac once there is a good consumer/hacker friendly version out there.
  • dcollins - Wednesday, August 22, 2012 - link

    I love my RT-N16, which is running one of the Tomato forks.

    Considering the target market, I'm surprised by the lack of 5ghz support, which fortunately is a problem at my complex. Hopefully Asus will launch a good ac sequel.
  • dcollins - Wednesday, August 22, 2012 - link

    * is not a problem
  • mckirkus - Wednesday, August 22, 2012 - link

    Nicely written! A lot of us are using old netbooks as routers since they're much more capable than most offerings available. The setup is Cable Modem / Netbook Router / Wireless Access Point. The ALIX supports PFSense so I'm hoping you include it as one of the options in Part Duex! MIPS is so 2012 :D
  • Brian Klug - Wednesday, August 22, 2012 - link

    Absolutely, pfSense and m0n0wall are in the software lineup, big fans of those two platforms :)

    -Brian
  • Assimilator87 - Wednesday, August 22, 2012 - link

    I'd like to put in a vote for IPCop as well. Been using that on a Barton Athlon XP and I'll never go back to an OEM router. One aspect I would really like you guys to focus on is compatibility with wireless cards and multiple NICs. I'm about to upgrade the router to an Athlon 64 X2, and would love to get rid of my separate wireless AP/switch and have everything in a single box. Also, a test to see if SpeedStep and Cool'n'Quiet are supported would be awesome because an older gen CPU running at max clocks wouldn't be optimal for the power bill.

    Cannot thank enough for the AT team's hard work!
    -Mike
  • leexgx - Monday, August 27, 2012 - link

    I used to use ipcop long time ago but they flat refuse to add on upnp (yes it's an security risk but give the users the option and big warning starring the risk) so ended up with dd-wrt router in the end (loved ipcop as lots of little things I used on wad very god)
  • chrsjav - Wednesday, August 22, 2012 - link

    How do laptop-grade mini-PCIe cards fare when repurposed for access point and router duties (assuming they support access point mode)?

    A lot of enthusiasts have built mini-ITX systems for NAS that have both ethernet and wifi. If you have a 3x3 5 GHz card in a box running BSD, could you offload all wireless and routing duties to that computer? It'd be nice to replace three boxes with one.
  • wolrah - Wednesday, August 22, 2012 - link

    Please take a look at something supporting dual-band 802.11n. That is a sorely lacking feature in most of the hacking-friendly routers.

    The 100mbit-only limit of the ALIX makes it sort of a joke even as a wireless device these days, if you can't bridge 802.11n to ethernet at anywhere close full speed what's the point of having 802.11n?

    I'm currently running an Ubiquiti RouterStation Pro with OpenWRT. Atheros AR7161 @ 720MHz, 128MB RAM, and 16MB flash. There's also a SD slot, USB, 3x miniPCI, and the standard GigE switch with one port VLANed off by default for WAN use.

    It was supposed to be running pfSense, but apparently Ubiquiti stopped providing support to the pfSense guys and they lost interest in porting to MIPS. Very disappointing, but fortunately the current OpenWRT UI is a lot less bad than it used to be.
  • EnzoFX - Wednesday, August 22, 2012 - link

    Yeah, why not the RT-N66U, I think DD-WRT runs on it already. RT-N16 is only going to get more and more dated.

    I have a WNDR3700 which supports DD-WRT pretty well, and is dual-band.

Log in

Don't have an account? Sign up now