Avec la démocratisation des accès internet à haut débit (merci Free et ses 8Mbit/s), on arrive à un constat étonnant : la copie de fichiers par SSH ou SCP reste souvent relativement lente (de l'ordre de 2Mbit/s), quelle que soit la puissance des machines encodant et décodant le flux.

Chris Rapier et Michael Stevens ont analysé le problème (taille des buffers d'Openssh), et proposent un patch ainsi que des mises à jour, sur leur site : High Performance Enabled SSH/SCP. Pour aller encore plus loin, on peut coupler leur patch à l'utilisation du protocole Blowfish, plus rapide (mais moins sécure ?) que le protocole par défaut.

Merci à Frank pour avoir trouvé cette info !

J'en profite pour parler d'un de mes vieux patchs contre une vieille (forcément) version d'openssh (trouée, ne l'utilisez plus). Il s'agissait d'envoyer des paquets keepalive pour maintenir le flux quand on souhaitait faire passer du ssh à travers un proxy http, en utilisant corkscrew.

La bonne nouvelle, c'est qu'il semble que les developpeurs d'openssh aient enfin repris l'idée : application layer keep alive (options: ServerAliveInterval ServerAliveCountMax). Ca n'a pas encore l'air parfait d'après mes tests, mais d'ici quelques releases, ca devrait marcher.

Et tant que j'y suis, je vous rappelle que depuis peu, openssh intègre un système de multiplexage de connexions ssh. Il s'agit d'avoir une seule authentification et une seule paire de ports ouverts, et de créer et faire passer plusieurs nouveaux flux quand on le souhaite.