【问题标题】:Bittorrent Tracker Update?Bittorrent 追踪器更新?
【发布时间】:2012-08-19 16:53:15
【问题描述】:

在 bittorrent 客户端中,来自跟踪器的第一个响应将包含对等点列表。在第一个响应后联系跟踪器进行更新时,第二个响应中发送的任何对等点是否与第一个响应中的相同?

我问的原因是我不想浪费时间检查新列表中的任何对等点是否与新列表相同。

提前致谢

【问题讨论】:

  • 这可以通过观察野外的蜂群或阅读(非官方)规范很容易找到:wiki.theory.org/BitTorrentSpecification#Tracker_Response 跟踪器可以用他们想要的任何对等点进行响应。虽然我怀疑做那个检查“浪费”的时间会很重要(即使它需要像两秒钟这样荒谬的事情,当然不会,每半小时失去两秒钟不应该是一个问题)
  • 谢谢,您似乎总是回答我有关 bittorrent 的问题 :) 出于兴趣,您对 bittorrent 的背景经验是什么?
  • 我之前尝试过写一个客户,但并没有超出最初的深入研究阶段。当我远未完成时,我转移到了其他项目。我仍然希望有一天我能完成它。
  • :) 太棒了,再次感谢您的帮助。

标签: bittorrent tracker


【解决方案1】:

跟踪器通常应该从他们所知道的所有对等节点中随机选择一个子集发送给该群体。实际实现不同,例如出于效率原因,他们可能会在长长的对等点列表上移动一个窗口,或者他们可能会注入虚假的对等点以提供合理的否认。

如果 swarm 的大小足够小以适应 numwant 限制,那么他们将返回整个 swarm。

但即使你得到了整个群体,返回的对等点集仍然可能仅仅由于新的到达/离开而有所不同。

并且您还想联系跟踪器以将自己保留在他们的列表中,因为您的条目最终会过期。

长话短说:返回的集合之间可能存在 0% 到 100% 的重叠。

只需将你的东西存储在哈希/集合数据结构中,你就可以了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-18
    相关资源
    最近更新 更多