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."
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.
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.
If you want decent throughput build it yourself. Seriously. I have a coworker that bought 5 different NAS devices to do a bakeoff for a small skunkworks office and they all sucked for throughput. We ended up buying a $1K NAS that still wasn't great but sure beat all the SOHO ones. Numbers were ~8MB/s max on the fastest SOHO unit vs 25MB/s on the midrange one.
There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
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.
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
We have a ReadyNAS 1100, it's alright, but I wouldn't call it stellar. I get around 80Mb/sec to it over the network, but the management interface is IE only (as far as I can tell, since it has problems with FF and Chrome), and it has these odd delays when opening shares and browsing directories. Some of the nice features are the out-of-the-box NFS support and small, 1U size.
I have evaluated a few different products (I have a retail store) and so far I have been very happy with the DLINK DNS-323
Disclaimer: I have no affiliation with DLINK other than I stock some of their goods
DSLIP Web Design and Content Management Australia.
Build it yourself and install Opensolaris. ZFS rocks.
I have a Terastation 2 (by Buffalo) and I am plugged into 100Mbps ethernet at work, so I can't tell you about the throughput, but I can tell you that the Terastation Mac stuff is very half-assed. I couldn't get AFP/Appletalk to work at all and while SMB is rock solid for large files, it cannot handle large amounts of small files. It chokes on directories with huge amounts of files (not sure if that's a limitation of the Finder or the Terastation's fault, though). I had a user's backup program run amok and generate millions of tiny .tmp files over the course of about a month, and I was unable to delete them from OS X, even when waiting days. I had to use Windows Explorer, which was slow but eventually worked.
The built-in webpage used for administration is pretty terrible too. It works best with IE 6 on Windows, but even with that, sometimes the columns don't line up properly. If you misclick, you could end up changing the wrong shared folder.
On the plus side, the Terastation 2 is pretty cheap. I'd give it about a B minus in terms of what I need it to do.
(-1, Raw and Uncut is the only way to read)
www.smallnetbuilder.com maintaines a NAS Chart, I find it quite complete and recent.(http://www.smallnetbuilder.com/component/option,com_nas/Itemid,190/)
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.
If your testing is highly automated, I can't help you as I don't have a lot of experience with high speed networking.
If your testing is reasonably manual, consider storing your data set on removable hard drives which are manually plugged into one computer, data is copied, then disconnected and moved to the other. A USB 2 interface will give you the most compatibility given the wide variety of hardware you're using, but perhaps there may even be hardware that does hot plugging E-SATA properly if you're willing to pay a premium.
Remember, for really high bandwidth physical media being shipped from one location to another is still a solution which should be considered.
These posts express my own personal views, not those of my employer
Your best performance is likely to come by rolling your own. Off the shelf SOHO devices are built for convenience, not throughput.
Grab a PC (need not be anything top-of-the-line), a good server NIC, a decent hardware RAID card (you can usually get a good price on a Dell PERC SATA RAID on ebay), and a few SATA hard drives. Install something like FreeNAS or NexentaStor (or, if you want to go all the way, FreeBSD or Linux and Samba).
Where is the wisdom we have lost in knowledge?
Where is the knowledge we have lost in information?
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?
I hate to point this out, but 5G in 15 minutes is about 5 megabytes per second.
GigE peak theoretical throughput is like 125MB/s.
Consumer grade hard drives can average throughput in the 60MB/s range.
If this is the fastest NAS solution they tested and CNET is thrilled with their blazing 5MB/s sustained throughput to the NAS - I don't want one.
I'm going to have to suggest going with a cheapo 2.8GHz HyperThreaded P4 based 'server' w/ GigE, 1G of RAM and a few SATA drives on a RAID controller. Use whatever OS you're familiar with, set it up as shared space and get the bandwidth your application needs.
Glonoinha the MebiByte Slayer
Well it looks like SMB is your best bet for compatibility.
OS X doesn't support NFS? Linux doesn't support AFP?
Besides which, don't the better NAS boxes support pretty much everything, all at once?
Don't thank God, thank a doctor!
If you use a single disk NAS solution and you are doing sequential reads through your files and file system, your throughput can't be greater than the read/write speed of a single disk, which is no where near GigE (1000 Gbps is about 125 MB/second ignoring network protocol overhead). So you will need RAID (multiple disks) in your NAS, and you will want to use striped RAID (RAID 0) for performance. This means that you will not have any redundancy, unless you go with the very expensive striped mirror or mirrored stripes (1+0/0+1). RAID 5 gives you redundancy, and isn't bad for read, but will not be that great for writes.
As you compare/contrast NAS device performance, be sure that you understand the disk architecture in each case and see oranges to oranges comparisons (i.e, how does each one compare with the RAID architecture that you are interested in using - NAS devices that support RAID typically offer several RAID architectures). Also be sure that the numbers that you see are based on the kind of disk activity you will be using. It doesn't do much good to get a solution that is great at random small file reads (due to heavy use of cache and read-ahead) but ends up running out of steam when faced with steady sequential reads through the entire file system where cache is drained and read-ahead can't stay ahead.
Once you get past the NAS device's disk architecture, you should consider the file sharing protocol. Supposedly (I have no authoritative testing results) CIFS/SMB (Windows file sharing) has a 10% to 15% performance penalty compared to NFS (Unix file sharing). I have no idea how Apple's native file sharing protocol (AFP) compares, but (I think) OS X can do all three, so you have some freedom to select the best one for the devices that you are using. Of course, since there are multiple implementations of each file sharing protocol and the underlying TCP stacks, there are no hard and fast conclusions that you can draw about which specific implementation is better without testing. One vendor's NFS may suck, and hence another vendors good CIFS/SMB may beat its pants off, even if the NFS protocol is theoretically faster than the CIFS/SMB protocol.
Whichever file sharing protocol you choose, its very possible it will default to operation over TCP rather than UDP. If so, you should pay attention to how you tune your file sharing protocol READ/WRITE transaction sizes (if you can), and how you tune your TCP stack (windows sizes) to get the best performance possible. If you use an implementation over UDP, you still have to pay attention to how you set your READ/WRITE buffer sizes and how your system deals with IP fragmentation if the UDP PDU size exceeds what fits in a single IP packet due to the READ/WRITE sizes you set.
Finally, make sure that your network infrastructure is capable of supporting the data transfer rates you envision. Not all gigabit switches have full wire-speed non-blocking performance on all ports simultaneously, and the ones that do are very expensive. You don't necessarily need full non-blocking backplanes based on your scenario, but make sure that whatever switch you do use has enough backplane capacity to handle your file transfers and any other simultaneous activity you will have going through the same switch.
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. ;)
Never underestimate the bandwidth of a guy carrying a bundle of removable hard drives around the office.
Or a station wagon loaded with hard drives.
Nothing can beat them.
How many escape pods are there? "NONE,SIR!" You counted them? "TWICE, SIR!"
I've got an Thecus N2100 and the performance as a NAS isn't great. The CPU isn't powerful enough to take advantage of the gigE interface. For what you want, I'd get something more powerful which probably means an x86 box. For anyone who just wants a home server that doesn't consume too much electricity so can be left on all the time, a small ARM based box is great. I'm running Debian on it and it's really useful.
Actually, you dont want any RAID card, because it limits your upgrade and recovery options. Any modern CPU is not going to have any problems doing memcopy and XORing required for RAID.
You do want as much memory as you can afford, especially that memory is cheap now.
My little home server has 8GB of memory, it can sink huge write transfers very quickly. It uses 3 laptop SATA HDDs in RAID5 so it can take it's sweet time to write the data to HDD later because it effectively has 8GB disk cache.
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.
I agree with the suggestion to avoid Buffalo. Someone else responded to this thread and said that their UI is good. My experience was just the opposite. The UI sucked and trying to get the thing integrated into Active Directory was a nightmare. The setup appears to be straight forward. Specify domain name, specify domain username/password combo. The reality of the situation turned out to be decidedly different and required numerous calls to tech support, firmware updates and a lot of headaches.
See, the problem with responses like this is that they ignore the request of the original poster, and, while being valid instructions for a home-built, it is only a good solution if the time of the OP has zero value. Your instructions involve eight steps: Order (multiple) parts, wait for delivery, assemble, learn how and then install OS, learn now and install three other packages. The OP is looking for three steps: Order one thing, wait for delivery, plug in and use.
Your post has value to the DIY crowd, certainly. But for someone looking for a product recommendation, it totally missed the boat.
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.
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.
Just my $0.02: I have been running my server (named "JUPITER") SMB + Apache + Webmin on Ubuntu 6.06 LTS with LVM and RAID on an old Compaq Dual Processor SP750 with 256MB of RAM and a few 500 GIG PATA disks for over 2 years now. (Ran the same hardware under Fedora before) . The Network is an old 100/10.
... because it's newer and sexier...) but my old system refuses to die, and it's so stable that I don't want to go through the trouble of an upgrade.
FYI
Stability is SUPERBE --- system has NEVER crashed --- only downtime is when the power goes out or I go on vacation.
Speed is satisfactory --- everyone seems happy with the network. It just works.
Compatibility is GREAT --- 1 Windows VISTA , 1 Windows XP, 3 MacOSX and 1 Ubuntu 8.04 machines all use it. (even my DD-WRT based router has a share on the server.)
Cost is ridiculously low --- I probably couldn't give the hardware away without paying someone to take it... it's that old.
I've been wanting to upgrade my server to something newer and sexier, (why?
How many gigabytes are "multiple" gigabytes? Seriously, moving around five GB is much easier than 50 GB and enormously easier than 500 GB.
Another thing to consider: how many consumers are there? A "consumer" is any process that requests the data. If this post is a disguised version of "how do I serve all my DVD rips to all the computers in my house" then you probably won't ever have too many consumers to worry about. On the other hand, I work for an algorithmic trading company; we store enormous data sets (real-time market data) that range anywhere from a few hundred MB to upwards of 20 GB per day. The problem is that the traders are constantly doing analysis, so they may kick off hundreds of programs that each read several files at a time (in parallel via threads).
From what I've gathered, when such a high volume of data is requested from a network store, the problem isn't the network, it's the disks themselves. I.e., with a single sequential transfer, it's quite easy to max out your network connection: disk I/O will almost always be faster. But with multiple concurrent reads, the disks can't keep up. And note that this problem is compounded when using something like RAID5 or RAID6, because not only does your data have to be read, but the parity info as well.
So the object is to actually get many smaller disks, as opposed to fewer huge disks. The idea is to get the highest number of spindles as possible.
If, however, your needs are more modest (e.g. serving DVD rips to your household), then it's pretty easy (and IMO fun) to build your own NAS. Just get:
You might also want to purse the Ars Technica Forums. I've seen a number of informative NAS-related threads there.
One more note: lots of people jump immediately to the high performance, and high cost RAID controllers. I personally prefer Linux software RAID. I've had no problems with the software itself; my only problem is getting enough SATA ports. It's hard to find a non-server grade (i.e. cheap commodity) motherboard with more than six or eight SATA ports. It's even harder to find non-PCI SATA add-on cards. You don't want SATA on your PCI bus; maybe one disk is fine, but that bus is simply too slow for multiple modern SATA drives. It's not too hard to find two port PCI express SATA cards; but if you want to run a lot of disks, two ports/card isn't useful. I've only seen a couple of four-port non-RAID PCIe SATA cards. There's one eight port gem, but it requires PCI-X, which, again, is hard to find on non-server grade boards.
They don't do too badly for xfer speed and are quite reliable. They seem to use less power and aren't noisy like other NAS systems (especially the RYO).
Linux is their OS and if you need to add some functionality, you can get in and do it, but it works well out of the box.
RAID 5 or 6 with the 508
I've done the Windows SMB and it sucks for maintenance and you're back at RYO - patch and crotch rub. I've built many a linux box for this and, though they work, I have better things to do with my time. I really appreciate buying a few HD and sticking them into a box and having a system that can store data, xfer data, backup themselves, etc. in a matter of minutes.
Oh yes, compatible... via CIFS with most systems. NFS with Mac and Linux if you are so inclined. rsync for backup.
They are a little on the high end, cost wise for consumer boxes but they are very reliable, the firmware actually works WELL, they support NTFS and their network interfaces function up to spec. And they support Mac.
They make units from 1 bay SATA up to 4 bay 1U hot swappable dual 1Gb dual power supply rackmounts.
www.synology.com
Saying "Gigabit ethernet" means nothing. For instance, Intel SS4000-E comes with "dual gigabit ethernet ports". Wow. This must mean that it supports up to 2Gbps, right?
Wrong.
First, the two ports don't support link aggregation, they're independent. Second, instead of a real-world performance of about 50-70 MB/sec on a gigabit link, this unit gives you... wait for it... 5 to 10 MB/sec.
That's right, no typo there. Its CPU is so sleezy that that's all it can manage on small files. Large files get you up to 15MB/sec.
Ah, wrong.
This guy is talking about SOHO type NAS boxes, their cpu and network throughput is their bottleneck.
If he was talking about 'real' NAS, then that is very different (although it is still trivial to get a NAS that can saturate GBit for many workloads).
Our 16/32 drive Raid6 SATA raid arrays easily sustain 400MB/sec locally for moderately non-random workloads - there are workloads for which this of course does not apply, but since he is apparently moving around GByte lumps, it would not be his case.
SOHO NAS devices normally run out of grunt at around 6MB/secish, even for long linear reads, some do better at up to 25.
I am thinking your workload is TPC type database loads, dont assume everyones is (we have a mix of video files and software development, very different..). TPC type disk loads are a corner case.
We also love ATAOE but that is DEFINITELY not what he is looking for.
run "ethtool eth0" and have a look at the output. It's possible that it's autonegotiated a stupid setting like half-duplex or some lower speed.
Do the same with the windows box; that information is the properties dialog for the network device.
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. ...Someone once told me SAMBA will always be slow but I don't believe that to be true.
Well, for SAMBA tuning, try (pdf):
http://tinyurl.com/5rfjvu
Alternatively, if you don't need all the Win network support that SAMBA provides, you can install ext2ifs on the XP boxes and enjoy easy and fast access to your *nix volumes. Works well for me. Caution: Security issues...
http://www.fs-driver.org/index.html
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.
What you're expecting is really beyond the capability of common SOHO NAS equipment. These devices lack the RAM and CPU to approach the capacity of GB Ethernet.
Unless you're willing to roll your own, you should consider a better class of gear and spend your time arguing for the funds to pay for it (a NetApp S550, perhaps.) If you are willing to roll your own, you can get there for $1-2k using all new hardware.
Beware reusing older hardware; many GB NICs can't approach GBE saturation, either due to PCI bus contention or low end, low cost implementation. Yes, in some cases older hardware can get there, but this will require careful configuration and tuning.
You want a PCI-E bus, a decent 'server' class NIC, recent SATA disks, a modern CPU (practically any C2D is sufficient) and enough RAM (2-4 GB). Personally I stick to Intel based MB chipsets and limit myself to the SATA ports provided by Intel (as opposed to the third party provided by jaton, silcon image, et al.) Linux, md raid 10. Will saturate a GBE port all day long, provided your switch can handle it...
You're serving desktops so jumbo frames are probably impractical (because some legacy hardware on that LAN will not tolerate it.) If your managed (?) switch can provide VLANs you can multihome your critical workstations and use jumbo frames. This will get you more performance with less CPU load for 'free'.
Lurking at the bottom of the gravity well, getting old
While it is true that the outside of the disk is spinning faster than the inner portion, in a modern HDD there are also several times more sectors in those outer rings. So while strictly speaking the read times might be faster, the seek times are not, and may even be slower. The sectors might even be interleaved, making any such comparison almost meaningless.
However, as you say, benchmarking is the only way to really tell. Highly recommended.
8-9 MB/Sec? Really?
I was getting 45-60MB/Sec (basically drive speed) on an old dual-cpu 1Ghz Pentium 3. I had Linux and Samba and no GUI running on it.
Try throwing a low-end dual Core 2 (like an E5200) in an Intel board with a recent ICH chipset. Choose some -quality- drives, like WD RE3s, and a good network switch, like an SMC 8508-T if you don't have something already. Load Ubuntu from the mini.iso, no GUI, only Ubuntu Server and Samba.
"Sometimes, I think Trent just needs a cup of hot chocolate and a blankie." -Tori Amos on Nine Inch Nails
... to say that software RAID is almost invariably a poor solution. It is woefully slow compared to even a slow hardware RAID implementation.
Spend a few bucks and get the right hardware. It is not expensive these days.
This may have been true years ago, but it's not anymore. Modern CPUs can handle parity computations without a problem. As long as your controllers can support the throughput needed, there is no need for hardware RAID. After all, we have ZFS.
Storage is undergoing a massive paradigm shift and folks like EMC are being caught with their pants down. Their spindle cost and price per GB is just too high.
"Nature doesn't care how smart you are. You can still be wrong." - Richard Feynman
Wrong. Go do your homework.
I concur with this. Anything that says "GigE" only means that it's offering an interface that is compliant to the specification, not that it can pass 1000Mb/s.
A few days ago, I went digging for some information on switches. I'm a big Cisco fan, and I have specs on everything that I use. I know which of my switches can handle more traffic than others. That's kind of important.
Someone (to remain nameless) bought a GigE "switch". A name brand, but consumer grade switch. He wanted GigE because he had large files to transfer between several machines simultaniously.
"switch" by their definition in the user manual simply means hub, except it can amplify the signal. No actual switching involved, other than the fact that it can "switch" between 10Mb/s, 100Mb/s and 1000Mb/s. {sigh}
And the pps rates were pathetic. Actually, very pathetic. I broke out my spreadsheet of Cisco specs, and had to scroll down to the slowest, oldest switches that I can get my hands on. A base model Cisco Catalyst 2924 (not enterprise firmware). The 2924 handles 3 times the pps than this spiffy keen new "GigE switch". {sigh}
I only looked into it due to other network problems. Cascaded consumer grade switches in what should be a high speed operating environment. Nothing even came close to the old Cisco 2924. While I'm not advocating running a new enterprise on old 2924's, and the fact that there are much faster ones laying around waiting for a home, wouldn't it be prudent to use something else.
So the moral of my story.... Figure out what you're really dealing with, and don't look only at the label.
I was having a discussion with someone who does SAN work. He was all happy about his piece of equipment. I found out the specs of the components, and then priced it out with better PC based stuff running Linux. His did run Linux, but on a custom board. It was easy to out perform anything he had with better hardware, and even better drives. If I recall correctly, he veto'd the idea of switching because he had once tried it with a Windows based SAN, and it wouldn't work. Tried once. With some 3rd party crap. It didn't work. {sigh}
I'm slowly prepping a friends place to have a Linux machine be the SAN. Decent parts, standard protocols (SMB, NFS, and iSCSI). The only "slowly" part is that there is no rush right now, so when I see something that'll do it well, we buy the parts. Once we have all the parts, it'll be a running machine.
Serious? Seriousness is well above my pay grade.
The only shops that actually look at cost/GB as a measuring stick are small shops, or shops with very specific needs.
Large corporations, government and high tech companies are usually more concerned with management costs, retention, migration and so forth.
This is simply not true. There are plenty of commodity storage requirements that do not require Fibre Channel or even NetApp level NAS. On the other end of the spectrum, cost/GB might not be a huge factor, but the cost of getting necessary IOPS is certainly a factor.
I work on Wall St. and we have multiple PB of storage. We have tons of EMC. However, things like the Sun X4500 and similar products from HP are changing the game. Couple that with being able to do 48 ports of line-rate 10GigE in a 1 RMU stackable, per priority pause coming into use, and Data Center Ethernet down the road and you have many reasons to seriously reconsider the scope of your fibre channel deployment.
"Nature doesn't care how smart you are. You can still be wrong." - Richard Feynman
I have numbers to back it up: D-LINK DNS-323, 2x 500gb 5400rpm Samsung drives in Raid-1 configuration. I don't know the exact model, but I certainly selected these for low noise, low energy consumption and low heat output. So they're absolutely no high performers, but in regular, day-to-day operations, the Gigabit adapter manages a throughput at a steady 15 percent of 1000mbit push and pull from/to medium performance Windows workstations.
This NAS unit is on the market for well over a year and it took several firmware revisions before other problems were worked out - but raw speed above 100mbit was never an issue. I don't have any real high performance client workstations, so I cannot say if these steady 150mbit throughput is limited by client or the NAS itself, but it certainly is enough to max out any and all WiFi links, which is enough for many applications except full disk backups, which take some hours in any case.
I researched for a while before buying and got pretty much what other users described. I suggest you do the same so you can avoid the bad apples in the crowd of NAS units.
That's not Samba's fault. It's the TCP window size on XP that is the problem.
I have at home a cheap server running Ubuntu and Samba with older drives that max out at 35-40 MB/s.
Clients using OS X, Linux or Vista gets the full ~30 MB/s, but XP clients seem to max out at 10-15MB/s. After tweaking the TCP window size, I've gotten the speed up to 20-25MB/s.
I used 2 LaCies for a while, but they both had a throughput of 10MB/s (the NAS with XP as OS) and 6MB/s (LaCie with Linux).
Then I switched to Synology DS408. Mine has 4x Seagate 1.5TB HDs, RAID 5, so I have around 4TB of space.
The network throughput maxes out at around 60MB/s(!). But this might be due to my not-so-good switch. It's all on a Gbps-Network.
I used it only with Mac OS X (iMac, MBP, MBA, MB) with AFP. I haven't tested performance with SMB or NFS, but should be as fast as AFP (probably even faster).
One thing, which really convinced me of Synology, was their support. Since the Seagate 1.5TB HDs have some problems (make sure you buy those with Firmware >=SD1A), I had a lot of issues at the beginning and thought that it's a problem with the NAS. I even thought I lost data. When I contacted Synology, they offered to log-on on to the NAS and try recovery, local check and everything - for free. And in the end, they found the problem with the Seagate HDs, proposed the solution and I am now even more happy then before.
And no, I'm not working at Synology...
What misses in the specs is which processor is inside. I've got a MyBook World Edition that also has GigE, but the processor is so underpowered it barely reaches 10MB/s
Instead of FreeNAS, I've tried . I managed to configure an iSCSI target with DRBD as the datastore for my VMware ESX 3.5 server.
OpenFiler is neat and easy to use. Check it out too.
w00t
If the NAS supports the non-routable NetBeui protocal.
Install the optional "Netbeui" protocal stack located on the XP install disk. (same add-on will also work on Vista.)
Don't forget to disable (uncheck) the "QOS Packet Scheduler", it will limit you to 20-25% of max link speed.
Lastly, one must also disable the NetBIOS over TCP/IP, if it connects first you won't see any performance boost. (Option located in the TCP/IP Advanced/WINS dialog).
The older/non-routable NetBeui protocal stack in the NT/W2K days was roughly 10x more CPU efficient per byte than NetBios over TCP/IP.
In XP/Vista environments it's still 5x more CPU eff than NetBios over TCP/IP.
Unfortunately Using Samba is almost 10 years old by now, and some of the tuning advice might not be applicable any more. In particular, newer versions of the linux kernel (2.6.17+) have full tcp autotuning. But explicitly specifying buffer sizes (socket options SO_RCVBUF and SO_SNDBUF) will disable this autotuning. So using some value that was good 10 years ago (8192) might be pretty far from optimal these days.
The user believed he had increased performance, because his switch said "GigE" on it
Does his Cat 6 say "Monster Cable"?
I see even classic Slashdot is now pretty much unusable on dial up anymore.