Мне интересно, сжимает ли SSH свои данные перед отправкой / получением? Если по умолчанию нет, то можно ли его включить?
Вы можете включить сжатие gzip на любом SSH. Поместите Compression yes
в свой ~/.ssh/config
, и оно должно работать. Или попробуйте запустить ssh
с опцией -C
.
Со страницы руководства ssh (наберите man ssh
, чтобы увидеть все):
-C Requests compression of all data (including stdin, stdout,
stderr, and data for forwarded X11 and TCP connections). The
compression algorithm is the same used by gzip(1), and the
“level” can be controlled by the CompressionLevel option for pro-
tocol version 1. Compression is desirable on modem lines and
other slow connections, but will only slow down things on fast
networks. The default value can be set on a host-by-host basis
in the configuration files; see the Compression option.
Так что просто измените:
ssh hostname
на:
ssh -C hostname
Вы можете включить сжатие с помощью -C
, но оно не будет работать, если серверу не разрешено тратить на это мощность ядра, не разрешив сжатие для этого. Например, из-за этого я изменил расположение хоста некоторых собственных данных со Strato на мой сервер. Я распознал это из-за использования медленной загрузки 2 Мбит и соединения загрузки 0,3 Мбит и проверил разницу в скорости в зависимости от уровня сжатия, поскольку более высокий уровень не всегда быстрее, так как он потребляет мощность вашего процессора или сервера.
но в моем случае это делает хорошую работу, поскольку сокращает необходимое время до 6-го числа времени раньше.
Нет и да. Вид. Иными словами, он поддерживает сжатие (zlib или zlib-ish, насколько я помню), но в стандартной копии OpenSSH не включено по умолчанию, хотя некоторые дистрибутивы могут включать его по умолчанию (я не думаю, что Ubuntu делает ).
Подробнее см. man ssh_config
. Вы ищете опции Compression
и CompressionLevel
, которые затем можно установить в /etc/ssh/ssh_config
.
Обратите внимание, что есть также опция Compression
для серверной стороны в sshd_config
, которая определяет, разрешено ли сжатие (по умолчанию). Снова, см. man sshd_config
для деталей.
Вы также можете включить сжатие для каждой сессии, используя опцию командной строки -C
.
Обратите внимание, что сжатие может фактически оказать отрицательное влияние на производительность, если соединение между вами и сервером быстрое (например, в одной локальной сети или только при действительно хороших интернет-соединениях) или одна или обе стороны имеют медленный процессор (сжатие потребляет немало времени процессора).
1114 В эти дни для большинства людей я бы предложил использовать его только по мере необходимости. Обычно для каналов со скоростью менее 5-10 Мбит / с и только при передаче большого количества объемных данных (передача несжатых файлов, пересылка X11 или VNC и тому подобное).
Самый легкий, почему должен использовать-o опцию, на cli. Это может использоваться с любой опцией конфигурации также, например,
ssh -o "Compression no" -v <HOST>
# or
ssh -o "Compression yes" -v <HOST>