Я пытался понять технологию торрентов-магнитов, но я не могу понять, как вы подключаетесь к первому сверстнику при открытии магнитной ссылки.
Когда вы получаете ссылку на магнит, как показано ниже, в ней нет начального peer - только BitTorrent Info Hash (btih) и имя файла.
magnet:?xt=urn:btih:bbb6db69965af769f664b6636e7914f8735141b3&dn=ubuntu-12.04-desktop-i386.iso
Согласно BitTorrent и магниты: как они работают? (MakeUseOf)
Если вы нажмете ссылку на магнит, которая не укажет трекер (
tr
) , первый одноранговый узел будет найден с использованием DHT. После того, как вы получили равный подход, обмен пирамидами тоже.
В статье DHT в Википедии не указывается, как найти одноранговую сеть, но в статье Kademlia (на котором основан BitTorrent DHT), говорится:
A node, который хотел бы присоединиться к сети, должен сначала пройти процесс начальной загрузки. На этом этапе соединение node должно знать IP-адрес и порт другого node -a bootstrap node (полученного от пользователя или из сохраненного списка) - это уже участвуя в сети Kademlia.
Но откуда он знает, что node от? Я не вижу адреса или ничего присутствующего в ссылке на магнит. Поскольку он децентрализован (без следа), я бы не ожидал, что он будет знать node заранее. Или DHT фактически не децентрализован?