Как BitTorrents соединяются друг с другом? - PullRequest
4 голосов
/ 11 июня 2010

Я только что скачал новый дистрибутив linux с помощью uTorrent, и начал задумываться, как uTorrent (и другие бит-торренты) отправляют файлы друг другу через NAT-маршрутизаторы?Они, очевидно, используют трекеры, чтобы познакомиться, но как они передают информацию друг другу?Есть ли на этом документ?Я не мог найти один: /
Спасибо

Ответы [ 2 ]

2 голосов
/ 06 июля 2010

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

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

0 голосов
/ 11 июня 2010

Торрент-клиенты работают на основе так называемых распределенных хеш-таблиц.Они начинаются с набора известных корней и разветвляются в поисках других связанных узлов (т. Е. Соседей).Установите связи с ними и поддерживайте их до установленного предела.Поскольку клиент инициирует соединение, все, что нужно сделать удаленному, - это передать данные обратно, и вы получите их через NAT просто отлично.Так работает сетевой трафик.

...