published on in Featured Geekyness FreeBSD Samba ZFS

poor samba performance

If you have google’d for smb.conf settings to max your 1Gb (or 10Gb) ethernet based network and you still cannot seem to get beyond 30MB/sec, make sure you have this option:

socket options = SO_RCVBUF=8192 SO_SNDBUF=8192

Either commented it out, or set the buffer size to 128K (131072). Or larger.

I was helping a friend of mine troubleshoot his ZFS + Samba environment.

He was running FreeBSD 9.0 and Samba 3.5 and he had followed my previous guidelines on tuning Samba for FreeBSD

I was so used to these settings just working that I started to question his switch.

So, I ran iperf on his Windows 7 desktop and on his FreeBSD server. He got 980Mbit/sec

Finally, after carefully scrutinizing his smb.conf file, I saw the socket options = SO_RCVBUF… line and hypothesized that was the culprit.

After commenting it out and restarting Samba, his desktop went from 30MB/sec (both reads and writes) to 100MB/sec for reads and about 90MB/sec for writes to his Samba share.

Now his backups complete 3x faster than before.