NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.
Forum Discussion
Zurd
Jul 28, 2020Star
RN214 - Extremely slow with zip files
Hi, I have a ReadyNAS 214 and it used to be fine before but since about 6-8 months or so, it is extremely painfully slow to compress / decompress zip files. Is it normal? Why would it be so slow? Any...
StephenB
Aug 05, 2020Guru - Experienced User
Zurd wrote:
You suggested that I disabled the bond so I did. I also removed one ethernet cable, so now I only have one ethernet cable plugged and here is the result with a 312.8 MB zipped file with 766 folders and 5517 files inside:
The net here is that with bonding disabled we are getting similar results. That's assuming all your tests are extraction tests. You could use -t to see how all the clocks compare.
One potential problem with round-robin bonding is that when you are going from 2 gbps->1gbps you create congestion (because the NAS can put data on the wire twice as fast as the client can accept it). At some point the switch ends up dropping packets, because its buffers overun. TCP congestion control then kicks in. TCP congestion control is designed to back off the send rate sharply when packets are lost - to prevent the possibility of a network collapse. So in this particular scenario, you end up underutilizing the network capacity.
You might want to check if you have ethernet flow control enabled in the switch (often it is not on by default). If you enable that, you could try re-establishing the bond.
Zurd wrote:
No 7zip in command line is not restrictive, I can output or zip with a command from and to a NAS, I've done it plenty of times on different computers, no idea what problem you're having but it should work.
The problem I ran into is that -o lets me extract to a different folder, but it is ignored when zipping (at least in windows). No matter what I typed, the zip file was created in the folder I was zipping (not in the folder I was in). So I could have extracted NAS->SSD, but I couldn't zip NAS->SSD. This was in windows. I didn't spend a lot of time fiddling with it, as I normally don't use the 7za command line. In any event, you can see the commands I actually tested, as they were included with my results.
Zurd wrote:
So it is faster right now but I still think something is wrong, it should be faster. In your test of extraction (which are different tests that I did) from SSD to SSD (12s) compared to NAS to NAS (80 seconds), it is 667% slower, huge difference.
This difference appears to be latency (you can see the huge gap between process times and global time in my slow extraction).
So at the time I chalked that up to SMB. Extraction presents a very different load from zipping (reading one large file -> writing lots of small files vs. reading lots of small files -> writing one large file).
I'd expected that disabling strict sync would help on that particular test. But you didn't find that, which is interesting. My suspicion is that SSD tiering on the NAS would fix it - something I've thought about using, but haven't gotten around to trying.
If I get to it, I might try a NAS->SSD extraction test.
Zurd wrote:
Because of this, I think it's a good thing to not have it [strict sync] enabled. If you install Samba, it is not enabled by default. I wonder why Netgear would turn it on by default.
For one thing, most NAS users aren't using linux clients. FWIW I think the Samba documentation might be over-touting "unix reliability". While my Windows systems often did crash many years back, I haven't found that to be the case with Windows 7 or Windows 10.
I suspect Netgear is prioritizing data safety over performance. With the setting disabled, more writes are cached in the NAS. If the power on the NAS fails (or if it crashes) those writes are lost. That can increase the odds that the RAID array will be out-of-sync (resulting in a corrupted file system or a RAID array that can't be mounted). If the NAS is UPS protected, then you probably can safely disable it.
Zurd
Aug 05, 2020Star
Defragmentation took only 3h for 4 TB, that was fast!
2020 Aug 04 23:05:18 Volume: Defragmentation complete for volume z.
2020 Aug 04 19:55:07 Volume: Defragmentation started for volume z.
And the results are exactly the same, so we can now rule out fragmentation:
Laptop - Windows - From mechanical HD to mechanical HD = 16s
RN214 - SSH - From NAS to NAS =14.6s
Desktop - Linux - Wired - GUI - From NAS to NAS = 2m
Desktop - Linux - Wired - Terminal - From NAS to NAS = 1m 54s
Laptop - Windows - Wireless - From NAS to NAS = 10m 11s
Thanks for the explanation of the round-robin bonding congestion problem, that explains the problem quite well. I kind of wonder if I really need bonding (which I think is called 802.3ad), I only have a few devices at home, all on 1 gpbs except the laptop which is wireless, it seems pretty useless in my case.
But it would be a good test to have it configured and do another extraction test. However, my router has OpenWrt 18.06.2 and it seems possible to do it but a bit tedious so I don't think I will try that. Reference: https://oldwiki.archive.openwrt.org/doc/howto/mwan3
I understand what you mean by process time and global time and SMB latency, it really makes sense. The RN214 has USB ports, if it is possible to plug it as an external storage in my desktop, then it should be much faster if we bypass the network then? I'm reading the documentation but I can't see anywhere if you can do that. Can a RN214 works as an external hard drive with USB?
- StephenBAug 05, 2020Guru - Experienced User
Zurd wrote:
(which I think is called 802.3ad)
802.3ad is one method of bonding (also called LACP) - but that is not the method you were using. Not all switches support LACP.
Zurd wrote:
I understand what you mean by process time and global time and SMB latency, it really makes sense. The RN214 has USB ports, if it is possible to plug it as an external storage in my desktop, then it should be much faster if we bypass the network then? I'm reading the documentation but I can't see anywhere if you can do that. Can a RN214 works as an external hard drive with USB?
You have to use ethernet, there is no way to connect to your PC using USB.
You could test with NFS and see if that has less latency.
- ZurdAug 06, 2020Star
Too bad we cannot use the RN214 with USB as an external storage, that would have been a very interesting test.
For another test like you suggested, I just disabled SMB and enabled NFS, All squash and mapped to UID and GID 100 of my user in the ReadyNAS, then I mount it: sudo mount -t nfs 192.168.13.2:/VOLUME/SHARE /media/readynas/
For Windows, a bit more complex, you need to install "Service for NFS" in Control Panel, then modify the registry with AnonymousUid and AnonymousGid with a value of zero, reboot and run in terminal: mount -o anon \\192.168.13.2\VOLUME\SHARE Z: (there's is tutorial about this, just google it)
And here's the new results:
Laptop - Windows - From mechanical HD to mechanical HD = 16s
RN214 - SSH - From NAS to NAS =14.6s
Desktop - Linux - Wired - GUI - From NAS to NAS = 37s
Desktop - Linux - Wired - Terminal - From NAS to NAS = 31.5s
Laptop - Windows - Wireless - From NAS to NAS = 31m56
Wow! What a big difference in Linux! In terminal, it's now only 215% slower compared to extracting in SSH right in the NAS.
However, it is MUCH worse in Windows! It is 3 times slower, ouch. Seems like NFS doesn't play nicely in Windows. It was better with SMB.
In any case, it is more complex to use NFS than SMB and I read on the internet it is less secure than SMB and it's kind of deprecated today. Whatever the results was, I will still use SMB.
So, since it's really an issue of network latency and/or network protocol (SMB/NFS) overhead, that means that in the future, when my network is all 10 gbps (router, switch, ethernet card, cables), then it should be faster?
- StephenBAug 06, 2020Guru - Experienced User
Zurd wrote:
So, since it's really an issue of network latency and/or network protocol (SMB/NFS) overhead, that means that in the future, when my network is all 10 gbps (router, switch, ethernet card, cables), then it should be faster?
My tests were using a 10 gbps network (though I didn't try disabling strict sync).
- ZurdAug 09, 2020Star
Interesting, I would have guess that a 10 gbps network would have made a much more noticeable difference.
It's not a big test but I just tried something new. Before, I had my desktop wired into a small unmanaged switch (Netgear GS308v2) which goes into my router then the modem and my RN214 was going into my router. Now, both desktop and RN214 goes into the switch.
Laptop - Windows - From mechanical HD to mechanical HD = 12s
RN214 - SSH - From NAS to NAS = 14.8s
Desktop - Linux - Wired - GUI - From NAS to NAS = 1m52
Desktop - Linux - Wired - Terminal - From NAS to NAS = 1m51
Laptop - Windows - Wireless - From NAS to NAS = 10m27s
Pretty much no changes, it was kind of to be expected. Interesting to note that 7z decompress a file in terminal in 1m51 and the unzip command on the same file takes 4m42.
I might have another test to do with a managed switch in the future (just for fun) but for now you could consider this resolved by removing the bond I had because I didn't had any ethernet flow control in my router, now I'll just use one ethernet cable. I still find it slow but I guess that's to be expected from a NAS :)
Thank you very much StephenB, you have been very patient and helpful!
- StephenBAug 09, 2020Guru - Experienced User
I'm glad I could help.
Related Content
NETGEAR Academy
Boost your skills with the Netgear Academy - Get trained, certified and stay ahead with the latest Netgear technology!
Join Us!