BitTorrent协议是否可以指定首先需要文件的前3%或前5%?如果没有,是否会增加这种支持是对协议的改进?
更新:所以我想,如果它是协议的一部分,为什么那里的许多客户不使用它? 10分钟后,文件的10%完成,但通常你甚至无法预览1%的内容...(取决于运气)
答案 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%的内容......(取决于运气)
这是因为客户端没有按顺序下载文件(这样当你有很多同行时,传输效率更高,每个人都有不同的文件部分)