Slashdot Mirror


SoHo NAS With Good Network Throughput?

An anonymous reader writes "I work at a small business where we need to move around large datasets regularly (move onto test machine, test, move onto NAS for storage, move back to test machine, lather-rinse-repeat). The network is mostly OS X and Linux with one Windows machine (for compatibility testing). The size of our datasets is typically in the multiple GB, so network speed is as important as storage size. I'm looking for a preferably off-the shelf solution that can handle a significant portion of a GigE; maxing out at 6MB is useless. I've been looking at SoHo NAS's that support RAID such as Drobo, NetGear (formerly Infrant), and BuffaloTech (who unfortunately doesn't even list whether they support OS X). They all claim they come with a GigE interface, but what sort of network throughput can they really sustain? Most of the numbers I can find on the websites only talk about drive throughput, not network, so I'm hoping some of you with real-world experience can shed some light here."

19 of 517 comments (clear)

  1. You could roll your own. by LWATCDR · · Score: 4, Informative

    FreeNAS or OpenFiler on a PC with a raid controller and GigE should work. It might even be cheaper than a NAS box.
    As to OS/X support. I thought OS/X supported Windows networks out of the box. Odds are very good that if it supports Windows OS/X will work.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    1. Re:You could roll your own. by nhtshot · · Score: 5, Informative

      My situation is similar to yours. I bought and tested several off the shelf solutions and was continuously disappointed.

      My solution was an off the shelf AMD PC filled with HDD's and linux software raid.

      It's MUCH Faster (90MB/Sec) then any of the NAS solutions I tested.

      With Christmas specials abounding right now, HDD's are cheap. Use independent controllers for each port and a reasonable CPU. Also make sure that the GIGe interface is PCI-E.

    2. Re:You could roll your own. by jbwiv · · Score: 3, Informative

      The problem with that is power consumption. Build your own, and you'll be burning a lot of power unnecessarily because it's overkill. Contrast that with the ReadyNas Duo, which I own, that pulls on average around 30-40W. Much better and green.

    3. Re:You could roll your own. by ceoyoyo · · Score: 3, Informative

      Most NAS devices, particularly the consumer ones, cheap out on the processor. You might have great hard drive throughput, maybe even a nice fast network interface, but the poor little processor just can't keep up.

      If you want speed, definitely throw a PC at it.

    4. Re:You could roll your own. by Score+Whore · · Score: 3, Informative

      You have seven drives in a software raid5. Anytime you do a write, the entire stripe has to be available to recompute parity. If you aren't doing full stripe writes, that will often mean having to read data in from a portion of the drives. A normal PCI slot will give you 132 MB/s max. Possibly that is a limitation, but it's higher than gigabit speeds so you may not care that much. Also your raid controller may not exactly be lightning. But I'd personally suspect the number of columns in your RAID5.

      Also, as a little learning experiment, take a drive, make two partitions of a few gig each. Put one of them at the beginning of the drive and put the other at then end of the drive. Benchmark the speed of those two partitions. In case you're not really that interested, the laws of physical make the bits at the outer edge of the platter go by about twice as quickly as the inner edge. So if you are doing a sequential benchmark you'll find that a disk that rates 60MB/s on the outer edge will drop to 35MB/s on the inner edge. So on average, you'll find that the majority of your disk isn't as fast as simple sequential tests suggest.

    5. Re:You could roll your own. by blincoln · · Score: 3, Informative

      I'd be interested to know if anyone wants to make a case that AFP is necessary, but my personal opinion is that it's only worth using if you're running an OSX server.

      Our Mac people at work claim that the only way for the OS X file search utility to work correctly is via AFP. The third-party server software they use as an AFP server on Windows maintains a server-side index, which I imagine is why, although I don't know how much of that is a requirement with OS X as opposed to their specific configuration.

      --
      "...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
  2. Cmon people... by Creepy+Crawler · · Score: 5, Informative

    You might as well build it yourself.

    Go get a lowbie Core2, mobo, good amount of ram, and 4 1TB disks. Install Ubuntu on them with LVM and encryption. Run the hardening packages, install Samba, install NFS, and install Webmin.

    You now have a 100% controlled NAS that you built. You can also duplicate it and use DRBD, which I can guarantee that NO SOHO hardware comes near. You also can put WINE on there and Ming on your windows machines for remote-Windows programs... The ideas are endless.

    --
    1. Re:Cmon people... by swillden · · Score: 5, Informative

      Your network connection is the limiting factor here. On large sequential reads, modern SATA drives with a mobo's onboard controller can easily maintain the 100MB/s or so it takes to max out your gigE connection.

      I second this.

      A good way to test your network connection is with netcat and pv. Both are packaged by all major Linux distos.

      On one machine run "nc -ulp 5000 > /dev/null". This sets up a UDP listener on port 5000 and directs anything that is sent to it to /dev/null. Use UDP for this to avoid the overhead of TCP.

      On the other machine, run "pv < /dev/zero | nc -ulistenerhost 5000", where "listenerhost" is the hostname or IP address of the listening machine. That will fire an unending stream of zero-filled packets across the network to the listener, and pv will print out an ongoing report on the speed at which the zeros are flowing.

      Let it run for a while and watch the performance. If the numbers you're getting aren't over 100 MB/s -- and they often won't be, on a typical Gig-E network -- then don't worry about disk performance until you get that issue fixed. The theoretical limit on a Gig-E network is around 119 MBps.

      Do the same thing without the "-u" options to test TCP performance. It'll be lower, but should still be knocking on 100 MBps. To get it closer to the UDP performance, you may want to look into turning on jumbo frames.

      pv is also highly useful for testing disk performance, if you're building your own NAS (highly recommmended -- a Linux box with 3-4 10K RPM SATA drives configured as software RAID0 array will generally kick the ass of anything other than very high end stuff. It's nearly always better than hardware RAID0, too).

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    2. Re:Cmon people... by swillden · · Score: 4, Informative

      pv < /dev/zero | nc -ulistenerhost 5000

      Slashdot at the space after "-u". That should be "pv < /dev/zero | nc -u listenerhost 5000".

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
  3. Re:SMB by Anthony_Cargile · · Score: 4, Informative

    One more thing: if it says gigabit ethernet, for me that usually means anywhere between 200-800Mbps of speed on a fairly busy network, which should suffice for large data backups in a matter of say 2-5 minutes tops for moving several gigs. Your throughput really depends on other factors, so yours may be higher or lower than mine but typically that range should suffice with the proper switching and routing equipment.

  4. dedicated PC by spire3661 · · Score: 4, Informative

    In terms of cost/benefit ratio, nothing beats a stripped down PC with a lot of drives stuffed in it or in an external esata enclosure. I run a HP NAS MV2020, and a linksys NAS200 and they both cant hold a candle to a PC in throughput. Ive heard of some commercial systems out there, but they cost a small fortune. Just my $.02

    --
    Good-bye
  5. OpenSolaris / ZFS by msdschris · · Score: 3, Informative

    Build it yourself and install Opensolaris. ZFS rocks.

  6. Go to SmallNetBuilder.com by sco_robinso · · Score: 3, Informative

    They have the most comprehensive benchmarks and NAS's around (that I've stumbled across, at least). Also, lots of good tests showing various things like Jumbo frames, etc. Very good overall.

    I frequent the site a bit, and there's a couple tricks to getting good performance out of a NAS, or LAN throughput in general.

    1. Use Jumbo Frames, period.
    2. Use PCI-e NIC's, onboard or PCI just can't deliver the speeds offered by GigE. You can find smiple intel PCI-e nics for under $20.
    3. Drives make a big difference, obviously.

    www.smallnetbuilder.com -- Good site.

  7. UnRaid: when build-from-scratch isn't fast enough by Overzeetop · · Score: 3, Informative

    Okay, unRaid is not particularly fast compared to an optimized system, but it's expandable, had redundancy, is expandable, is web managed, plays nice with windows, sets up in about 20 minutes, costs $0 for a three disc license and $69(?) for a 6 disk license.

    My total unoptimized box on an utterly unoptimized Gb network (stock cards, settings, with 100 and 1000 nodes) and unmanaged switches just transferred an 8.3GB file in a hair under three minutes. From a single, cheap SATA drive to a Vista box with an old EIDE drive. Now 380Mb/s is not blazingly fast, but remember that it took almost no effort.

    http://lime-technology.com/

    No connection except as a happy customer with a 4TB media server that took longer to assemble the case than to get the SW running. If only my Vista Media Center install has been this easy.

    --
    Is it just my observation, or are there way too many stupid people in the world?
  8. Network won't be your bottleneck. by m0e · · Score: 5, Informative

    Disk will always be. Since disk is your slowest spot you will always be disk I/O bound. So in effect there's no real reason to worry about network throughput from the NIC. NICs are efficient enough these days to just about never get bogged down. What you would want to look at for the network side would be your physical topology -- make sure you have a nice switch with nice backplane throughput.

    About disks:

    Your average fibre channel drive will top out at 300 IO/s because few people sell drives that can write any faster to the spindle (cost prohibitive for several reasons). Cache helps this out greatly. SATA is slightly slower at between 240-270 IO/s depending on manufacturer and type.

    Your throughput will depend totally upon what type of IO is hitting your NAS and how you have it all configured (RAID type, cache size, etc). If you have a lot of random IO, your total throughput will be low once you've saturated your cache. Reads will always be worse than writes even though prefetching helps.

    If you're working with multi-gigabyte datasets, you'll want to increase the number of spindles (ie number of disks) to as high as you can go within your budget and make sure you have gobs of cache. If you decide to RAID it, which type you use will depend on how much integrity you need (we use a lot of RAID 10 with lots of spindles for many of our databases). That will speed you up significantly more than worrying about the NICs throughput. don't worry about that until you start topping a significant portion of your bandwidth -- for example, say 60MB/sec sustained over the wire.

    This doesn't get fun until you start having to architect petabytes worth of disk. ;)

  9. Re:SMB by drsmithy · · Score: 4, Informative

    A custom-built box, as many commenters suggested, seemed a tad inappropriate to me as he asked for an NAS device, not a server. Installing Ubuntu or whatever on it seems like more of a performance hit than a properly optimized "off the shelf" NAS box, since they most likely don't run Dbus, GNOME, Hald, bluetooth or any other desktop software atop the basic kernel and networking services.

    While this is true, for noticably less than you'll pay for a NAS appliance, you can build a PC with vastly more CPU power and RAM (in particular, storage vendors - even with high-end, full-blown SAN solutions - are offensively stingy with cache), which will more than make up for any extra stuff that might be running.

    You need to spend a LOT on an "appliance" type storage system to get something that has higher performance and/or better features than a "server". Particularly with cache, storage vendors across the board are offensively stingy (16 gigs of high-quality ECC RAM costs maybe $800, but you'll be lucky if your $100k SAN comes with half that amount).

    Personally I would recommend the OP looks at Server/NAS-style "appliances" like Dell's NF500. They're the only sort of "cheap" turnkey devices he'll find that will deliver the performance he seems to want, and will probably only cost a grand or two more than DIY.

  10. Already been extensively discussed... by kwabbles · · Score: 5, Informative

    For example:

    Best home network NAS?
    http://ask.slashdot.org/article.pl?sid=07/11/21/141244&from=rss

    What NAS to buy?
    http://ask.slashdot.org/article.pl?sid=08/06/30/1411229

    Building a Fully Encrypted NAS On OpenBSD
    http://hardware.slashdot.org/article.pl?sid=07/07/16/002203

    Does ZFS Obsolete Expensive NAS/SANs?
    http://ask.slashdot.org/article.pl?sid=07/05/30/0135218

    What the hell? Is this the new quarterly NAS discussion?

    --
    Just disrupt the deflector shield with a tachyon burst.
  11. Re:SMB by LoRdTAW · · Score: 4, Informative

    A NAS is pretty much a server that is dedicated to storage.

    If he wants to roll his own I would suggest either a light install of Ubuntu server or FreeNAS: http://www.freenas.org/. FreeNAS is based on the stripped down Free BSD core that m0n0wall uses. It is very small and is managed using a simple and easy to use web interface. I don't know about gigabit performance as I only set it up once for a friend using 100mbit. He had the Linksys NAS box and it was dog slow. On 100Mb it couldn't push more then 3-4 MB sec. I could get 8-9Mb sec using FreeNAS on an Athlon 1.3Ghz with 128MB ram and two SATA 500GB drives in RAID 1 (mirroring). He also added a USB 2.0 card to hook up another 500GB drive. It pretty much saturates his 100Mbit connection.

    And here is my related question to others here:
    I have fought with SAMBA on Ubuntu 8.04 server and I cant get it going faster than 10-11MB/sec when copying to/from Windows XP. Even with the tcp_nodelay setting and a few others it just barely breaks 11MB/sec. I can get 25-30MB sec when copying from one Windows PC to another. And the server hardware isn't puny: dual P4 2.4GHz Xeons, 4GB RAM, dual PCIX Intel gigabit and a PCIX SATA controller. Any one have any suggestions? NFS also runs at the same speed and when downloading from the Apache server I get 5-6MB sec. Something is wrong somewhere but I cant tell. I have changed kernels played with conf files but nothing works. Someone once told me SAMBA will always be slow but I don't believe that to be true.

  12. Skip Software RAID boxes by aaarrrgggh · · Score: 3, Informative

    The Buffalo Terastation uses a software RAID, which slows it considerably, with the side benefit of being nearly impossible to recover if it crashes.

    It does support SMB, NFS, and AFS out of the box though.

    These boxes are cheap crap, and have a very limited useful lifespan. Our company lost a good deal of information when ours crapped out after 366 days. (Yes, we had backups, No they weren't perfect. They happened to be with me halfway around the globe at the time...)

    Really seems like the product offerings in this space are limited usability, poor reliability, imperfect implementations, and grossly overpriced. Doing it over again, I would go for a build-it-yourself box hands down.