Що обмежує продуктивність scp?


13

У мене є два пристрої Linux Debian, підключені через 1 Гбіт LAN. Я можу виміряти це за допомогою необмеженої передачі файлів HTTP, wgetяка отримує близько 100 Мб / с в будь-якому напрямку.

Коли я зараз використовую scp, максимум без стиснення, який я отримую, становить близько 15 Мб / с . Увімкнення стиснення з -Cпрапором дає мені, залежно від вмісту, до 50 Мб / с .

Тим не менш, багато пропускної здатності тут втрачено. Я довго не морочився, поки мені справді не довелося думати про дуже великі передачі журналів і просто зрозумів, наскільки дивно повільний scp. Мені, природно, користуватися scp, навіть у компаніях, тому що вся інфраструктура створена для цього.

Що настільки обмежує продуктивність scp? Чи пов'язаний процесор через шифрування? Коли я користуюся, htopто, здається, він не використовує багатоядерні процесори, лише один з чотирьох процесорів максується.

Чи є спосіб збільшити пропускну здатність? У мене є HTTP-сервери та самба, але для переміщення файлів між Linux-машинами я зазвичай просто використовую SSH, саме таким чином я виріс із цим. Але це зараз змушує мене замислитися над цим, здається, мені потрібно розглянути інші способи передачі для великої кількості даних.

HTTP використовується лише для конкретного застосування в PHP / Java / що завгодно, а самба використовується з якихось особливих причин, нам потрібен доступ з машин Windows.


Відповідь JooMing працювала для мене казково, але -Cваріант стиснення зробив це повільніше (21 МБ / с замість 112 МБ / с). Тож будьте обережні -C.
математика

Відповіді:


7

Напевно, це шифрування. Ви можете спробувати scp з різними шифрами, наприклад:

scp -c arcfour src dest

Перевірте сторінку керування ssh_config про наявність наявних шифрів. RC4 (arcfour) - це швидкий шифр, але, ймовірно, не такий безпечний, як деякі альтернативи.


Слід зазначити, що використання RC4 не є безпечним, а комунікації можна легко порушити.
Еван Дарвін

6

Частина цього може бути пов'язана з внутрішньою реалізацією OpenSSH. Погляньте на HPN-SSH для гідного пояснення однієї причини вузьких місць та патчів до OpenSSH, які можуть вирішити це (якщо ви готові виправити та відновити з джерела).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.