Since the processor in a NAS system is not designed to do encrypting (like x86 has instruction sets for it), standard copying via SSH or Rsync can give horrible speeds.
For example, on my EDMini i get speeds up to 1,4 Mb/sec and on my Networkspace2 i get 3,4 Mb/sec. Since these are horrible speeds to achive, even Samba gets higher speeds, it’s wise to think about the type of encryption used between 2 machines.
Since i need to copy/move alot of data via my NAS and my home server (all same home network), I do not need 128-bit encryption. There is a “NONE” encryption type, however, that does not seem to be supported both on my NAS and server. Then there is the lowest type of encryption called “Arcfour”, which will be used from now on between my 2 machines.
To start a SCP transfer with this encryption type, do (does not matter if it’s from NAS to server or the other way around):
scp -c arcfour FILENAME user@machine:/directory/
For rsync:
rsync -e 'ssh -c arcfour' FILES user@machine:/directory/
With FILES
being the directory, files or * you want to copy and user@machine
being the user and host copying to and /directory
being the target directory. Be sure to check out the manpages for the commands for more info:
man ssh
man scp
man rsync
When using this encryption type I get up to 3,5 Mb/sec on my EDMini and up to 8 Mb/sec on my Networkspace2!
There is also the -C
flag, that enables compression, but as you can imagine, that gives a huge load on the CPU to encrypt and compress as well, so it’s best not to use that option on your NAS!
I use duplicity to create the encrypted deltas and then rsync with zero encryption. Seems to work quite well.
Thanks for the tip, I’ll check that out :)!
If you use openssh, a handy feature is the .ssh/config file (see man ssh_config)
If you put something like this there, you will never forget to set the cipher 🙂 :
Host lacie
User jvhaarst
Ciphers arcfour,blowfish-cbc,aes256-cbc,aes256-ctr
Compression no
Thanks for your comment! I’ll update my post with your supplied information :).