Tipps

SSH Cipher wechseln – schneller Datentransfer mit weniger CPU-Last

Geposted in Linux, Planet, Tipps am 14. September 2011 um 14:00 von schneida – 9 Kommentare

Ich verwende gelegentlich meinen DD-WRT Router zum Download großer Daten aus dem Internet (so wie heute das neue Windows 8 Developer Image) um bei Downloadzeiten von mehreren Stunden diese in der Nacht, ohne laufenden PC durchführen zu können. Am DD-WRT hab ich dazu einen USB-Hub samt mehrerer 8GB USB-Sticks auf denen die Daten liegen. Weil ich zu faul bin einen lokalen FTP-Server oder einen Samba-Server auf dem Router aufzusetzen (und es den bereits knappen RAM noch mehr belasten würde), nutze ich meist SCP (aus mangeln eines voll-funktionsfähigen SFTP-Servers auf dem Router) um die Daten dann auf den lokalen PC zu transferieren. Ein Vorteil von SSH, die Verschlüsselung, bringt in diesem speziellen Fall allerdings einen großen Nachteil mit sich: der ohnehin nicht besonders schnelle Router (Broadcom BCM4785 CPU — 300 Mhz) wird durch die Encryption extrem ausgebremst. So pendelt sich die Datentransferrate mit den Defaultsettings bei ungefähr 400 KB/s ein (was im Vergleich zu meiner Internetanbindung mit 500 KB/s schon wirklich langsam ist). Leider gibt es keine Möglichkeit die Verschlüsselung komplett zu deaktivieren (wenn jemand doch eine kennt, bitte ich um Korrektur), aber man kann zumindest einen schnelleren Verschlüsselungsalgorithmus auswählen:

-c blowfish|3des|des
Selects the cipher to use for encrypting the session. 3des is used by default. It is believed to be secure. 3des (triple-des) is an encrypt-decrypt-encrypt triple with three different keys. blowfish is a fast block cipher, it appears very secure and is much faster than 3des des is only supported in the ssh client for interoperability with legacy protocol 1 implementations that do not support the 3des cipher. Its use is strongly discouraged due to cryptographic weaknesses.

Weil in diesem speziellen Fall die Verschlüsselung eigentlich komplett irrelevant ist, ist es auch komplett egal, wenn man einen unsicheren Cipher wählt. Mit dem blowfish Cipher pendelt sich die Datenrate bei mir bei immerhin 3 MB/s ein (um 750% schneller als mit dem 3des Cipher). Die Load des Routers steigt trotz dieses schnelleren Ciphers auf 2.5, es gäbe also noch Potenzial zur Verbesserung durch noch schnellere Verschlüsselungsverfahren (oder eben die komplette Deaktivierung).