Bittorrent DHT 中的“分布式跟踪器”概念如何运作?

Posted

技术标签:

【中文标题】Bittorrent DHT 中的“分布式跟踪器”概念如何运作?【英文标题】:How does 'distributed tracker' concept work in Bittorrent DHT? 【发布时间】:2016-04-05 22:39:32 【问题描述】:

我已经阅读了Kademila spec 和DHT BEP for Bittorent,但仍然无法理解 DHT 如何使无追踪器种子变得可靠。 我对路由过程的理解是:

节点(比如 A)从其路由表(比如 B)中选择 id 最接近 torrent 的 infohash 的节点并向其发送 find_peers 查询 如果 B 没有关于对等点的信息,它会发送 id 更接近 infohash 的节点地址 节点 A 进行迭代路由,直到到达节点(比如 X),该节点以播种对等方地址进行响应 当节点 A 开始下载过程时,节点 A 向节点 X 宣布它

但是当节点 X 从 swarm 中消失时会发生什么?有故障转移吗?跟踪信息如何在 swarm 中的节点之间分布?

【问题讨论】:

【参考方案1】:

首先,DHT 是在所有 bittorrent 客户端之间共享的全局覆盖,它并不特定于单个群体。

第二,直接从论文,第 2.3 节:

为了存储(键,值)对,参与者定位 k 个最近的节点 到密钥并向他们发送存储 RPC。此外,每个节点 根据需要重新发布 (key,value) 对以使它们保持活动状态,如 稍后在第 2.5 节中描述。这确保了持久性(正如我们展示的 在我们的证明草图中)具有非常高的(键,值)对 概率。

【讨论】:

以上是关于Bittorrent DHT 中的“分布式跟踪器”概念如何运作?的主要内容,如果未能解决你的问题,请参考以下文章

BitTorrent DHT 协议中文翻译

有关无跟踪器的 bittorrent 的一般信息,例如 BitTorrent 的 Mainline DHT

使用 libtorrent 获取 Bittorrent DHT 消息的所有字段

从 DHT 引导程序获取 Bittorrent 的混乱回复

javascript BitTorrent DHT爬虫

使用 BitTorrent 的 DHT 执行实时关键字搜索