有关无跟踪器的 bittorrent 的一般信息,例如 BitTorrent 的 Mainline DHT
Posted
技术标签:
【中文标题】有关无跟踪器的 bittorrent 的一般信息,例如 BitTorrent 的 Mainline DHT【英文标题】:General information on trackerless bittorrent such as BitTorrent's Mainline DHT 【发布时间】:2010-08-29 14:19:59 【问题描述】:我很好奇无追踪器种子是如何工作的。我尝试搜索有关 DHT 种子协议的信息(演示文稿或其他内容),但找不到任何有价值的资源。
有人可以提供描述或链接吗?
【问题讨论】:
How do BitTorrent magnet links work? 的可能重复项 【参考方案1】:嗯,有***Distributed Hash Table 页面作为介绍。我不认为您可能会找到任何特定于 BitTorrent 将如何使用它的信息,但有已知的 DHT 实现:Pastry 和 Chord。
我已经阅读了描述 Chord 的 academic paper,它让我对一般 DHT 算法的工作原理有了一个很好的了解。来自卡内基梅隆大学的slideshow 在幻灯片 37 上开始谈论 DHT。
当然,如果您正在寻找 BitTorrent 的具体实现方式,您可能需要获取他们的参考实现并查看代码。
【讨论】:
【参考方案2】:我发现学术论文和 DHT 实现非常难以访问。以下 2 个链接足以让我自己的实现启动并运行。完整阅读第一个,当您需要澄清时参考第二个。
BEP 5 DHT Protocol Wikipedia: Kademlia如有疑问,请弥补。以后再改进。 DHT 的协调非常复杂。
【讨论】:
对于 bittorrent,“只是弥补”部分导致许多性能不佳的实现,因为人们不了解一些更微妙的行为。 Kademlia 设计非常有弹性,因此它不是世界末日,但阅读论文并研究现有实现对于做出良好的实现是必要的。【参考方案3】:Bittorrent 使用自己的 DHT 实现,称为 Mainline DHT,它基于 Kademlia。
编者注: 大多数 DHT torrent 客户端使用 MDHT,但 Azureus(现在称为 Vuze)使用自己的版本,称为 ADHT,其行为不同且与 MDHT 不兼容。
【讨论】:
【参考方案4】:Wikipedia 上的Mainline DHT 是该协议的简明概述和描述。您也可以阅读design document。
【讨论】:
【参考方案5】:可以在这里找到关于 BitTorrent DHT 工作原理的非常好的视频和幻灯片演示:BitTorrent Tech Talks: DHT 讲座由Arvid Norberg完成, BitTorrent, Inc 首席架构师 和libtorrent/rasterbar 开发人员。
【讨论】:
以上是关于有关无跟踪器的 bittorrent 的一般信息,例如 BitTorrent 的 Mainline DHT的主要内容,如果未能解决你的问题,请参考以下文章