Future of TomatoUSB Hardware - Do you see it getting better?

Discussion in 'Tomato Firmware' started by quihong, Feb 26, 2013.

  1. quihong

    quihong Networkin' Nut Member

    Hello all,

    What's your thoughts on the future of tomatousb hardware? TomatoUSB has so many features and currently I feel its limited by the hardware (CPU/memory). For instance, SAMBA or Torrent Client, is CPU and memory bound.

    Do you see Asus or other manufactures stepping up there game anytime soon?

    I'm a little pessimistic considering the difference between the ASUS RT-N16 (4 or 5 years old) and ASUS RT-N66U (current top of the line?) is 120MHz and 128MB in RAM. On top of that they want to charge $100+ more.

    Will we see >1.2Ghz and/or multi-core tomatousb compatible hardware in the (near) future?

    Is this a Broadcom problem? Do they just not make the SoC?

    As a comparison, (yes I understand its a different architecture), there are so many Android sticks popping up on the market that are dual/quad core, +1GB of RAM, 4GB flash, etc. that cost $40-80 and will easily out perform the top of the line TomatoUSB router.

  2. rhester72

    rhester72 Network Guru Member

    Different markets, different purposes. As Toastman has said in the past, a router has one function - route packets. That's it. Everything else is gravy. If you want a high-end, multipurpose generic server...run one (on a server or a stick).

  3. koitsu

    koitsu Network Guru Member

    Samba is CPU-bound even on 8-core x86/x64 CPUs. That's just the nature of the beast. I can show you it chewing up 13-14% CPU time on a 4-core machine during a very heavy I/O transfer (gigE LAN) of about 55-65MBytes/second. Yes, this could probably be optimised in some way within the code, but that's not TomatoUSB's problem/fault, nor is it the hardware's fault.

    What people (including yourself, from the sound of it) completely forget is that these devices are designed and sold to do very specific, very niche things. They're intended to act as NAT-based routers, provide Ethernet switching/switches, and provide 802.11 wireless access. That's it. That's the market for them. That's what they're designed to do. All this other stuff TomatoUSB and other projects "make" them do is just extra -- it's not part of the intended goal of the design of the product at Asus, Buffalo, or Linksys/Cisco.

    What I'm trying to say is that these devices should not be treated with the same regard/usage model as, say, an x86/x64 PC. So many people using TomatoUSB want all these damn features and all this extra crap, and it means they're trying to turn a product that was designed to do 3 specific things, into a full-fledged Linux server. I'm sorry, that just isn't what the products/hardware are focused on. I wish people would understand this. It's "fun" to try to push them, sure, but people aren't doing it "for fun", they're doing it because they want their router to do more shit than it was intended to do.

    One thing I do wish, however, is that the vendors would stop using flash RAM for the firmware, and instead use SD or CF cards and boot from them natively (like an x86 PC would). This would make development a lot easier. I don't mind the NVRAM (I get it, really I do! I've done work with PIC chips, so I understand this quite well), but even things like OpenWRT do away with heavy reliance on that and instead use config files on a filesystem (which I fully agree with).

    If you want a Linux box that does lots of stuff really fast, build yourself an x86/x64 system. Get yourself a quad-port Intel gigE NIC for the switch. Get yourself a PCI or PCIe wireless card. Do all the iptables stuff yourself. You won't have a "pretty GUI" (you could design one!), but you'd have the Linux box you expect your router to be. I tried to do this with my FreeBSD box (which I also use as a NAS of sorts), but I gave up because wireless card support is just completely buggered on that platform (no good support, all sorts of driver-level bugs, and very, very deep driver-level bugs at that -- I went as far as to buy a wireless card and ship it to Australia where Adrian Chadd lives, just so he could work on improving the ath(4) driver for that card since, I believe, he works for Atheros. That was 2 or 3 years ago and I haven't heard anything in response. Not a peep).

    Otherwise you could try pfSense (which does have a GUI), except it's FreeBSD-based, and you're not going to have 50-60% of the features you've come to expect from a Linux-based firmware (not to mention AFAIK it lacks wireless support -- see my above comments for why) because FreeBSD lacks a lot of the stuff Linux has. Trust me -- all I do all day, and have done since 1997, for the most part, is FreeBSD.

    What rhester72 said about "different markets, different purposes" (re: Android phone) is also spot on. I couldn't have said it better myself.
  4. jerrm

    jerrm Network Guru Member

    As other micro/mini devices come out, broadcom will step up a little as a matter of course, but their router products are largely targeted and home and soho markets. It's a niche where they are already "good enough" for probably 95%+ of the market, and that 95% has no desire for anything more than being functional at the most basic level.

    It's not unreasonable to have a $50 for basic routing and another $50 stick/rasberry pi type device doing the non-router stuff. It may well end up being a better performer than the single box RTN66U solution that costs 2x as much.

    What I would really like to see pushed down to the soho/home router devices is power over ethernet for these type of scenarios.
    koitsu likes this.
  5. quihong

    quihong Networkin' Nut Member

    I'm not trying to argue about the primary purpose of the hardware, which is routing. I understand that. Just wanted to get peoples opinion on where the market is heading in the future.

    TomatoUSB with optware/entware opens the possibility for so much more. It would be nice to see router manufactures step up their game a little bit. I don't think it's asking too much that a $170 router (Asus RT-N66U) have decent NAS performance (~20MB transfer rate).

    Personally, I find the $15 PogoPlug (E02) with ArchLinuxARM the perfect companion to my TomatoUSB router. I run everything I wish my TomatoUSB router had the power to do on it.

    Going to a full blown x86/x64 linux box is a little over kill. :)
  6. koitsu

    koitsu Network Guru Member

    Market prediction/technology prediction is impossible. You want proof?


    This is a statement made in July 2000, where some asshole completely lost touch with actual reality of how the Real World(tm) works, and insisted that we'd be pushing out 10GHz CPUs by now. Yeah, that's happening. Let's stop predicting and actually start doing.

    All I can tell you about "the market" is this: the focus right now seems to be on "going more green" / energy savings and decreasing TDP on all kinds of ICs (from CPUs to wired NICs (so utterly stupid)). Speed improvements on the CPU side of things are being made (the most notable being the move to on-die MCHs), but overall the biggest "changes" I see happening are continual focuses on power/electrical savings.

    On the home router side of things, I think what jerrm just said is correct. Look at how long it took for gigE switch chips to be added to residential routers -- we had gigE on desktops (on-board!) for 3-4 years before routers started to have them. That's how long it takes in big business + with all the red tape. I know, I've worked for such companies (see my CV/resume if you don't believe me).

    I think one thing users would be happy with is if all the SoCs came with hardware-level encryption offloading that tied into the Linux kernel's crypto implementation, and not just "specific" SoCs. OpenVPN and others rely on this framework. Some examples are at the bottom of this page:


    P.S. -- I would use the word "abysmal" to describe what I think of a 20MByte/sec gigE LAN transfer rate between a NAS and a desktop PC (assuming you're using CIFS/SMB -- the protocol matters yet nobody ever bothers to state what protocol they're using, which pisses me off. STOP THAT! Give details! If you want an example of what details to give when providing "benchmark" numbers, let me show you how to do it proper: http://www.dslreports.com/forum/r27618714- -- yup it's long, and it proves my point about the protocol being important). There is no way in hell I would accept that kind of speed -- 2-3x slower is just unacceptable to me.

    But On the Samba side of things on TomatoUSB routers, don't forget about this! http://www.linksysinfo.org/index.php?threads/speeding-up-the-samba-by-30.52240/
  7. quihong

    quihong Networkin' Nut Member

    I was being conservative. 20MB via SMB is fairly decent for home use and acceptable in most cases. My point is that currently TomatoUSB routers with attached USB drives get 5-8MB via SMB (see I'm putting the protocol down :) )

    Thanks for that. I'll make sure to note that.

    With the recent surge in smart phones the last 2-3 years, I see a bright future for cheap, powerful and energy efficient embedded ARM linux devices. We're already seeing some of it now with the Android sticks (built on surplus or somewhat dated hardware).

    I guess my point is, I don't see TomatoUSB hardware improving much over the next 2/4 years which is a little sad.
  8. RMerlin

    RMerlin Network Guru Member

    The RT-N66U has a 600 MHz CPU with 256 MB of RAM BTW.

    Asus's new RT-AC56U router will have a dual core 1 GHz ARM Cortex A9 in it (still Broadcom based). The switch to an ARM architecture might pose a problem for Tomato however.
  9. quihong

    quihong Networkin' Nut Member

    That's very interesting - ARM based!!! That will definitely give these routers a much needed boost in performance. I hope they keep them "open". ArchLinuxArm with some router configuration gui package would be nice.
  10. RMerlin

    RMerlin Network Guru Member

    Well it will run Asuswrt, so everything will be available for people willing to port their custom FW to it.

    More info about the SoC: http://www.broadcom.com/products/Wireless-LAN/802.11-Wireless-LAN-Solutions/BCM4707-4708-4709
  11. jerrm

    jerrm Network Guru Member

    Cool. If they keep the driver interfaces and utilities the same, it may not be too huge a hurdle, but would be a much bigger leap than anything Tomato has seen in a very long time. It will come down to one of the maintainers or maybe a new player deciding they need the newer platform(s) enough to invest the time.
  12. Frequenzy

    Frequenzy Networkin' Nut Member

    we are really asking too much to a device thats meant to route and switch packets :) but i would like to see a higher CPU and bigger RAM
  13. RMerlin

    RMerlin Network Guru Member

    We aren't. Some ISPs use PPP (PPPoE, PPTP or L2TP) over faster and faster connection. Someone who had his ISP use PPPoE for their 300 Mbits service found out that an RT-N66U was NOT fast enough to keep up, and he'd cap at around 200 Mbits. He had to use his modem/router, which was a dual core device, the N66U CPU wasn't able to keep up with the PPP overhead.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice