2

我试图了解 BitTorrent 内部的过程并实现类似的东西。但是,我仍然不知道选件和转移的过程。每个对等点如何知道哪个对等点拥有哪个文件块?每个对等点是否需要一直询问对方是否有请求的片段?

我也听说过“稀有片优先”的方法,它试图在之前得到更稀有的片断。如何在不浪费网络流量的情况下获取这些信息?

谢谢你。

4

1 回答 1

4

这是通过两条消息完成的:bitfieldhave

  • 在两个对等方执行握手之后,他们可以选择发送bitfield作为他们的第一条消息,这些消息紧凑地表示他们所有已完成的块。

  • 一旦一个节点成功下载并验证了一个区块,他们就会向所有连接的节点广播一条has消息,让他们知道他们刚刚完成了哪个区块。

于 2014-01-02T00:22:15.083 回答