BitTorrent是否支持部分转移?

时间:2009-05-28 06:50:37

标签: network-programming protocols bittorrent

BitTorrent协议是否可以指定首先需要文件的前3%或前5%?如果没有,是否会增加这种支持是对协议的改进?

更新:所以我想,如果它是协议的一部分,为什么那里的许多客户不使用它? 10分钟后,文件的10%完成,但通常你甚至无法预览1%的内容...(取决于运气)

5 个答案:

答案 0 :(得分:3)

Azureus可以选择获取文件的第一个和最后一个块。但它不是100%可靠,因为你无法控制哪个对等体将开始发送数据,frist。

请参阅此处查看protocol spec,具体为:

  

请求:

     

请求消息是固定长度的,用于请求块。有效负载包含以下信息:

所以是的,你可以要求一个特定的块(甚至是它的一部分)。这应该可以准确地请求文件的前3%或5%,与块大小无关。

答案 1 :(得分:3)

Bittorrent协议是围绕稀缺性设计的:最稀疏的块首先被分发,以减少不再拥有同类群中所有块的可能性。因为这样就无法获得整个文件。

答案 2 :(得分:2)

BitTorrent作为协议的目的不是用于流媒体,其目的是尽最大努力始终保持所有感兴趣的数据可靠。将它用于媒体流用途实际上会对BitTorrent的目标起反作用。

如果您不明白为什么会出现这种情况,我建议您在继续之前选择Computer Networks by Tanenbaum

答案 3 :(得分:1)

是的,这是torrent协议支持的,例如ktorrent使用它来为不同的文件类型(例如mp3,avi甚至pdf)提供预览块。

答案 4 :(得分:1)

  

10分钟后,文件的10%完成,但通常你甚至无法预览1%的内容......(取决于运气)

这是因为客户端没有按顺序下载文件(这样当你有很多同行时,传输效率更高,每个人都有不同的文件部分)

相关问题