Qu'est-ce qui limite les performances de scp?


13

J'ai deux machines Debian Linux connectées via un LAN 1 Gbit. Je peux mesurer cela avec un transfert de fichier HTTP brut avec wgetlequel obtient environ 100 Mo / s dans les deux sens.

Lorsque j'utilise maintenant scp, le maximum sans compression que j'obtiens est d'environ 15 Mo / s . L'activation de la compression avec l' -Cindicateur me donne, en fonction du contenu, jusqu'à 50 Mo / s .

Pourtant, il semble qu'il y ait beaucoup de bande passante gaspillée ici. Je n'ai pas pris la peine longtemps avant de vraiment penser à de très gros transferts de fichiers journaux et de réaliser à quel point c'est étrangement lent scp. C'est naturellement pour moi de l'utiliser scp, même dans l'environnement de l'entreprise, car toute l'infrastructure est mise en place pour cela.

Qu'est-ce qui limite autant les performances de scp? Est-il lié au processeur en raison du cryptage? Lorsque j'utilise, htopil semble qu'il n'utilise pas de processeurs multicœurs, un seul des quatre processeurs est au maximum.

Existe-t-il un moyen d'augmenter le débit? J'ai des serveurs HTTP et de la samba disponibles, mais pour déplacer des fichiers entre des machines Linux, j'utilise généralement SSH, c'est ainsi que j'ai grandi avec. Mais cela me fait maintenant réfléchir, il me semble que je dois envisager d'autres moyens de transfert pour de grandes quantités de données.

HTTP n'est utilisé que pour une application spécifique en PHP / Java / peu importe et samba est utilisé pour certaines raisons particulières auxquelles nous avons besoin d'accéder à partir de machines Windows.


La réponse de JooMing a fonctionné pour moi fabuleusement, mais l' -Coption de compression l'a rendue plus lente (21 Mo / s au lieu de 112 Mo / s). Veuillez donc faire attention avec -C.
math

Réponses:


7

C'est probablement le cryptage. Vous pouvez essayer scp avec différents chiffrements, par exemple:

scp -c arcfour src dest

Consultez la page de manuel de ssh_config pour les chiffrements disponibles. RC4 (arcfour) est un chiffrement rapide, mais probablement pas aussi sûr que certaines alternatives.


Il convient de noter que l'utilisation de RC4 n'est pas sécurisée et que les communications peuvent être interrompues facilement.
Evan Darwin

6

Cela peut être en partie lié à l'implémentation interne d'OpenSSH. Jetez un œil à HPN-SSH pour une explication décente pour une raison des goulots d'étranglement et des correctifs pour OpenSSH qui peuvent le résoudre (si vous êtes prêt à corriger et reconstruire à partir de la source).

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.