Настройка utorrent по "хранительски" 2.0

Здравствуйте всем. По просьбам пикабушников.

Данная статья является перепечаткой инструкции по настройке популярного торрент-клиента utorrent для работы с большим количеством раздач, опубликованной в закрытой хранительской группе. Присутствуют некоторые правки - удалены ссылки на статьи в закрытых группах. Ссылки на статьи в открытых частях форума сохранены.

Перепечатка с разрешения автора, модератора rutracker.org, уважаемого pasha.pro3.


Приветствую всех, кто решил почитать данную статью. Давно хотел написать нечто подобное, но как всегда что-то отвлекало меня от этого. [...]

Итак, начнём. В данной статье будут описаны настройки клиента utorrent 1.8.2 для достижения максимальной скорости отдачи и максимальной производительности.

Предварительно рекомендую ознакомиться с этой темой и с этой.


1. Начнём по порядку со вкладки "Соединение"

Настройка utorrent по "хранительски" 2.0 Торрент, Rutracker, Utorrent, Длиннопост, Настройки, Торрент-клиент

1.1 Порт. Порт должен быть в диапазоне от 1 до 65535 и лучше ставить от 1000 для избежания конфликтов с некоторым ПО, также, некоторые провайдеры могут блокировать исходящие соединения с портов до 1000. Случайный лучше не ставить. Также, лучше избегать "стандартных" портов 6881-6889. Некоторые провайдеры могут их блокировать.


1.2 UPnP переадресация. UPnP переадресацию нужно включать если у вас подключение идёт через роутер и не проброшен порт через NAT. Если же кабель на прямую к ПК подключается или порт через NAT уже проброшен, то лучше UPnP выключать. Меньше всевозможных проблем с дешманскими роутерами будет.


1.3 Включить переадресацию NAT-PMP. Аналогично UPnP.


1.4 В исключения брандмауэра. Если у вас не отключен стандартный виндовый брандмауэр, то рекомендуется включить.

По моему ИМХО лучше все брандмауэры и UPnP отключать и всю настройку по фильтрации и нату делать на стороне роутера, если, конечно, он это делать позволяет и у вас хватит знаний на это.


2. Скорость

Настройка utorrent по "хранительски" 2.0 Торрент, Rutracker, Utorrent, Длиннопост, Настройки, Торрент-клиент

2.1 Ограничение отдачи и загрузки. Лучше поставить 0 -- нет ограничения. Авторежим делает не пойми что. С ним скорость отдачи заметно падает.


2.2 Общее максимальное количество соединений. Максимальное количество соединений, которое может инициализировать utorrent, От этого параметра напрямую зависит количество пиров, которые могут подключиться. Нужно задать исходя из мощности вашего роутера, то есть подбирается экспериментально. Если мощность проца в роутере будет не хватать, то при больших значениях будет уменьшаться скорость отдачи и загрузки. В идеале, без ограничения, то есть поставить большое значение, например, как на скриншоте. На клиенте с 14000 торрентов количество соединений редко 2000 достигает по статистике. Если у вас TP-LINK или другой noname, то больше 200 лучше не ставить.


3. BitTorrent

Настройка utorrent по "хранительски" 2.0 Торрент, Rutracker, Utorrent, Длиннопост, Настройки, Торрент-клиент

3.1 Включить DHT-сеть. Нужно отключить. Во-первых, есть такой ресурс как iknowwhatyoudownload, который основную инфу через DHT получает. Во-вторых, DHT не работает нормально когда в клиенте большое количество раздач. Он просто не может их все анонсировать в DHT сеть, тратя при этом драгоценные ресурсы процессора и количество соединений.


3.2 Поиск локальных пиров. Если у провайдера развитая локальная сеть, то можете включить. На сегодняшний момент почти не актуально, так как канал у клиента зачастую по скорости равен тарифному плану. Лет 10 назад типичных тариф был пару мегабит, максимум несколько десятков, но локалка провайдера была часто без ограничений по скорости.


3.3 Включить scrape-запросы. Нужно отключить. Нужно для отображения количества пиров и сидов на раздаче по трекеру во вкладке "Трекеры". Рутрекер не поддерживает эту функцию.


3.4 Включить обмен пирами. Обязательно включить. В отличии от DHT, не ломается при большом количестве раздач в клиенте. Хорошо помогает в нахождении пиров, при условии, что на раздаче уже есть несколько пиров.


3.5 Лимит скорости локальных пиров. Отдельный лимит для локальных пиров. Неактуально.


3.6 Шифрование. Помогает маскировать трафик utorrent от провайдера. Насколько это эффективно в 2019 не могу сказать, но лучше ставить "Включено" и "Принимать нешифрованные" тоже включить надо. Так смогут подключиться клиенты, которые не поддерживают шифрование, так и те, которые его включили принудительно. Если поставить принудительно или отключено, то часть пиров не смогут подключиться.


4. Очерёдность

Настройка utorrent по "хранительски" 2.0 Торрент, Rutracker, Utorrent, Длиннопост, Настройки, Торрент-клиент

4.1 Максимально число активных торрентов, отображаются в списке "Активные". Лучше всего поставить большое, недостижимое число и забыть о данной настройке. Если поставить меньше возможного числа активных торрентов, то некоторые их них упадут в статус "Ожидание раздачи".


4.2. Максимальное число одновременных загрузок. Ставить исходя из производительности дисковой подсистемы компьютера и текущей ситуации с загрузками. Бывает, скачиваешь массово раздачи и на редких есть 1 сид с каналом в 1 бит/сек и он на всех раздачах отображается и они как бы активные. В таких случаях лучше параметр по больше поставить, чтобы стали активны другие торренты, на которых могут быть сиды с широким свободным каналом. С другой стороны, если параметр выставить слишком большим, то при добавлении большого числа торрентов они все начнут размечаться на HDD и от этого торрент может просто зависнуть.


4.3. Раздачи имеют более высокий приоритет в сравнении с загрузками. Если включить, то скорость загрузки будет автоматически уменьшаться при активных раздачах. Не вижу смысла включать.


5. Планировщик

Настройка utorrent по "хранительски" 2.0 Торрент, Rutracker, Utorrent, Длиннопост, Настройки, Торрент-клиент

Полезная вещь. Можно, например, ограничить скорость отдачи/загрузки днём, когда идёт активное использование интернета и давать торренту скорости на полную ночью, когда все спят.


6. Подходим к самому интересному. Дополнительно


Не буду расписывать все параметры, опишу только важные для максимальной производительности и по которым информация в этой статье или скудная или не точная.


bt.allow_same_ip -- разрешает множественные соединения с одного ip. Включить.


bt.auto_ul_factor -- цитата: "С помощью этой опции можно задать максимальное ограничение, которое будет вноситься автоматической системой ограничения скорости отдачи, по отношению ко всей величине канала.". По умолчанию 80. Так и не понял, влияет ли она на что-то или нет, но всё же лучше поставить больше 100, максимум 255.


bt.connect_speed -- сколько соединений utorrent может инициировать в секунду. При стандартных и низких значениях торренты могут долго на трекере обновляться и пиры будут медленней находиться. В идеале, ограничения не должно быть. Подбирается экспериментально, в зависимости от мощности вашего роутера. Если роутер позволяет или его нет -- поставьте большое значение, вроде 250.


bt.no_connect_to_services -- не подключаться к пирам по портам, указанным в "bt.no_connect_to_services_list". Лучше выключить.


bt.use_rangeblock -- блокировка подсетей ip. Если несколько пиров из одной подсети отсылают битые блоки, то эта подсеть банится. Казалось бы, полезная функция, но, как я понял, функции разбана подсети в utorrent не предусмотрено и за длительное время работы может несколько таких банов накопиться. Лучше отключить.


diskio.coalesce_write и diskio.coalesce_write_size. Первую опцию нужно обязательно включить (включено по умолчанию). Вторая отвечает за предел размера, после которого блоки будут объединены в один фрагмент для последующей записи на диск. Уменьшает количество вызовов к диску на запись файла, тем самым увеличивая производительность при загрузке торрента. Нужно поставить 2147483647. Это максимальное значение для данного поля. При появлении ошибки "Ошибка! Недостаточно системных ресурсов для завершения операции" следует уменьшить значение вплоть до значения по умолчанию и меньше.


diskio.no_zero -- значение по умолчанию в большинстве версиях utorrent false. Такое лучше и оставить. Иначе, во время загрузки торрента нагрузка на HDD будет на порядок больше и есть большей шанс получить сообщение "Диск перегружен".


net_low_cpu -- позволяет чуть-чуть увеличить производительность. Включить.


isp.bep22 -- аналог ретрекера. Выключить. Лишняя нагрузка на utorrent, которая не несёт практически никакой пользы.


net_max_halfopen -- рекомендуется выставлять в 80% от максимального числа соединений. С дефолтного значения нужно обязательно поменять.


net.wsaevents -- самая загадочная настройка. Если поставить меньше номинала -- скорость упадёт немного. Если поставить выше -- ничего не измениться, по крайней мере, я изменений не заметил. Никаких. Если есть идеи зачем этот параметр и на что он влияет -- отпишитесь под постом.


Остальные значения лучше оставить по умолчанию.


7. Кеширование


Если вкратце, то лучше всё поставить как на картинке

Настройка utorrent по "хранительски" 2.0 Торрент, Rutracker, Utorrent, Длиннопост, Настройки, Торрент-клиент

Параметры были подобраны мною методом длительных проб и ошибок.


7.1 Заменить авто-кеш значением, выставленным вручную. При стандартных настройках utorrent после добавление нового торрента и загрузки первого блока начинается разметка файла на диске, к которому этот блок относиться. То есть создаётся пустышка размером с загруженный файл и нулями забивается. Чем больше загружаемая раздача, тем больше времени требуется HDD для разметки файла. Но загрузка в этот момент в utorrent'е не прекращается, а данные записать не особо получается, потому что HDD и так полностью занят созданием пустышки. Блоки записываются в кеш торрента и чтобы не получить ошибку "Диск перегружен" на начальной стадии загрузки раздачи нужно грамотно его настроить. Опцию надо включить и желательно выставить размер кеша в 800 МБ. При большем значении utorrent может вылететь. Когда мне провели гигабит, 800 Мб стало не хватать -- при загрузке торрента, при уже размеченном файле, кеш был забит на максимум с сообщением "Диск перегружен", а HDD по монитору ресурсов был нагружен максимум на 70%. Конечно, при этом скорость загрузки была в районе 80 Мб/сек, но и при загрузке больших файлов размеров в паре десятков гигабайт я обычно дожидаюсь пока начнётся размечаться файл и после чего останавливаю загрузку торрента, чтобы избежать лагов, зависаний, вылетов и прочих ошибок. После завершения разметки файла торрент вновь запускаю и он спокойно себе загружается. Чтобы этого избежать или хотя бы сгладить, нужно увеличивать размер кеша, но если его увеличить -- торрент будет вылетать. Начал искать решение данной проблемы и наткнулся на интересную программу под названием 4GB Patch, Она позволяет пропатчить экзешник 32 битной программы для поддержки PAE, что позволит увеличить лимит памяти для приложения с 2 Гб до 4 Гб. Успешно пропатчил utorent и он запустился и нормально работал, а также я смог выставить размер кеша много больше 800 МБ и торрент это переварил как ни в чём не бывало. Только вот разработчики не предусмотрели, что кто-то это будет делать и кеш чтения отключается, если выставить размер кеша больше 2047 Мб. Кеш записи при этом работает, но есть риск получить ошибку диск перегружен с полностью пустым кешем. Также, я предполагаю, что эту версию патчили именно этой программой.


7.2 Уменьшать загрузку памяти, когда кеш не используется. Включить. Если будет отключено, то utorrent не будет отчищать кеш от неиспользуемых блоков и кеш будет раздуваться до указанного вами значения, когда того не требуется, занимая тем самым драгоценное ОЗУ.


7.3 Включить кеширование записи на диск. Включить.

7.3.1 Записывать нетронутые блоки каждые две минуты. Отключить. С включенной опцией падает производительность записи и если риск получить битый блок в момент разметки файла на диск и с сообщением "Диск перегружен".

7.3.2. Записывать завершённые части немедленно. Выключить. Примерно аналогично опции выше.


7.4 Включить кеширование чтения с диска. Включить.

7.4.1. Отключить кеширования чтения при низкой скорости отдачи. Отключить. Кеширование лишним не бывает.

7.4.2. Удалять устаревшие блоки из кеша. Включить.

7.4.3. Увеличивать размер кеша автоматически при его заполнении. Отключить. При включенной опции: если каким-то образом кеш чтения достигнет значения в 800 Мб и торрент его попытается увечить, то он просто вылетит через некоторое время.


7.5 Кеширования windows. Оба пункта должны быть отмечены, то есть виндовое кеширование должно быть отключено. Иначе, с высокой долей вероятностью ОЗУ будет забиваться под завязку из-за utorrent'a.


Если хотите углубиться в тему кеширования, то вот вам отличная статья на пол часа чтения.


8. Настройка сетевой карты


Дополнительно можно настроить сетевую карту для получения максимальной производительность. Нужно открыть(win7) Пуск►Панель управления►Сеть и Интернет►Центр управления сетями и общим доступом►Изменение параметров адаптера►Открыть свойства сетевого интерфейса►Кнопка настроить►Вкладка дополнительно. Через диспетчер устройств также можно открыть это окно настроек.

Настройка utorrent по "хранительски" 2.0 Торрент, Rutracker, Utorrent, Длиннопост, Настройки, Торрент-клиент

8.1 Контрольная сумма разгрузки. Включить все, что есть. Уменьшает загрузку на процессор.


8.2 Модерация прерывания. Неоднозначная функция, в целом представляющая компромисс, и на разных сетевых картах по разному может вести себя. При включении уменьшает нагрузку на процессор, так как сетевая карта не будет каждый раз при получении данных тревожить его, а будет ждать прерывания по графику. Таким образом, на незначительную величину увеличивается пинг.


8.3 Управление потоком. Отключить. На широких каналах эта опция только хуже сделать может, да и поддерживаться она должна и со стороны роутера, и со стороны ПК. Если хотите разобраться в теме -- гуглите "flow control".


8.4 Большой кадр. Не включать, должен быть обязательно отключен. 99%, что не вся цепочка оборудования от вашего ПК до пира будет поддерживать большие кадры и они будут фрагментироваться, что повлечёт падение производительности сети.


8.5 Получение бокового масштабирования. Включить. Позволяет задействовать многопоточность.


8.6 Зелёный интернет. При включенной опции сетевая карта старается снижать энергопотребление, когда это возможно. И подобные опции зачастую отъедают несколько процентов производительность. Отключить. Тем более, сетевая карта дай бох пару ватт потребляет в пике.


9. Прочее


9.1 Настоятельно рекомендуется удалить все ретреккеры (http://retracker.local/announce), [смотрите UPD1] если таковые имеются и выключить в настройках профиля их автоматическое добавления в файл .torrent. Это увеличит производительность utorrent и позволит увеличить максимальное количество торрентов, которые может переварить один клиент utorrent.


9.2 Количество торрентов в одном клиенте прежде всего ограничивается мощностью процессора. То есть для каждого этот лимит будет свой. У меня примерно 12000. Если больше -- не все торренты могут обновиться, то есть трекер всегда находится в состоянии "обновление". Частично может помочь регулировка TLO по сидам. Также, для разных версий utorrent этот предел тоже свой. Если примерно, то чем выше версия, тем меньше торрентов может переварить utorrent. По отзывам, 1.8.2 у большинства около 10к может переварить, 2.x на пару тысяч меньше, 3.x задыхается уже при 4к раздач.


9.3 Запуск двух копий utorrent.


9.4 Не забывайте делать регулярно бекапы! Как говориться, люди делятся на два типа: кто не делает бекапы и кто уже делает. Если вы относитесь к первым и нужно восстановить раздачи в utorrent, то в этой теме всё расписано.


[...]


Спасибо за внимание.


UPD1. Удаление ретрекеров

Способ 1

Удаляем все трекеры в раздачах кроме bt*. Делается это так : в главном окне клиента добавляем столбец трекер и сортируем торренты по нему, далее выделяем все торренты с одним трекером например bt2. , щелкаем правой кнопкой, выбираем свойства, там список трекеров удаляем все кроме bt2., обязательно чтобы после названия трекера был переход на следующую строку. Бывает что изза того что в выделенном материале в одной или нескольких раздачах отсутствует ретрекер или икс, тогда в окне свойства список трекеров будет пуст. В этом случае копируем трекер из одной из раздач затем выделяем все с этим трекером и в свойства вставляем нужный, после трекера нажимаем энтер для перехода на следующую строку и сохраням. Проделываем описанное выше для всех четырех трекеров.

Способ 2

1. Можно использовать BEncode Editor. Открываем resume.dat, с помощью Replace меняем нужные ретрекеры на пустое место. ИМХО, самый быстрый способ.

2. Не забываем перед всеми манипуляциями закрыть клиент и сделать резервные копии!

3. В курсе, что в настройках форума можно отключить автоматическую подстановку ретрекеров?