Intereting Posts
Cu оставляет символы призраков в командной строке в xterm Какую установку я должен выбрать из CentOS, чтобы иметь ее как dom0 xen host? Проблема сортировки нескольких столбцов Unix Какое хорошее, небольшое распределение для строительства прибора? Запуск интерактивного Java-кода с qsub Как запустить программу несколько раз с разными аргументами, используя цикл в сценарии bash? Пропуск PCI без VT-d Возможная утечка памяти плиты, связанная с био и btrfs? Маршрутизация трафика NTP на малиновом PI Как заставить Wicd использовать другие драйверы в Debian 7.2 Xfce? Создание задачи Cron для уничтожения остановленных / неудачных прогонов в системе Преобразуйте строки в целые числа и сравните Как снова включить ключ блокировки колпачка? grep для конкретного процесса в ps, но не для самой команды grep Существует ли (предпочтительно не-kludgey) способ избежать орфографических исправлений при использовании команды zv `mv`

Способы оптимизации производительности в трубопроводах по сети (RSH и SSH)

Рассмотрим передачу данных по сети конвейера в унаследованных системах с удаленной оболочкой (RSH), например:

rsh host -l user tar -cf - /home/dir \| compress | uncompress | tar -xvf - 

и это в «современных» системах:

 ssh user@host tar -cf - /home/dir \| gzip | ungzip | tar -xvf - 

ПРОБЛЕМЫ С ПРОИЗВОДИТЕЛЬНОСТЬЮ:

Я испытал очень плохую производительность при передаче от AIX 4.3 до AIX 5.3 с использованием RSH. Даже имея незанятые карты (10/100), соединяющие их через переключатель бездействия, я получил производительность около 350 Кбит / с, передавая 5,4 ГБ.

При запуске этой передачи между AIX 5.3 и Linux, но теперь с использованием SSH и gzip, производительность намного лучше, но никогда не достигает пропускной способности сети (в 1 гигабитной локальной сети я получил в среднем около 400 Мбит / с).

Существуют ли способы оптимизации производительности сетевого конвейера, возможно, настройка буферов каналов или сетевых блоков / буферов или что?

Я думаю, что вы получаете ограниченный процессор, а не ограниченную пропускную способность, по крайней мере, на части ssh.

Я получаю около 45-50 МБ / с с scp (ssh cp) между двумя другими бездействующими серверами, поскольку шифрование / дешифрование на серверах является ограничивающим фактором. Добавьте gzip / ungzip, и вы можете упасть дальше в зависимости от количества доступных ядер.

У несжатых и незашифрованных передач есть лучшие числа. Вы можете попробовать без команд сжатия и посмотреть, как это происходит.

Проводили ли вы базовый тест скорости, чтобы исключить сжатие и дисковый ввод-вывод?

Это довольно легко сделать, подключиться с одного из зараженных хостов к другому через ftp и запустить
put "|dd if=/dev/zero bs=1M count=1000″ /dev/null
который будет считывать 1GB с / dev / zero с одной стороны и записывать его в / dev / null с другой стороны, что проверяет чистую пропускную способность сети. Это описано более подробно, например, на
Блог AIXChange: два способа измерения производительности сети

Для передачи через scp вы можете попытаться уменьшить шифрование с помощью менее требовательного потокового шифрования (RC4) через -o Cipher=arcfour ... в качестве опции для scp.

См. Также связанный с этим вопрос, предполагающий использование -C для включения сжатия, хотя из того, что я понял в вашем случае, производительность процессора является ограничивающим фактором, а не пропускной способностью сети, поэтому сжатие, вероятно, ухудшит ситуацию.