OpenSource NAS solution Syed Atif Ali Dated 03-Apr-2007
OR
Opensource NAS Server Dated: 03-04-07 Introduction : This document tests FreeNAS and OpendFiler accessed thru SMB/CIFS NFS protocol and check there performance over different tests. Objective: To find a reliable , cheap and commodity hardware based open source solution for NAS , the two options tested are OpenFiler and FreeNAS . Test Environment: Pentium 4 3.0 GHz 512 MB RAM 3x1 SATA 250 GB 7200 RPM hard drives To make RIAD 5 1x1 6 GB old hard drive to store OS 1000/100/10 Mbps network card (Connected at 100Mbps) Test plan : Test plan is simple , create different sizes of files on the storage server using both NFS and SMB protocol and check their performance . To minimize The file system cache multiple tests were performed and sync I/O was used to minimize the affect . The sizes of file used are Small file = 1K Medium file = 5M Big file = 100M Number of files created small files =1000 Medium files = 500 Big Files = 10 {small,med,big}{NFS,SMB} = small, medium and big files over NFS or SMB protocol Disclaimer: Both Openfiler and FreeNAS provide a lot more functionality than tested in this document. They both provide other protocols to support. This document does not checks that . This document should only be read in order to see the comparison of SMB and NFS usage in an environment. Author is interested in only these two protocols. using which these NAS servers will be used in his office.
Write Tests : Server
smallNFS
smallSMB
medNFS
medSMB
bigNFS
bigSMB
FreeNAS
real 0m8.179s user 0m1.244s sys 0m3.232s
real 0m6.927s user 0m1.216s sys 0m2.360s
real 4m34.098s user 0m3.868s sys 0m22.813s
real 35m27.237s user 0m5.496s sys 1m1.740s
real 1m48.207s user 0m1.484s sys 0m8.985s
real 13m55.671s user 0m1.600s sys 0m18.293s
OpenFil er
real 0m19.382s user 0m0.740s sys 0m3.580s
real 0m6.478s user 0m1.176s sys 0m2.148s
real 5m44.807s user 0m3.440s sys 0m20.421s
real 23m56.588s user 0m9.277s sys 1m20.393s
real 1m52.971s user 0m1.220s sys 0m7.616s
real 11m12.332s user 0m4.016s sys 0m37.230s
SMB preforms better on OpenFiler with significant difference as compared to FereNAS. FreeNAS edges out FreeNAS on NFS tests but with very little difference. I also found out that SMB implementation on BSD is known to be slow compared to Linux.
Time in Minutes
Write Tests 37.5000 35.0000 32.5000 30.0000 27.5000 25.0000 22.5000 20.0000 17.5000 15.0000 12.5000 10.0000 7.5000 5.0000 2.5000 0.0000
FreeNas OpenFiler
S mall NFS
S mall S MB
Med NFS
MedS MB
BigN FS
BigS M B
Different File Sizes over NFS or SMB protocol
Read Tests: smallNFS Server
smallSMB
medNFS
medSMB
bigNFS
bigSMB
FreeNAS
real 0m1.469s user 0m0.028s sys 0m0.260s
real 0m2.198s user 0m0.024s sys 0m0.204s
real 7m36.032s user 0m0.472s sys 0m21.029s
real 9m34.758s user 0m0.308s sys 0m26.010s
real 1m55.273s user 0m0.124s sys 0m7.924s
real 3m41.032s user 0m0.132s sys 0m9.761s
OpenFil er
real 0m1.263s user 0m0.028s sys 0m0.256s
real 0m1.150s user 0m0.032s sys 0m0.260s
real 4m24.180s user 0m0.424s sys 0m21.205s
real 8m57.914s user 0m0.320s sys 0m26.370s
real 1m33.185s user 0m0.192s sys 0m8.437s
real 3m32.674s user 0m0.184s sys 0m10.577s
Read Tests 10.0000 9.0000
Time in Minutes
8.0000
In read tests Open Filer shows better performance both in SMB and NFS protocol.
7.0000 6.0000 5.0000 FreeNas OpenFiler
4.0000 3.0000 2.0000 1.0000 0.0000 Sma Sma Med Med BigN BigS llNF llNFS SMB FS MB S SMB
Different File S izes Over NFS or SMB protocol
Some notes about both solutions : OpenFiler : Open filer on abrupt restart lost all the raid definitions and hence all the availability of data . I need to test this again , as after RAID creation i had not restarted machine after a proper shutdown. Before that the machine was abruptly shutdown due to power failure . FreeNAS : I could not find in FreeNas multiple share creation based on multiple folders . One way to achieve this is to create separate partitions for each share , but this is not practical as after creating RAID 5 on FreeNAS it recognized whole RAID partition as a single mount point. It also did not have any LVM support so that i could mount different Logical volumes . It also took 5 hours for FreeNAS to format a 460GB partition using UFS. FreeNAS distribution also makes troubleshooting a lot difficult as its just 32 MB distribution and does not contain all trouble shooting utilities. Being based on mOnOwall it will be a hassle to compile or update software . So what are we going to use ? Results clearly show that Openfiler overall gives better result than FreeNAS . Even though FreeNAS slightly edges out OpenFiler in WRITE tests as far as NFS protocol is concerned. Openfiler is easier to manage than FreeNAS . Based on Red hat clone rPath , its much easier to install or update . Another important aspect that needs to be kept in mind is that in case of a failure which distribution is easier to recover . I will consider again openfiler as it comes with standard Linux mdadm , and and LVM utilities . FreeNAS being based on mOnOwall , has to sacrifice a lot on achieving a small distribution status . The best thing about FreeNAS is that it can be installed on a USB or a Compact Flash card . But since we already had a small hard drive
this feature was of no importance to us .