Как перенаправление портов помогает в торрентах?

29

Я использую Transmission для загрузки файлов, но он говорит, что требуется открыть определенный порт. Однако, хотя этот порт закрыт, я заметил, что могу загружать файлы без проблем. Но когда я открыл порт через мой маршрутизатор, я вижу существенную разницу в скорости загрузки. Я знаю основы «переадресации портов» и то, что она перенаправляет трафик на определенное устройство через определенный порт. Поэтому я думал, что мои загрузки не будут продолжаться, так как порт был закрыт, но это не так. Итак, мой вопрос:

  1. Как переадресация портов помогает в этой ситуации?
  2. Почему мои загрузки ускоряются, когда включена переадресация портов?
JohnnyQ
источник
3
Меня тоже интересует ваш отчет о разнице в скорости. Вы можете проверить свои результаты более научно?
Tu-Reinstate Моника-Дор-Дух
Переадресация портов позволяет выполнять заполнение, ускорять заполнение, а также позволяет другим партнерам находить вас, а не клиенту, вынужденному искать других участников. Не уверен, если это влияет на скорость загрузки, хотя.
Ecube
@ Тудор не совсем. Я только заметил значительную разницу в моем Freenasиспользовании Transmission.
JohnnyQ
1
«существенная разница» - это, по-видимому, значительное улучшение .
MrWhite

Ответы:

51

Вкратце: для работы протокола BitTorrent (p2p) хотя бы один узел должен иметь публично открытый порт (быть активным узлом).

Вы можете запустить Transmission без переадресации портов (остаться пассивным узлом), и вы без проблем подключитесь, загрузите и загрузите файлы. Однако ваш клиент сможет общаться только с активными узлами.

С включенной переадресацией портов на вашей стороне (становясь активным узлом) вы увеличиваете количество пиров, с которыми вы можете общаться (вы можете затем обмениваться данными с пассивными узлами).

Это влияет на общую скорость передачи, поскольку файл будет загружаться одновременно с большего количества узлов.

Документ « Анализ BitTorrent и его использование для разработки потокового протокола на основе P2P для гибридной CDN» содержит графики, сравнивающие скорость передачи между одноранговыми и «открытыми» одноранговыми узлами (см. Стр. 8):

введите описание изображения здесь

techraf
источник
Насколько я понимаю (что может быть неправильно), что при отсутствии открытого порта ваш клиент должен найти и инициировать все соединения с другими клиентами. Он только ищет новые соединения очень часто, иногда с большими задержками между попытками, поэтому может быть намного быстрее, если другие клиенты смогут найти вас, когда им удастся их найти. Это действительно просто еще один способ сказать то же самое, что и этот ответ.
Джо
19

Если uPnP / NAT-PMP был отключен на вашем торрент-клиенте, маршрутизаторе или обоих, то входящие соединения не будут работать. Затем вам нужно будет перенаправить порт на ваш компьютер в конфигурации вашего маршрутизатора или включить uPnP. Поскольку для входящих подключений существует перенаправление / uPnP-сопоставление, оно может позволить большее количество пиров, которые ранее не могли подключиться к вам. Таким образом, если вы отключили переадресацию AND uPnP, а затем включили один из них, это может привести к увеличению.

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

(Мой первоначальный ответ не был таким ясным, извините. Надеюсь, это лучше.)

BrianC
источник
7
Любой, кто заботится о безопасности, должен убедиться, что uPnP выключен. Это ужасная идея!
Мэтт Х
@MattH Да, я не стал вдаваться в подробности, потому что хотел быть кратким. Хорошо отметить, хотя.
BrianC
3

Если у вас включена переадресация портов, то входящие соединения могут найти ваш торрент-узел. В противном случае единственные сделанные подключения будут исходящими.

Конечно, вы можете загружать, используя только исходящие соединения, но у вас будет меньший пул потенциальных узлов для подключения (так как другие узлы без переадресации портов не могут быть подключены). В результате вы, скорее всего, получите более низкую общую скорость загрузки, поскольку у вас будет меньше активных пиров. Вы также с меньшей вероятностью узнаете об изолированных пулах пиров через DHT.

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

Если на вашем маршрутизаторе включена поддержка uPNP, большинство торрент-клиентов воспользуются этим для автоматической настройки переадресации портов. В противном случае вам нужно будет настроить его вручную в конфигурации маршрутизатора - способ сделать это зависит от вашего маршрутизатора, а диапазон портов для переадресации зависит от настроек вашего клиента.

Стив Шипвей
источник
Это то, что я собирался сказать. Некоторые торренты почти не работают с закрытым портом. Я часто вижу, что подавляющее большинство моих соединений являются входящими. И они не происходят, если порт не открыт. Кроме того, помимо проблем безопасности, если у вас старый маршрутизатор, использование uPNP может заполнить таблицу в маршрутизаторе и вызвать другие проблемы.
Джо