1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

NAS200 Speed problem

Discussion in 'Cisco/Linksys Network Storage Devices' started by MecRipper, May 4, 2008.

  1. MecRipper

    MecRipper Addicted to LI Member

    hi guys ;)
    this weekend i tested nas200.... and i don't understand how a "big company" sell "sick" product....

    i try all firmware but read/write speed not change too much... always 2MB/s min - 4MB/S max....

    i tested V3.4R62 - V3.4R62jac0 (THX!<-the best firmware) - V3.4R71beta

    sorry for my english...but i am italian... i hope you understand what can i tell.
    In two word:
    i want a new firmware with 15MB/s read/write speed.

    THX ALL! ;)
  2. dsc68

    dsc68 Addicted to LI Member

    If this chart is anything to go by, its going to take much more than a firmware upgrade to reach 15MB/s.

    Some basic performance measurements I have done show the disk is capable of supporting up to 32MB/s reads but the network interface will only handle 4MB/s. Throw in something that involves some processing, like ssh or md5 hashing, and the CPU struggles to maintain 1MB/s.

    Basically, you are getting what you paid for.
  3. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    May I ask how you tested this, or where you got the information? If the disk can really run that fast, implementing a USB network interface might be interesting...

    I myself tried doing a dd from a disk to /dev/null and that ran at 6MB/sec, so I think that's the maximum speed the hardware can do (assuming that writing data to /dev/null is an insignificant overhead and the driver is well implemented and uses DMA and can't be further optimized etc.) 6MB/sec is also the maximum speed that can be reached if you have ext2 formatted disks and firmware R71.

  4. Toxic

    Toxic Administrator Staff Member

    BTW what is the cpu speed of the NAS200?
  5. mstombs

    mstombs Network Guru Member

    The NAS200 is a 150MHz 486, and only has a 100Base-T Ethernet port, its never going to compete with gigabit devices. I've not formally tested my 266Mhz NSLU2, but I recall it does 30-40 Mbit/second = 3-4MByte per second over a multi-use LAN. The NAS200 is reported to be slower than the NSLU2.
  6. dsc68

    dsc68 Addicted to LI Member

    Drive performance can be measured with:

    hdparm -t /dev/sda

    I need to double check my measurements though because I may have mistakenly used the -T flag, which measures cache speed. My NAS200 is running an initial rdiff-backup backup at the moment so it will be a couple of days before I can check it. 100GB @ 400KB/s is a long time.
  7. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    I'm pretty sure I saw 150MHz in various places (and I believe I quoted that number in this forum too) but I can't find it now. The brief datasheet from the RDC website says it runs at 133MHz, so I'm afraid that's the final truth...

    I seem to remember seeing a table with selectable clock speeds with a few "reserved" entries in the full documentation that would indicate that it may be possible to overclock it, but I can't find it now. That's for others to try out, though. I value the integrity of my data more than the speed at which I can retrieve it.


    (PS the R3210 is used on the NAS200; as I understand, the R8610 is virtually identical except it's intended for industrial applications)
  8. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    Now why didn't I think of that :rolleyes:

    Here's three runs on my NAS200 (the first one was started while the disks were not spinning). Not as fast as you said but still I guess there is hope that with some optimization it might be possible to improve speed...

    $ hdparm -t /dev/sda
     Timing buffered disk reads:   40 MB in  3.03 seconds =  13.21 MB/sec
    $ hdparm -t /dev/sda
     Timing buffered disk reads:   44 MB in  3.12 seconds =  14.10 MB/sec
    $ hdparm -t /dev/sda
     Timing buffered disk reads:   44 MB in  3.11 seconds =  14.13 MB/sec
    This is on a Western Digital, I get similar results on my other disk which is a Seagate.

    And I think you're right: -T (cached reads) returns around 40MB/sec on both my drives so that's what you must have used...

  9. MecRipper

    MecRipper Addicted to LI Member

    thx for the answer.
    The problem is the Lan 100Mbit right?
    If we connect a Lan/Usb 1Gbit (with right driver) ?

    How i copy file to hd without use lan. I try to copy file attach hd with usb but when i reconnect hd to nas200 it's not readable. Nas200 tell me to format hd.
    i use a program to read/write hd with ext2 partition.

    in two word: i want copy file to hd without use lan connection because is slow. ( i have 500GB hd)

    Nas200 firmware 3.4R71
  10. mstombs

    mstombs Network Guru Member

    I probably got that from you as well - somewhat surprisingly the NAS200 only seems to report 50 BogoMips


    which for a 486 suggests a 100MHz clockrate as I understand it.

    The nslu2 reports ~133/266 (when de-underclocked), close to the rated clock speed.
  11. dsc68

    dsc68 Addicted to LI Member

    The on-chip ethernet hardware is only 10/100Mbit so a different driver won't help there. This puts a practical limit on throughput of about 10MB/s.

    I'm currently running a big backup with rdiff-backup and it is pretty obvious that the performance is being limited by the CPU. The reported 50 bogomips would seem to indicate a 100Mhz clockspeed which is one of the options on the chipset. So a 50% increase in performance may be possible.
  12. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    No, a 100Mbit network is not what's holding it back. A 100Mbit NIC (network interface connection) should still be able to push 12MB/s.

    I don't even know if a USB gigE adapter exists, but it probably won't make much of a difference anyway; controlling a USB bus is a lot more CPU intensive than controlling a NIC.

    I'm just speculating, but I don't think we can blame the low speed on one particular component. It's probably a combination of too little memory, too low a clock speed on the CPU, the 100Mb NIC and inefficient drivers.

    If I understand correctly, what you want to do is pull a drive out of the NAS200 and attach it to a PC, then copy files to it, then plug it back in to the NAS200. This should be possible and not even that hard. But you have to let the NAS200 format the drive and you should not let your PC change the partition table (so don't use fdisk on your PC).

    If you formatted the drive in non-journaled mode with firmware R71, the first partition is an ext2 filesystem that contains your data. If you formatted in journaled mode, it's XFS. Almost any Linux system can mount the hard disk, you just need to know what the device name is for it. If you have a PC with one harddisk on a SATA controller, and you attach the harddisk from the NAS200 on another SATA port, the first harddisk will probably be called /dev/sda and the NAS200 disk will be /dev/sdb. It's different for every system and you may have to move some SATA plugs around on the motherboard to make sure that your original system harddisk is still recognized first, otherwise it will be impossible to boot your system with the second drive attached (unless you take some precautions e.g. specify UUIDs in the /etc/fstab file; this is beyond the scope of this forum).

    Once you find the harddisk on your Linux system, all you need to do is e.g. mount /dev/sdb1 /mnt and your files will show up in the /mnt directory.

    You can copy files back and forth as much as you like, but you will have to use chown -Rh 502.501 (admin/everyone) and chmod -R 775 (rwxrwxrx) so the files are accessible once you put the disk back.

    Of course, I shouldn't have to mention that when you add or remove a SATA harddisk to the NAS200 or the PC, they should be shut down first.

  13. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    Hmmm It never came up in my mind to compare the bogomips number with a table of known values... If the RDC3210 is close enough to the 486 that the bogomips value should match, it would mean that the NAS200 like the NSLU2 is underclocked, which would be good news because it's easy to undo.

    I think I will get the ole' JTAG cable out this weekend to see if I can verify this. Of course it's still possible that the RDC3210 doesn't emulate the 486 closely enough and that it's just not as fast at the same clock speed. Either way, with the chipset docs and the source code from Linksys, it should be easy to find out if overclocking or de-underclocking is possible.


    [EDIT: I found the table of clock speeds; it's on page 15 of the documentation. Looks like it's in hardware though, so it might not be as easy to change it as I thought]
  14. dsc68

    dsc68 Addicted to LI Member

    And don't forget we're only talking about a 486 equivalent processor here - its never going to be fast compared to today's systems.

    From reading the spec sheet, the performance of the RDC3210 should be greater than a 486 due to a 6 stage pipeline (compared to 2 in the 486) and 16KB cache (compared to 8KB).

    The CPU clockspeed is produced using an internal clock multiplier fed by an external 25MHz clock. The multiplication factor is determined by the input to three pins during reset. Unfortunately it isn't going to be as simple as removing a resistor like for the NSLU2.
  15. xlr8

    xlr8 LI Guru Member

    Here's what I do and it works quite well. (No Linux, chmodding, or chowning required.)

    If you format your drives non-journaled so they are ext2, you can use Ext2IFS for Windows to mount your ext2 drive easily and automatically in Windows.

    What you need to do is format the drive in the NAS200 and set up all users and shares first. Then shut your NAS200 down cleanly. After that pull the drive from the NAS200, pop it in a USB-SATA drive reader (or directly into your computer). Windows should recognize it and Ext2IFS should assign it a drive letter. From there, go to the large partition (there will be three partitions, one is system files, one is all the user files - this is the large one, and the other is the swap partition). You can then copy files over where they need to go.

    Once done, put your drive back in the NAS. Your permissions will be all screwed up (you may not be able to read and/or write to certain files, certain directories, etc.) To fix that, do a Scandisk from the NAS200 web interface and it'll fix up the permissions.

    Of course, do all this at your own risk. I haven't done significant copying of large amounts of data, so your mileage may vary. If you already have data on your NAS, definitely back it up before you try this. I typically use this procedure to pull a full backup off my NAS onto a spare disk every month as it is much quicker than copying over the network.

    Good luck!
  16. jac_goudsmit

    jac_goudsmit Super Moderator Staff Member Member

    According to the webpages, ext2ifs doesn't maintain access rights (I bet they will fix that eventually, though).

    A scandisk on the NAS200 takes very long, especially with a large drive. If you have a Linux system available, you may want to set the access rights on that. Or you can use my NAS200 firmware and set them from the command line.

    Other than that, great info! Thanks!

  17. xlr8

    xlr8 LI Guru Member

    For my purposes, I just use this procedure to pull the data off the NAS for a full backup. Since I don't do any writing to the volume, the permissions don't get messed up, which is nice. Once, though, I did copy some files over and discovered that a scandisk fixed up the permissions. (You're right, though, it does take a while to run a scandisk.)

Share This Page