Протокол BitTorrent разработан распределенным образом, чтобы повторно использовать блоки данных неполных файлов. Ваш компьютер рекламирует определенные файлы, а затем ваши коллеги запрашивают блоки данных - изначально ваша реклама направляется вашим непосредственным партнерам, которые затем передаются распределенной базой данных (хэш-таблицей). Таким образом, число пиров, которые знают ваши файлы, обычно растет со временем.
Каждый запрос партнера генерирует некоторый входящий трафик, поэтому ваш входящий трафик также может расти со временем.
Вот скриншот моего клиента с пометкой:
- издержки протокола
- количество соединений
- узлы распределенной базы данных
Кроме того, когда вы заполняете крайне запрашиваемый, но редкий файл, гораздо больше партнеров хотели бы загрузить с вашего компьютера, что, очевидно, будет генерировать много входящего трафика.
В некоторой степени вы можете уменьшить это влияние, изменяя параметры клиента Torrent, такие как количество одновременных загрузок, открытых и полуоткрытых соединений и так далее.
Я обычно уменьшаю количество разрешенных подключений, так как мой домашний маршрутизатор имеет тенденцию зависать при слишком большом количестве подключений - это типичный недостаток дешевых маршрутизаторов SOHO, а не профессиональных, очень дорогих.
Вот скриншот моих опций, связанных с пропускной способностью клиента:
Мой маршрутизатор прекрасно поддерживает 200 открытых соединений, но когда мои дети начинают торрент, всем нам нужно уменьшить этот параметр, не превышая всего нескольких сотен соединений, что в то же время уменьшает трафик протокола.
К сожалению, мне не удалось найти хорошую спецификацию протокола BitTorrent. Этот только частично отвечает на вопросы: