Bittorrent 中的 Tracker GET 请求参数

Tracker GET request parameters in Bittorrent

在使用Bittorrent时,我看到URL中有参数“numwant”、“corrupt”和“key”。

但是,我发现BEP 3中没有定义这些参数(http://www.bittorrent.org/beps/bep_0003.html),所以谁能告诉我参数的含义,这3个参数在哪里定义的?

另外,在提问之前,我在站点www.bittorrent.org中搜索了关键字“numwant”,结果发现“numwant”出现在BEP 8中,但是找不到关键字的定义或解释。

虽然 BEP3 是官方文件,但它是一份简洁而密集的文件。相反,我建议您使用非官方的:https://wiki.theory.org/index.php/BitTorrentSpecification

它更容易阅读和理解。它还记录了您在其他地方找不到的协议的一些早期扩展。

在那里你会发现:

  • numwant: Optional. Number of peers that the client would like to receive from the tracker. This value is permitted to be zero. If omitted, typically defaults to 50 peers.
  • key: Optional. An additional identification that is not shared with any other peers. It is intended to allow a client to prove their identity should their IP address change.

关于corrupt,据我所知,没有书面文档是如何定义它的,但它很简单;当一块未通过哈希检查时,该数据量将计入 corrupt 计数器而不是 downloaded 计数器。

还有一个类似的redundant计数器,其中计算了因为冗余而被释放的数据。例如,在 游戏结束模式 中,当多个对等方请求同一块时,就会发生这种情况。


此外,我的回答中还有一些其他信息:Understanding Bittorrent Tracker Request