[Announce] SAN200: Alternative firmware for NAS200

Discussion in 'Cisco/Linksys Network Storage Devices' started by alejandro_liu, Aug 22, 2009.

  1. alejandro_liu

    alejandro_liu Addicted to LI Member


    I am pleased to announce another replacement firmware for the NAS200. This is a specialty firmware that turns your NAS device into a SAN device.

    As a SAN device, all communications are done at the Ethernet level only (No IP traffic). It also only exports block devices (unlike exporting files as done by a NAS).

    Performance, to put it mildly, is largely disappointing. This firmware is only interesting for:

    1. Educational purposes: It lets you experiment with clustering software (Like Oracle/RAC or GFS).
    2. Boot Windows directly from the network

    You can download a binary zip file containing a flashable firmware file and the source tar ball from here:

    Source Forge

    Instructions on use can be found here:

  2. alejandro_liu

    alejandro_liu Addicted to LI Member

    Comments on SAN200

    Performance was truly disappointing. I was hopping I could get decent speeds out of this configuration, but instead I got at best 3.1MB/s reads, 2.4MB/s writes.

    To make it as light as possible, this Firmware only runs the bare minimum of softwares. For example, IP comunications are not even enabled. So you can not telnet or ssh to it.

    1. CECD - Coraid Ethernet Console Daemon, this replaces telnet as the way to access the console.
    2. syslog/klogd - loging daemons
    3. init - start up commands.
    4. vblade - exports block devices (This is the AoE target)

    On my desktop I was able to get 11.2MB/s reads, 9.1MB/s writes, with the system lightly loaded (75% idle). My desktop specs, are Pentium Dual Core, 1.73GHz, and 2GB RAM.

    On the NAS200, performance was so bad I was surprised, the vblade process was running at 75% to 95% of CPU with almost no idle time.

    Before I opted for vblade I tested these AoE servers on my desktop:

    1. aoeserver - kernel implementation, it caused my system to crash
    2. kvblade - another kernel implementation, it did not work.
    3. vblade-kernel - yet another kernel version, performance was lower than the user-space versions,
    4. ggaod - I looked at it, but it required kernel 2.6.26 or better. (My NAS200 is still using 2.6.20)
    5. qoed - user space implementation.
    6. vblade -user space implementation

    All kernel versions required tweaks before I could compile. I suspect it would have been difficult to compile for the NAS200.

    Both user-space implementation that I tested had similar read/write speeds. However, vblade seem to have a lower CPU usage than qaoed.

    This is my documentation on the subject: Notes

    The only positive thing out of this, is that under Linux, however, it treats the SAN200 as an internal disc, so it does have heavy caching. i.e. I did not test it, but I would suspect compiling the Linux kernel would be faster on SAN200 than on NAS200 exporting NFS.
  3. jackito

    jackito LI Guru Member

    I already tried this a few months ago but with Jac2b running. As you said the performance it´s really really dissapointing.
    I can´t believe how could Linksys put this lame hardware under the hood. :(
    I was not expecting a Quad-Core Xeon inside, but come on, at least something that let the user reach the maximun 100Mbit performance (around 9MB/s) and not half of it as now. I could never pass the ~4.5MB/s with any protocol.
    From my point of view this is the only downside of this box and it seems that no matter what nothing can be done to boost it. :frown:
    Just my two cents.
  4. alejandro_liu

    alejandro_liu Addicted to LI Member

    I agree with you jackito,

    The only thing that makes the SAN200 a worthwhile experiment is if you want to boot a Windows system from SAN.

    In my case, the way the console is implemented is interesting. I plan to use that for my next (home) build so that I can have a console (without resorting to hack a serial console) early in the boot process... i.e. in CentOS when it is fsck'ing the hard discs.
  5. p.busser

    p.busser Addicted to LI Member

    Has anyone tried Kernel Mode Linux on the NAS200? It is a kernel patch which lets you run user-mode programs in kernel space. This means that such a program calls the kernel directly, without having to go through a context switch.

    The R8610-G is a chip with lots of on-chip peripherals. I suspect that the band width of the memory is not sufficient to do disk I/O, network I/O, and CPU I/O at the same time. And the CPU has a 16-bit memory path, which is kind of narrow for a 32-bit CPU.

    Has anyone measured raw cache and memory speeds?
  6. JiKo

    JiKo Guest

    i must say, after that i have this up and running. it is fast enough for me and i have no problem in the last 4 weeks.

    i have some wishes: hd and fan after 15 minutes silence :rolleyes: and a admin interface for windows :rolleyes:

    LG JiKo
  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