hkB*_*sai 11 file-management utorrent
我已经使用 uTorrent 很长时间了。我无数次使用过它的“强制复查”功能。每次让我感到惊讶的是 uTorrent 如何成功地检测到文件的哪些部分已下载以及哪些部分尚未下载。即使您没有连接到互联网,它也会检查它们;所以我认为它不会从互联网上下载任何数据来进行这项检查。
你能解释一下这个“强制重新检查”功能是如何工作的。我认为每个部分的哈希都保存在 .torrent 文件中;但我不确定,这只是一个猜测。我在 Google 中使用关键字“torrent 文件格式”进行搜索以查找 .torrent 文件的文件格式,但它返回了很多 Torrent 搜索结果。所以这次谷歌不是我的朋友。请给我解释一下。
据我了解,torrent 文件包含您正在下载的每个文件部分的哈希值。它只是根据清单检查您认为拥有的每个部分的哈希值。就像下载种子文件一样,任何不匹配的片段都会被丢弃。
更详细地说,根据您下载的文件的bitorrent 规范,“片长”和“片”。片长是每片的大小,片是每片的 sha1 总和,附加到前一块以形成一个长字符串。
为了简化事情,让我们假设您预先分配了文件,并且您基本上有一个与源文件长度相同的大“填充”文件。首先,根据片段长度,程序获取文件的前 n 位,并进行 SHA1 和。然后将文件的 SHA1 总和与“碎片”的相应部分进行比较。如果他们匹配,我们很好。否则,将其标记为不好并丢弃。
归档时间: |
|
查看次数: |
58096 次 |
最近记录: |