Отключение сети во время копирования большого файла на общий ресурс Samba

Отключение сети во время копирования большого файла на общий ресурс Samba

При копировании больших файлов из одного места на тестовый сервер Linux я постоянно получаю разрывы соединения в районе 1,7-1,9 ГБ. Используемый протокол не имеет значения (SFTP/SCP/SMB).

Я предполагаю, что целевой сервер не может достаточно быстро выделить блоки на диске, что приводит к узкому месту в хранилище или ЦП, что и вызывает отключение. К тому времени, как целевая система догоняет, исходная система уже выдает исключение. Кажется, я могу подтвердить это, регулируя максимальную скорость передачи примерно до 15k kb/s (на которой она сейчас работает).

Мне было интересно, есть ли у кого-нибудь советы, как предотвратить возникновение этой проблемы. Я думаю, что-то вроде игры с буферами или более длительными тайм-аутами на хостовой или целевой системе. Может быть, сторонний клиент копирования? (Я действительно скучаю по отсутствию собственного rsync в Windows)

У кого-нибудь есть какие-нибудь советы по этому поводу? Самый удобный способ копирования — это использование системы Windows на сервере Samba, что я и пытаюсь сделать.

EDIT: Чтобы не слишком раздувать комментарии ниже, еще одно наблюдение, которое подтвердит мою идею о узком месте ресурсов. Если я специально останавливаю свой копировальный клиент каждые несколько сотен мегабайт или около того (и, предположительно, позволяю цели догнать), то копирование проходит. Думаю, мне придется выяснить, как сделать этот захват пакетов (копии размером 2GiB?!). Может быть, игра с nice/ionice могла бы помочь, снизив приоритет smbd.

решение1

пока правда; делать сон 10; echo 1 > /proc/sys/vm/drop_caches; готово

У меня с этим много проблем, но это существенно помогло.

Связанный контент