Monday, May 31, 2010

FreeNAS vs Nexentastor

I've tested the performance of FreeNAS 0.7.1 stable (Build 5127) and Nexentastor Community Edition 3.0.2. I will not dig into the different features or the details of both WebGUIs.

For the tests I've used the following hardware

Server
CPU - Intel Core2Duo E6300 - 1.8 GHz - 2 MB Cache
RAM - 2 GByte
Mainboard - Intel DG965WH
Harddisks - 3x WesternDigital WD3200 (320 GByte connected to the onboard SATA2)

Client
My good old MacBook Pro (late 2008), 4 GByte RAM, Mac OS X 10.6.3

Software
iSCSI initiator - Global SAN iSCSI initiator (4.0.0.204)
Benchmark Software - XBench
Benchmark Software - Helios LAN Test
Benchmark Software - iozone (MacPorts)

Protocols
CIFS
NFS
AFP (currently only available for FreeNAS)
iSCSI

Benchmarks
Xbench - The best out of 5 results

Helios LAN Test - 10 tests, two times, best result
iozone - options -e -i0 -i1 -i2 -+n -r 256k -s2g -t4 -c -x

Tuning
No tuning on the Nexentastor. For FreeNAS I've enabled in the WebGUI System | Advanced | Tuning (enable tuning of some kernel variables)

CIFS
Keep in mind, I've tested CIFS with the built-in smb client of OSX. A native Windows OS might provide different results.

Tuning for FreeNAS (via WebGUI)
Services | CIFS/SMB | Settings
-> Send and Receive Buffer Size to 65535
-> Enable large read/write
-> Auxiliary parameters : max xmit = 65535
-> Auxiliary parameters : socket options = TCP_NODELAY SO_SNDBUF=65535 SO_RCVBUF=65535


















If you compare the CIFS results you will see that NexentaStor is slightly faster than FreeNAS

NFS
I wasn't able to get XBench to run on a FreeNAS NFS mountpoint. So you wont see any results on the XBench charts.




With the missing XBench results for FreeNAS I would say NexentaStor is here the winner. It provides slightly higher throughput rates.

AFP
NexentaStor doesn't provide this protocol. As I am a Mac user it is very useful to have a system serving data via AFP. Especially the support of FreeNAS for time machine is IMHO excellent (see my blogposts about backup and restore using FreeNAS and time machine)




FreeNAS is in this disciplin the clear winner.

iSCSI
There was also an issue to get iozone to run on a FreeNAS iSCSI target.





The iSCSI protocol shows several advantages compared to the other. It shows high throughput rates with a low latency. But it is not usable to share the LUN to several systems at the same time (it is possible with special Filesystems, I know, but I think this is not very common). With the lack of the iozone results for FreeNAS I would also say, Nexentastor is here the winner.

Overall comparisson











Conclusion
FreeNAS and Nexenta is on the performance side very much comparable. NexentaStor is slitghly faster in most of the disciplines, but the lack of AFP make them both overall equal.
FreeNAS is easy to setup and has a very clear and structured WebGUI. Nexenta has more features (e.g. built in snapshots, deduplication, etc.)
At the moment I definitely will stay with FreeNAS as the performance is comparable and I really like the integration of Time Machine via AFP.

P.S.: If you are interested in a detailed Excel-Sheet with more details, please drop me a mail harryd71 at users dot sourceforge dot net

12 comments:

harryd said...
This comment has been removed by the author.
Unknown said...

Did you format the drives on both system with ZFS?

harryd said...

Felipe, yes you are right, both configurations uses ZFS.

fak3r said...

wow, what a complete look at both, I've run FreeNAS for years now, and it's amazing - have looked at Nexenta, but just to get it running, no real world testing; so this tells me a lot. I'm honestly not too surprised that FreeNAS holds its own so well, it's all the same basic tools, but Nexenta has some killer features in its own right. I've build a 6 node, 100 TB cluster running Debian (Squeeze) with GlusterFS, and it's been solid, but I suspect a Nexenta approach would offer more performance, but it's not completely free. Still, cool to know the options out there. Thanks again.

Anonymous said...

2Gb RAM not enough for nexenta best result, freebsd zfs cant be faster than opensolaris zfs with >8gb ram and more disk in pool!

Drew Morris said...

If both of them have ZFS doesn't that mean that freenas has snapshots and deduplication as well?

harryd said...

@Drew: I've disabled dedup and snapshot during the test (for nexentastor). FreeNAS uses an old version of ZFS and has no deduplication.
FreeNAS and snapshots, please have a look here -> http://harryd71.blogspot.com/2009/10/freenas-07-zfs-snapshots-and-scrubbing.html and here -> http://harryd71.blogspot.com/2008/08/freenas-07-and-zfs-snapshots.html

harryd said...

@Anonymous: I don't want to get the best result. My intension was to compare both OS on the same system.
I am sure there are systems out there which perform much better...

Anonymous said...

Problem I had was that FreeNas didn't support the version of my zpool (I was running opensolaris but ditched this in favour of an appliance model). So I was forced to go Nexentra - and I have to say I'm quite impressed: both with the ease of use and the speed.

Dony IT Pro said...

I'm very impressed because other people say that freeNAS was a little slow for some operations and i'm studying both, cause they're good systems!
IMHO freenas is much flexible running well on little systems and big systems (hardware) and nexenta (opensolaris) needs more hardware and would be more efficient in a hardware for server (faster cpu, lot a memory and fast disks)for your better performance.

Excelent Article.Congratulations Harry

Unknown said...

Superb, thorough comparison - I commend you for taking the time to do this. I will have to give Nexentastor a spin (long time FreeNAS user).

harryd said...

As Dony already commented, FreeNAS is much more flexible on smaller systems. I have here a Nexentastor system to archive lots of stuff (C2D 2.4 GHz, 4GB, Pool with 12 disks 5TB usable space). With dedupe and compression enabled it is slow. E.g, a scrub of the pool takes around 9 days (without any load on the system!)
My recommendation, if you have a small system, stay with FreeNAS!