Single Client Performance - CIFS and NFS on Linux

A CentOS 6.2 virtual machine was used to evaluate NFS and CIFS performance of the NAS when accessed from a Linux client. We chose IOZone as the benchmark for this case. In order to standardize the testing across multiple NAS units, we mount the CIFS and NFS shares during startup with the following /etc/fstab entries.

//<NAS_IP>/PATH_TO_SMB_SHARE /PATH_TO_LOCAL_MOUNT_FOLDER cifs rw,username=guest,password= 0 0

<NAS_IP>:/PATH_TO_NFS_SHARE /PATH_TO_LOCAL_MOUNT_FOLDER nfs rw,relatime,vers=3,rsize=32768,wsize=32768,namlen=255,hard,proto=tcp,timeo=600,retrans=2, sec=sys,mountaddr <NAS_IP>,mountvers=3,mountproto=udp,local_lock=none,addr=<NAS_IP> 0 0

The following IOZone command was used to benchmark the CIFS share:

IOZone -aczR -g 2097152 -U /PATH_TO_LOCAL_CIFS_MOUNT -f /PATH_TO_LOCAL_CIFS_MOUNT/testfile -b <NAS_NAME>_CIFS_EXCEL_BIN.xls > <NAS_NAME>_CIFS_CSV.csv

IOZone provides benchmark numbers for a multitude of access scenarios with varying file sizes and record lengths. Some of these are very susceptible to caching effects on the client side. This is evident in some of the graphs in the gallery below.

Readers interested in the hard numbers can refer to the CSV program output here.

The NFS share was also benchmarked in a similar manner with the following command:

IOZone -aczR -g 2097152 -U /nfs_test_mount/ -f /nfs_test_mount/testfile -b <NAS_NAME>_NFS_EXCEL_BIN.xls > <NAS_NAME>_NFS_CSV.csv

The IOZone CSV output can be found here for those interested in the exact numbers.

A summary of the bandwidth numbers for various tests averaged across all file and record sizes is provided in the table below. As noted previously, some of these numbers are skewed by caching effects. A reference to the actual CSV outputs linked above make the entries affected by this effect obvious.

WD My Cloud DL4100 - Linux Client Performance (MBps)
IOZone Test CIFS NFS
Init Write 78 35
Re-Write 74 38
Read 43 116
Re-Read 42 117
Random Read 25 65
Random Write 66 29
Backward Read 26 52
Record Re-Write 1547* 256*
Stride Read 40 113
File Write 74 38
File Re-Write 74 39
File Read 30 95
File Re-Read 30 96
*: Benchmark number skewed due to caching effect
Single Client Performance - CIFS & iSCSI on Windows Multi-Client Performance - CIFS on Windows
Comments Locked

27 Comments

View All Comments

  • kepstin - Wednesday, March 4, 2015 - link

    Hmm, you say "the board must definitely be sporting a PCIe - USB 3.0 bridge", but then don't bother to look up the PCI ids from the lspci output. The device "1b21" "1142" is an ASMedia ASM1042A USB 3.0 Host Controller.
  • pwr4wrd - Wednesday, March 4, 2015 - link

    Building a custom FreeNas or Nas4Free box depending on your needs is a much better solution than any one of these anemic underpowered and overpriced solutions. Presence of ZFS on FreeNas is by far the most critically important aspect. If data loss prevention and integrity top priority, which should be, there are two great articles by Robin Harris. These articles are titled "Has Raid5 Stopped working?" and "Why Raid5 stops working in 2009" can be found with a quick search. Mr. Harris clearly explains the inadequacy of Raid5 and 6 as viable storage solutions. As far as I am concerned, most of these off the shelf units are not good options for data safety. Considering the rock solid encryption option ZFS offers its value becomes even more important.
  • Black Obsidian - Wednesday, March 4, 2015 - link

    People considering COTS NAS boxes are doing so either because they're a business that needs real support, or a consumer who needs ease-of-use and hand-holding, all of which being areas that a custom FreeNAS/Nas4Free box utterly fails to deliver. While both are great products, their target market doesn't have much overlap with the target market of these COTS boxes.

    The articles by Robin Harris are unimpressive. He assumes that the advertised BER is a maximum, where in fact it appears to be a minimum (and several consumer lines advertise higher than 10^14 anyway). He also over-dramatizes an array rebuild failure due to read error; in that event, you simply create a new array from scratch and restore data from backups, since unlike Harris, you remember that RAID is a solution for AVAILABILITY, not backup.
  • pwr4wrd - Wednesday, March 4, 2015 - link

    I see your points. Our data is very important to us at our business. So we have to approach things as worst case scenario possibility. And some arguments made here make no sense. For businesses that NEED serious support this is NOT that SERIOUS of a product. And yes FreeNas does offer home/soho version of the product that was very well reviewed. For the individual that needs "hand-holding" availability of RAID means next to nothing. A simple back up drive from costco would do fine.
  • Spoogie - Wednesday, March 4, 2015 - link

    This has been debunked, which is why ZFS adoption has not taken hold.

    http://www.high-rely.com/blog/why-raid-5-stops-wor...
  • pbrutsche - Wednesday, March 4, 2015 - link

    Sorry, that link doesn't explain why ZFS hasn't taken hold.
  • Spoogie - Wednesday, March 4, 2015 - link

    The fact that IT pros haven't adopted it in in spite of this sort of debunked fear mongering makes it pretty clear. Don't believe it? Fine, then use ZFS if it makes you feel better.
  • pwr4wrd - Wednesday, March 4, 2015 - link

    How can you fear monger in order to capitalize on a free product?
  • dave_the_nerd - Wednesday, March 4, 2015 - link

    It's not free if you have to buy a support contract and consulting services from iXSystems.
  • dave_the_nerd - Wednesday, March 4, 2015 - link

    Are you running your business without support agreements/maintenance contracts on your servers? *horror*

Log in

Don't have an account? Sign up now