SSH(SCP)でディレクトリ丸ごと、通信を圧縮してアップロードしてみる

scpを使う。

scp -C arcfour128 -r targetDir username@hogehoge.jp:/home/username/

-r をつけるとディレクトリを丸ごとコピーしてくれる(上書きされるので注意)。

-C オプションをつけると通信を圧縮してくれるのでアップロードが速くなる。

使える暗号化方式は

man ssh_config

で調べられる。

Ciphers(暗号)の項目を見つける。

Ciphers
             Specifies the ciphers allowed and their order of preference.  Multiple ciphers must be comma-
             separated.  If the specified value begins with a `+' character, then the specified ciphers will
             be appended to the default set instead of replacing them.  If the specified value begins with a
             `-' character, then the specified ciphers (including wildcards) will be removed from the
             default set instead of replacing them.

             The supported ciphers are:

                   3des-cbc
                   aes128-cbc
                   aes192-cbc
                   aes256-cbc
                   aes128-ctr
                   aes192-ctr
                   aes256-ctr
                   aes128-gcm@openssh.com
                   aes256-gcm@openssh.com
                   chacha20-poly1305@openssh.com

             The default is:

                   chacha20-poly1305@openssh.com,
                   aes128-ctr,aes192-ctr,aes256-ctr,
                   aes128-gcm@openssh.com,aes256-gcm@openssh.com,
                   aes128-cbc,aes192-cbc,aes256-cbc

             The list of available ciphers may also be obtained using "ssh -Q cipher".

aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,

arcfour256,arcfour,aes192-cbc,aes256-cbc,aes128-ctr,

aes192-ctr,aes256-ctr

暗号化方式 スループット
aes128-cbc 36.6MB/s
3des-cbc 11.5MB/s
blowfish-cbc 41.7MB/s
cast128-cbc 32.6MB/s
arcfour128 83.3MB/s
arcfour256 83.3MB/s
arcfour 79.0MB/s
aes192-cbc 31.9MB/s
aes256-cbc 28.9MB/s
aes128-ctr 30.6MB/s
aes192-ctr 28.3MB/s
aes256-ctr 25.9MB/s

参考:

http://d.hatena.ne.jp/rx7/20101025/p1