Торрент не загружается сразу после добавления, когда только 1 раздающий узел

У меня проблема со скоростью запуска торрент-загрузки.

Итак, у меня есть два клиента на основе libtorrent:

Клиент A (потоп) — единственный клиент, раздающий торрент. Это состояние посева, но пока нет аналогов.

Клиент B (приложение, которое я делаю) добавляет торрент, используя

libtorrent_session.addTorrent(...

По какой-то причине клиент B не сразу начинает загрузку. Он ждет несколько минут, затем скорость загрузки клиента A резко возрастает, и торрент загружается на B.

Почему оно ждет? Это как-то связано с интервалом объявления? Если это так, как я могу уменьшить время запуска, потому что мне нужно, чтобы загрузка началась немедленно.

Разве он не должен просто найти пир и сразу загрузить файл?

Я использую и трекер, и общедоступные DHT.


person thouliha    schedule 08.06.2015    source источник


Ответы (1)


Без подробной информации/регистрации я могу только догадываться.

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

Если они используют трекер, который не работает, запуск DHT может занять некоторое время, что также может быть отложено, чтобы сначала попробовать трекер.

как я могу уменьшить это время запуска

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

person the8472    schedule 09.06.2015