== What influences SSH's bulk transfer speeds A number of years ago I wrote [[How fast various ssh ciphers are SshSpeed]] because I was curious about just how fast you could do bulk SSH transfers and how to get them to go fast under various circumstances. Since then I have learned somewhat more about SSH speed and what controls what things you have available and can get. To start with, my years ago entry was naively incomplete because SSH encryption has two components: it has both a cipher and a cryptographic hash used as the [[MAC http://en.wikipedia.org/wiki/Message_authentication_code]]. The choice of both of them can matter, especially if you're willing to deliberately weaken the MAC. As an example of how much of an impact this might make, in my testing on a Linux machine I could almost double SSH bandwidth by switching from the default MAC to 'umac-64-etm@openssh.com'. (At the same time, no other MAC choice made much of a difference within a particular cipher, although hmac-sha1 was sometimes a bit faster than hmac-md5.) Clients set the cipher list with _-c_ and the MAC with _-m_, or with the _Ciphers_ and _MACs_ options in your SSH configuration file (either a personal one or a global one). However, what the client wants to use has to be both supported by the server and accepted by it; this is set in the server's _Ciphers_ and _MACs_ configuration options. The manpages for ((ssh_config)) and ((sshd_config)) on your system will hopefully document both what your system supports at all and what it's set to accept by default. Note that this is not necessarily the same thing; I've seen systems where _sshd_ knows about ciphers that it will not accept by default. (Some modern versions of OpenSSH also report this information through '_ssh -Q