DIY NAS performance tips

  • ATTENTION! As of November 1, 2020, you are not able to reply to threads 6 months after the thread is opened if there are more than 500 posts in the thread.
    Threads will not be locked, so posts may still be edited by their authors.
    Just start a new thread on the topic to post if you get an error message when trying to reply to a thread.

00Roush

Very Senior Member
Figured it might be helpful to put all of the setting changes I have found to increase file copy performance in one place.

Lets start with settings on client computers.

Windows XP Home/PRO as the client:

Using a large system cache can help increase performance on some clients. See post #8 in the following link for information on how to set this. http://forums.smallnetbuilder.com/showthread.php?t=736

Turning off NetBIOS can also increase performance a little bit (1% or so) but you no longer can access shares by using names when it is turned off. To access shares with NetBIOS off you need to know the IP address of the computer you are trying to connect to. For example you would need to use \\192.168.0.10 to access a SMB share instead of just typing \\computer. Turning this off also cuts down on network traffic in general. If you are interested here is the link to show you how... http://malektips.com/xp-network-disable-netbios-tcpip.html

In general these are the only two setting changes on a Win XP client that I have actually seen consistently increase performance. I have tried many others but in a LAN setting none have consistently increased my performance. Along with that I want to note that overall I found that the Win XP file copy engine is only capable of 60-70 MB/sec max for file copies to/from network drives in a best case scenario. So far the only program I have found that gives better performance in Win XP is one I created. If you want to know more about that program check out these threads... http://forums.smallnetbuilder.com/showthread.php?t=1685&page=2 and http://forums.smallnetbuilder.com/showthread.php?t=1762

Vista SP1 as the client:

In my experience Vista SP1 does not need any changes to get high file copy speeds to/from networked drives right out of the box. That is provided no audio or video media is being played during the file copy. By design Vista throttles network bandwidth when audio/video media is being played to ensure the highest quality playback. If you still want high speed file copies while audio or video media is being played see post #6 in this thread... http://forums.smallnetbuilder.com/showthread.php?t=899

Linux/Ubuntu as the client:

I have not used Linux as a desktop machine very much so I don't have any tips to give for this one. Maybe others can chime in.

Server settings:

Windows XP Home/PRO as the server:

Use a large system cache setting for the best performance. See post #8 from this link... http://forums.smallnetbuilder.com/showthread.php?t=736

Along with that changing the registry setting HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\size to 3 (decimal) will help maximize performance in a file server role.

As mentioned above disabling NetBIOS can increase performance at the cost of convenience for all Windows versions from 2000 on.

(For SP2 only I think) One other thing that might improve performance is to disable the Windows firewall/ICS service. Here is the Microsoft KB describing how to do this and what the problem is. http://support.microsoft.com/kb/842264

Vista SP1 as the server:

I would recommend making the change I outlined for "Vista SP1 as the client".

Also I have found that if I did not change the Lanmanserver Size setting in Vista I would get a connection lost error on my client when trying to transfer large files. So I recommend changing HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\size to 3 (decimal) on Vista as well when used as the server.

Ubuntu Server as the server:

From my testing I have found that Ubuntu Server gives good SAMBA performance right out of the box. Maybe some others can chime in if they know of some settings that can help network/samba performance.

FreeNAS, Openfiler, and most other linux OSes as the server:

In my testing with FreeNAS and Openfiler I found that at the bare minimum the SAMBA send and receive buffer settings need to be changed to get high speed file transfers. The default settings are too low. "socket options = SO_RCVBUF=65536 SO_SNDBUF=65536" needs to be added to your smb.conf file. FreeNAS allows these settings to be set in the web interface for the CIFS setup.

Other tips:

I wanted to also add a few more things that should be done on any client or server... Ensure that network drivers are up to date on all machines. Make sure to enable all offloading functions your network card is capable of. Also if available increase the transmit and receive buffers of the network card. Turn on interrupt moderation/coalescing if available. I would also stick with standard sized frames. Or at least get things up and running then test with both to see if there is a difference in performance. So far I have not seen a difference with my computers here at home. Jumbo frames are not part of the IEEE 802 standard and can cause problems as not all devices can deal with them. http://en.wikipedia.org/wiki/Jumbo_frame

I am by no means an expert so feel free to ask questions, correct anything that looks wrong, or post some of your own tips.

00Roush
 
Last edited:

00Roush

Very Senior Member
Feel free to post up if these tips did actually help you improve performance, or even if they didn't. I would love to see feedback on what works and what doesn't.

00Roush
 
Last edited:

jdabbs

Super Moderator
Unfortunately, bobtom115 and Chinelle are both spambots.
Bob was easy to spot, but Chinelle avoided suspicion by referencing XP Home. Both however, did have spam links that were hidden by using the background color. I left sanitized versions of the link as a demonstration.

To somewhat contribute to this thread, you should still be able to work around the loss of name resolution caused by disabling NETBIOS by populating the HOSTS file.
 

hybris

New Around Here
Hello,

My performance tip for softraid systems is to always choose RAID-10 over RAID-5. Please see

http://www.miracleas.com/BAARF/BAARF2.html
or
http://www.cyberciti.biz/tips/raid5-vs-raid-10-safety-performance.html

These are, somewhat, one sided views of RAID-5 vs RAID-10 but in my personal experience with NAS-storage they have some very good points. Rebuilding when a drive fails is faster in RAID-10. The write performance difference on softraid systems is massive! Read performance is also higher in RAID-10. I recommend using RAID-10!

/hybris

System:
Debian 5 Lenny, 64-bit(x64), softraid, Webmin, 4GB, 4xSeagate 7200.11 in RAID-10, Antec P181, Corsair 500W. Iozone gives ~85MB/sec write, 110+MB/sec read with 4GB-files.
Network:
router DLink DIR-615, switch DLink DGS-1008D.
 

FireWire

New Around Here
Improve transfer rate

My current DIY NAS at home consistent of:

1x ITX-220
1x 512MB DDR2
1x SMP394
1x 1GB USB pen
I was able to get transfer rate up to 95MB/sec peak and sustain about 55~65MB/sec

All the tests and trials are pointing the hardware raid really help.

So use hardware raid, I prefer this hardware raid because it is driver less raid array, but i think any hardware would work
 
Last edited:

foodmonkey

New Around Here
when connecting to a NAS device from linux - don't use the smbclient connection - there's some problems with the samba client side of things with linux.

over a 1Gb lan connection it was throttling me back to 100Mb - went to NFS and on occasion i see almost peak throughput on the network

environment

client Ubuntu (Gnome) 17.10 (multiple clients all at some software level)
server Rockstor on Centos

NOTE: samba bottleneck does NOT affect windows clients

further to the softraid mention
raid 5 is going to give you better disk utilisation albeit with the dreaded raid5 hole if a drive fails
raid 10 - yes - best balance for throughput and redundancy but you gotta throw a whole lot of drives at it

i've dipped my toe in the freenas pool and found it a bit memory hungry - i'm supplier agnostic BTW

currently running a frankenNAS
an old ASROCK mobo with a AMD Athlon II 64 4G memory - a couple of fans
but i managed to find an old lsi HBA pcie card and an old HP 4 drive hot swap drive cage
dremel tool, drill and some paint and managed to squeeze it into an old case

this thing is running RockStor with the emby server docker - 4 sas drives in raid10
has been ticking along 24x7 for 3 months now and no glitches - no dramas

as a stress test - attached 7 clients all playing different media files (although 2 were playing the same file but at different time points)

dual cpus and 4G of memory handled it without any drop outs or stuttering.
server settings available on request

other advice - try to keep your drives at constant temp - prolongs the life
 
Similar threads
Thread starter Title Forum Replies Date
D NAS and disk recommendations DIY 2

Similar threads

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top