繁体   English   中英

使用 aria2c 下载单个大文件

[英]downloading a single large file with aria2c

我想下载一个大约 60GB 的文件。

我的互联网速度是 100mbps,但下载速度没有利用我的整个带宽。

如果我使用 aria2c 下载这个单个文件,我可以利用增加的“每台服务器的连接数”吗? 似乎 aria2c 允许我使用 16 个最大连接。 此选项甚至适用于下载单个文件吗?

我想象下载过程的方式就像 1 个连接尝试从文件的 1 个扇区下载,而另一个连接尝试从不同的扇区下载。 基本上,并发下载的最佳数量是直到达到主机带宽限制(我的是 100mbps)。 当两个连接在它们正在下载的扇区中发生冲突时,aria2c 会立即看到该特定扇区已被下载并跳到不同的扇区。 这是对单个文件使用多个连接时的表现吗?

这是对单个文件使用多个连接时的表现吗?

HTTP 标准提供Range请求标头,例如允许说:我想要文件的一部分,从 X 字节开始,Y 字节结束。如果服务器确实支持这个噱头,那么它会以206 Partial Content响应。 因此,知道文件的长度(大小)(请参阅Content-Length ),就可以铺设部分,使它们不相交并覆盖整个文件。

请注意,并非所有服务器都支持此噱头。 您需要检查要下载的服务器托管文件是否这样做。 这可以使用HEAD请求来完成, HTTP 范围请求提供了使用curl示例

curl -I http://i.imgur.com/z4d4kWk.jpg

HTTP/1.1 200 OK
...
Accept-Ranges: bytes
Content-Length: 146515

如果你在Accept-Rangesbytes ,这意味着服务器确实有支持。 如果您愿意,您可以使用任何其他工具发送HEAD请求并提供响应标头。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM