Во всех примерах скачиваем файл поверх существующей копии. Первое скачивание выглядит так:

time rsync --progress "$REMOTE_ISO" local.iso
local.iso
  2940602368 100%   31.61MB/s    0:01:28 (xfer#1, to-check=0/1)

sent 30 bytes  received 2940961422 bytes  32859904.49 bytes/sec
total size is 2940602368  speedup is 1.00

real	1m29.065s
user	0m32.420s
sys		0m12.330s

Пояснение к опциям:

  • -z - используем сжатие
  • --compress-level 9 - максимальный уровень сжатия, задействуем процессор по максимум, разгружая канал.
  • --block-size=40507 - размер блока для сравнения
  • -c - проверка checksum блоков вместо времени изменения файла.
Параметры Не используем сжатие Используем сжатие
(-z --compress-level 9)
Не используем блоки rsync "$REMOTE_ISO" local.iso

real 1m41.437s
user 0m11.340s
sys 0m3.880s

Вышло даже медленее, чем в первый раз.
rsync -z --compress-level 9 "$REMOTE_ISO" local.iso

real 1m51.406s
user 0m11.530s
sys 0m3.830s

Вышло ещё меделеннее. Это потому что машины находятся в локальной сети. В случае с узким каналом, сжатие ускорит процесс.
Используем блоки
(--block-size=40507 -c)
rsync --block-size=40507 -c "$REMOTE_ISO" local.iso

real 0m22.893s
user 0m5.170s
sys 0m0.820s

Без сжатия получим 22 сек вместо полутора минут. Неплохо.
rsync --block-size=40507 -c -z --compress-level 9 "$REMOTE_ISO" local.iso

real 0m26.553s
user 0m5.340s
sys 0m0.590s

В локальной сети сжатие - лишняя вычислительная нагрузка, даже если использовать блоки.