如何从激流磁体链接中获得第一个对等



我一直在尝试理解磁流技术,但我似乎不明白打开磁流链接时如何与第一个对等体连接。

当你得到一个磁铁链接如下,它不包含初始对等-只有BitTorrent信息哈希(btih)和文件名。

magnet:?xt=urn:btih:bbb6db69965af769f664b6636e7914f8735141b3&dn=ubuntu-12.04-desktop-i386.iso

根据BitTorrent &磁铁:它们是如何工作的?(MakeUseOf)

如果您单击没有指定跟踪器(tr) 的磁体链接,将使用DHT找到第一个对等体。一旦你有了一个对等点,对等交换也就开始了。

维基百科上的DHT文章没有具体说明如何找到对等体,但在Kademlia文章(BitTorrent DHT的基础)中,它说

想要加入网络的节点必须首先经过一个引导过程。在这个阶段,加入节点需要知道另一个节点的IP地址和端口——一个引导节点(从用户那里获得,或者从存储的列表中获得),这个节点已经参与到Kademlia网络中。

但是它从哪里知道这个节点呢?我在磁铁链接里没有看到地址或任何东西。由于它是去中心化的(无跟踪器),我不希望它提前知道节点。或者DHT实际上不是去中心化的 ?

大多数情况下,当您启动bittorrent客户端时,从:

引导
  1. 上次会话中的节点,已保存到磁盘
  2. 您在任何群集上的其他对等体

有几个众所周知的引导节点,客户端可以使用,如果他们没有其他方法找到任何。从本质上讲,发生这种情况的唯一情况是当你第一次安装客户端,你下载的第一个种子是一个没有跟踪器的磁铁链接。

你可以点击router.utorrent.com:6881。我相信transmission, azureus和bitcomet运行类似的路由器,可能还有其他客户端。

所谓"路由器",我指的是一个节点,它的行为似乎与DHT中的任何其他节点一样,但可能具有确定分发哪些节点的不同机制,并且可能专门针对仅将DHT节点相互引入的用例进行了优化。

UPDATE:你可以运行你自己的DHT引导机器,这是源代码

相关内容

  • 没有找到相关文章

最新更新