Я использую rdiff-backup для резервного копирования моих данных. Поскольку некоторые машины используют Windows, я установил там sshd и rdiff-backup с помощью cygwin. Резервное копирование работает, но довольно медленно. Затем я провел некоторое тестирование с использованием scp, ssh copy over pipe, sftp и netcat между различными системами. Между машинами Linux все в порядке. Scp/ SSH дает мне около 70 МБ / с. В Cygwin эта скорость снижается до 8 МБ / с. Однако использование sftp или netcat дает хорошие скорости. Я достигаю более 100 МБ / с с Netcat.
Я пытался использовать разные шифры и отключить сжатие. Но это не помогает. Машины все последние с несколькими гигабайтами оперативной памяти и аппаратного рейда. Я попробовал это на разных машинах под управлением Cygwin, и я получил аналогичные результаты. Должен ли я использовать netcat и туннелировать его? Это выглядит как много накладных расходов на настройку. Rdiff-backup не может использовать sftp, как мне кажется, что мне здесь не повезло. Я также не хочу использовать sshfs, поскольку rdiff-backup использует скользящую контрольную сумму, и я не хочу передавать все данные для расчета.
Есть идеи, что вызывает такое замедление?
РЕДАКТИРОВАТЬ:
Информация о среде cygwin:
Windows 2008 Storage Server Standard Ver 6.0 Build 6002 Service Pack 2
CYGWIN_NT-6.0 filer 2.0.4(0.287/5/3) 2015-06-09 12:22 x86_64 Cygwin
openssh 6.8p1-1
EDIT2
Когда я включаю подробный вывод для scp между Linux и Windows, я получаю:
debug2: channel 0: rcvd adjust 65536
Значение всегда одинаково для этой передачи.
Тот же тест между Linux и Linux дает мне:
debug2: channel 0: rcvd adjust 114688
Здесь значение время от времени различается, и появляются такие значения, как 131072 или 147456 .