BitTorrent/Порт

Материал из Викиучебника — открытых книг для открытого мира

порт

Недоступный порт[править]

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

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

У клиента с недоступным портом меньше потенциальных партнеров для файлообмена

Основное следствие из этого - на некоторых раздачах, где мало участников с доступными портами, ваши скорости скачивания и отдачи будут меньше, чем могли бы быть.

С другой стороны, довольно часто вашему клиенту и не нужно соединяться со всеми участниками. В зависимости от вашего канала вам вполне может хватать десятка или нескольких десятков соединений (суммарно на всех раздачах, в которых вы участвуете) с доступными участниками. Поэтому иметь большие скорости с недоступным портом вполне реально - нужно просто стараться участвовать в популярных раздачах.

Иногда следствие недоступности формулируют так: недоступный клиент сильно зависит от присутствия на раздаче достаточного числа доступных клиентов.

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

Как открыть порт[править]

Таким образом, открыть себе порт прослушивания очень желательно. Однако это не панацея от всех проблем. Если ваш клиент вообще не качает и не отдаёт ни на одной раздаче, то сперва решите другие проблемы.


О том, как сделать порт прослушивания доступным, читайте в статье «Порт».

Порт и трекер[править]

Порт прослушивания используется только для установления соединения между клиентами. Он не имеет никакого отношения к проблемам связи клиента с трекером или учёту статистики.

Клиент сообщает трекеру свой номер порта только для того, чтобы трекер сообщил его остальным клиентам.

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

Ограничения на номер[править]

Некоторые трекеры запрещают клиентам использовать определённые номера портов. Обычно это порты, используемые по умолчанию в популярных файлообменных сетях, такие как 6881-6889 (битторрент) и 4662 (emule). Связано это с тем, что некоторые интернет провайдеры блокируют или ограничивают трафик на этих портах.

Проверка доступности[править]

Большинство трекеров при подключении клиента к раздаче проверяют доступность его порта. Для этого трекер посылает клиенту приглашение к соединению. Если в течение нескольких секунд ваш клиент отзывается, то трекер делает вывод, что ваш порт доступен. Разумеется, полноценное соединение с клиентом он не устанавливает, а сразу даёт отбой.

Ник Доступен
Ефросинья да ...
Варфоломей нет
...

Результат проверки трекер показывает в таблице участников на странице раздачи.

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

Ошибки проверки[править]

Бывает, что ваш порт доступен, но из-за загруженности трекера или вашего интернет канала трекер не получает вовремя отзыв от вашего клиента, и показывает у вас недоступный порт.

Обычно это ни на что не влияет и такую ошибку можно игнорировать.

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



Порт и клиент[править]

Входящие соединения[править]

Практически все клиенты в списке соединенных пиров показывают, является ли соединение начатым:

  • вашим клиентом е / локальное / Local / Outgoing )
  • другим клиентом ( входящее / удаленное / Remote / Incoming )

Например в µTorrent это I  в столбце Флаги, в BitTornado L или R в столбце Local/Remote, в BitComet столбец Инициация.

Входящие и доступность[править]

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

Однако при отсутствии входящих соединений всё немножко сложнее:

  • или порт недоступен
  • или пока что ещё никто не пытался прислать вам приглашение к соединению

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

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