As many of you know when I first got FibreOP I was displeased with the performance of the provided Actiontec router when watching TV and torrenting. While I could have limited my torrents I felt I shouldn't have to do this and ended up building a custom pfSense image that worked with the FibreOP service. Through bringing this image up to date I began exploring options that had appeared on the market for consumer (or near consumer) equipment that would be capable of providing the throughput and functionality that some power users are requesting.
Initially I evaluated the Draytek Vigor 2130. While Draytek is not a big name here in North America they are big over in Europe. I chose the 2130 model specifically because it has hardware NAT functionality which offloads most of the load to dedicated hardware, away from the processor. While this unit worked fine for internet access the IPTV functionality was a different story. Unfortunately a lot of the lower level stuff is only provided in binary form which forbids really messing with it in ways required to have IPTV be functional. Once I discovered this I dropped it as a candidate and moved on to the Asus RT-N56U which turned out to be the right choice.
The Asus RT-N56U is built using a Ralink system on chip with a MIPS core running at 500MHz, but this also includes a packet processing engine that I will explain later. For flash it has 8MB. For RAM it has 128MB. Network side it has an internal Broadcom switch which provides 4 gigabit LAN ethernet ports and 1 gigabit WAN ethernet port. There are also two USB ports for USB HDDs/flash drives/printers. Dual band wireless (2.4GHz and 5GHz) is also provided using Ralink chipsets.
The really awesome thing about the RT-N56U is the packet processing engine. This allows a lot of the NAT functionality to be offloaded into hardware, leaving the 500MHz MIPS core virtually idle. This is important for FibreOP since we have both high speeds and for some many simultaneous connections. My testing shows that it can easily keep up with my 70Mbps/30Mbps package and through internal testing I've seen it hit 800Mbps in each direction. As for number of simultaneous connections I've hit well over 35,000.
The internal Broadcom switch is also awesome. While most switch chips allow you to do VLAN tagging the included chip also allows you to do 802.1p tagging, which is required for IPTV service to work. In simple terms this means that your IPTV traffic is switched instead of having to go through the 500MHz core and then sent back out.
As with most routers the Asus RT-N56U is built on a Linux platform with lots of common software you might find in standard distributions. Asus also puts out the entire source code needed to build custom firmware with each firmware release. This makes it *incredibly* easy to modify the router as it will build a completely functional firmware image.
The GUI is one of the best I've used and I've found it to be easy to work with and fast.
With the latest firmware available from Asus the RT-N56U requires no modifications to be compatible with Bell Aliant FibreOP service. You will have to manually enter VLANs and VLAN priorities, though. To that extent I have made a tweaked firmware which adds Bell Aliant as an ISP which allows the router to do automatic configuration with this information. I have also added a passthrough option which essentially allows you to use your own router behind the RT-N56U, talking directly to Bell Aliant, but have your IPTV service be provided through the RT-N56U. I will be posting this firmware once I test everything out.
You can find more information about the RT-N56U here: http://www.asus.com/Networks/Wireless_Routers/RTN56U/
Important Note: As mentioned in post 130 you must "release the IP address from your Actiontec before switching. You must do this or the Asus won't get one. Powering off everything will *not* release the IP address. You have to go into the web interface to do so."
Other Note: You will find a direct link to Files' firmware upgrades in the link below. However, it is highly recommended to read the whole thread since there is a lot of info to understand before you try to do the hack.