簡體   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