Взял большой торрент, несколько образов по 4гб в раздаче. Поставил качать на сетевую папку. Что произошло:
1. торрент начал качать файлы, но не много. Выкачал пару метров и перестал. Пишет что диск перегружен на 100%.
По логам на сервере с сетевой папкой видно что он на данном этапе закачивает "пустые" файлы на место где будет торрент.
Т.е. занимает место для будущих файлов своим мусором.
Это даже кажется настраивается где-то в меню. Делает он это для того чтобы не было фрагментации файлов.
На этот момент торрент действительно зохавал ОЗУ, но всего 20метров по сравнению с простоем.
Хотя настройках кеш для него 1.8 ГБ, непонятно почему он не начал его юзать. (к теме отношение не имеет всё равно)
На этом этапе сеть до сетевой папки нагружена на 100%.
Действительно есть первый оверхед по передаче файлов (сначала мусор, потом данные на место мусора), но точно такой же оверхед есть и при локальной скачке на компьютер.
Ничего тут нового и удивительного. И не удевлюсь что это можно настроить.
2. Торрент дописал свой "мусор" и занялся конкретно скачкой. ОЗУ используется в обычном режиме, не больше не меньше (сейчас 33мб занимает).
Файлы качаются, и сразу пишутся на сетевой диск, заменяя тамошний мусор (точно так же торрент работает и в "локальном" варианте).
По логам сервера с сетевой папке видно что все файлы открыты в режиме "чтение и запись" для меня. Для других они доступны только на чтение.
Собственно качаю в данный момент 2 образа по 4,2 гб на сетевую папку без сохранение на диск и без "добавочных" оверхедов по ОЗУ. Всё так же как с локальной скачкой.
Правда есть ньюасы, но касаются они скоростей подключения.
Если скорость канала в инет окажется выше чем скорость до сетевой папки, то 100% будет оверхед по ОЗУ, но по другим опять же причинам =)
Торент скидывает на диск блоками. Т.е. я качаю файл в 20гб не в ОЗУ разом, а маленькими кусочками на винт постоянно. И разницы куда качать по сути нет, что на свой винт, что на сетевой диск (если подключение к нему быстрое, у меня 100мбит).