下载内容是如何损坏的?(SHA1 值各不相同)

下载内容是如何损坏的?(SHA1 值各不相同)

我使用 IDM 下载了 VS 2012。虽然我暂停并恢复了几次,但还是成功下载了。但是,SHA1 和 CRC 值与网站上给出的值不匹配。这意味着我的下载已损坏。这是怎么回事?

答案1

文件“下载成功”意味着服务器提供的位数等于交付给您的位数。无法保证位的确切顺序是相同的。通常是相同的顺序,但没有保证。

请记住,原件和副本之间只要有一位不同,就会导致校验失败。所以提出了一个关于 TCP 校验和错误率的好问题,这可能是导致问题的原因之一。由于传输过程中有太多的变动部分,因此很难准确找出问题发生的位置。

最好的建议是再试一次或退出 BitTorrent,因为那里的错误纠正功能更加强大。

答案2

通过网络连接传输数据时,一定程度的数据损坏总是可能发生的。使用 TCP 的连接(如 HTTP 或文件传输)发生这种情况的可能性较小。您会看到这种情况发生在 UDP 连接上(流媒体服务通常使用)。原因是 TCP 连接使用各种错误检测方法,而 UDP才不是

然而,即使采用了这些方法,错误仍然可能存在。有几种不同的情况可能导致这种情况:

  1. 服务器上的文件已损坏。在这种情况下,网站上的校验和虽然对未损坏的文件来说是正确的,但永远不会与下载文件的校验和相匹配。
  2. 文件在通过网络传输时损坏。网络连接通常经过多个点和很长的物理距离,经过由不同人员控制的大量硬件。路径中某个点的硬件物理问题可能会导致损坏,或者设备在传输过程中出现问题路由数据包
  3. 下载完成后,计算机上的文件会损坏。如果文件恰好存储在磁盘上有坏扇区的位置,则可能会发生这种情况。由于磁盘本身存在缺陷,数据无法可靠地写入,因此文件会损坏。同样,由于代码中的错误,下载程序在组装数据文件时可能会出错(特别是如果您多次启动和停止下载)。它还可能错误地结束连接并认为下载已完成,但这是过早的。

通常,如果我发现下载的内容已损坏,我会尝试重新下载几次。如果没有帮助,我通常会等待一天左右,然后再次尝试下载。如果是服务器问题,并且托管公司相对掌控一切,他们很快就会发现问题并很快修复它。如果是路由问题,只需等待即可,就像道路交通拥堵时,等待可以让您避开糟糕的交通一样。而且,虽然可能性较小,但始终注意磁盘上看似随机的数据损坏并偶尔扫描驱动器以查找错误仍然是一个好主意。磁盘确实会出现故障,第一个迹象通常是数据损坏或驱动器容量突然减少。

相关内容