I think you neither have a cable nor a switch issue. The NAS is simply at its limit.
I have installed some D-Link DNS-323 as well and none of them did significantly higher transfer speeds than ~20MB/s in average. No matter what disks you put there. The reason is simply that the embedded Samba file server is limited by CPU speed and the CPU in the D-Link DNS-323 simply cannot handle any more data. Well, the limit might vary slightly on different firmware/Samba versions but I doubt you can reach much more. RAID-1 of course could limit the transfer speed further, but RAID-1 usually does not impose much CPU load as there is no calculation (like in RAID-5) required.
If you need more throughput you will have to replace the NAS by something faster.
It's also not related to the disks usually. Modern 5400rpm disks can easily read ~100MB/s in sequential mode. Even slow models shall reach ~50MB/s.
Another issue is protocol overhead and other protocol limitation. Some NAS offer the feature to transfer files via the very simple FTP protocol or using rsync. Some of them perform better on FTP than they do on SMB/CIFS vis Samba.
If you're using Windows Vista or 7 then you might also try to disable the "Remote Differential Compression" feature in Windows settings:
- Control Panel => Uninstall => Turn Windows Features on or off)
or
- type
ocsetup MSRDC-Infrastructure /uninstall
on an elevated command prompt
The reason why swithcing of RDC might gain some speed is that it reduces the CPU load in some situations and since this is the bootleneck for your DNS-323 you might give it a try.
EDIT: I've done some more research on the RDC service and found this. It clearly proves that RDC shall not have any impact on transfer speeds. Moreover it needs to be specifically used by an application and Windows does not seem to use it. So I would recommend not to disable it permanently. If you disable it and see some speedup after reboot it's likely that you would also have seen the same speedup just by rebooting. Although there is one aspect which is not covered by the article. In case an application really uses RDC the server would have to calculate checksums which is of course not a big deal for today servers and workstations. But for a NAS system it might be. So in rare cases it might be faster to just re-transfer the file instead of creating and exchanging checksums first.
Even pretty fast NAS devices often are limited to around 80MB/s. If you want to reach more you typically need a NAS/Server which supports SMB2 protocol. Enabling Jumbo-Frames might give some boost too but it needs to be supported by really all components in your network, including Router, Switch, Client and NAS. So if you're not a networking expert I recommend not to mess with MTU/Jumbo-Frames manually.
Another source of "low" Ethernet performance is of course the network interface card (NIC) itself. I've seen some performance drops on some older Marvell chipset when hardware TCP-checksum offload was enabled (seems to be some limitation on the number of checksums calculated by some NIC so the CPU could do it faster than the card). On the other hand I've seen network throughput increasing in very high bandwidth situations with hardware TCP-checksumming offload on Intel server NIC. So it really depends on the hardware.
However even without any tuning any consumer NIC (most widely used: Realtek) shall reach ~80MB/s RAW GBE throughput from a Samba server.
But back to topic: Your D-LINK DNS-323 will never be able to exceed the ~30MB/s limit I guess, simply due to hardware limitation. If someone has seen this device to perform faster I would be interested in the concrete setup too.
haha.. thanks for remembering! actually i just replaced my wires for this purpose.. http://goo.gl/sGfPi
– Sonic Soul – 2011-07-13T03:49:41.213you think maybe the RAID 1 write to 5400 drives is the bottleneck? – Sonic Soul – 2011-07-13T03:53:38.977
1@Sonic Soul First, I usually remember people, who are good enough to mark their answers, and I appreciate that. Second, I know that I have had a friend, who has had businesses with miserable performance with SATA RAID. If you can, see if you can break the raid, and test using just one drive. – KCotreau – 2011-07-13T04:00:48.397
crap.. was hoping not to have to mess with that.. but it is likely the culprit.. – Sonic Soul – 2011-07-13T04:02:15.227
looks like i'll have to live with it for another few years.. and then replace it with something that sucks less – Sonic Soul – 2011-07-13T04:02:50.263
i can verify this by copying files between my PC and macbook (bypassing the nas) .. if the speed is good, then nas wins by elimination – Sonic Soul – 2011-07-13T04:03:40.077
That should work as I cannot imagine any PC, unless it is pretty old, having anything less than a gigabit network card. – KCotreau – 2011-07-13T04:05:15.607
getting a 22MB/sec copy speed from NAS to PC. (6 min) a bit faster then RAID 1 write.. so far it seems inline with my theories.. – Sonic Soul – 2011-07-13T04:08:07.123
Yes, now if you can do the PC-Mac trnasfer, that should ice your answer. – KCotreau – 2011-07-13T04:09:58.650
too tired to plug in another network cable.. going to crash and dream of 100MB/sec transfers.. – Sonic Soul – 2011-07-13T04:12:46.370
@Sonic Soul I hear you. About 12:30 am here, and I am remoted into a server, fixing it. – KCotreau – 2011-07-13T04:26:44.910
eeek that's terrible. is it because it copies files too slowly ? ;) – Sonic Soul – 2011-07-13T12:10:53.587