aria2 に似たアプリケーションはいくつか存在しますが、以下の 2 点 において aria2 は差別化されます: (1) 複数のソース (http/ftp そして BitTorrent) からダウンロードで きる。 (2) aria2 に URL のリストを与えた場合、それらを一つ一つ逐次的にダウンロー ドするのではなく、複数並列でダウンロードすることができます。一つ ずつダウンロードを待つ必要はないのです。これにより aria2 は与え られた帯域をめいいっぱい使用して高速なダウンロードを実現します。
ファイルをHTTP(S)/FTPとBitTorrentの両方から同時にダウンロードする機能を持っています。HTTP(S)/FTPからダウンロードしたデータは、BitTorrentネットワークにアップロードされます.
信頼性 という意味でもっともすぐれたHTTP(S)/FTPダウンロードユーティリティ です。なぜなら、Metalink のチャンクチェックサムをサポートしており、 BitTorrentのようにダウンロードした部分部分のチェックサムを照合す る機能をもつからです。チェックサムが違っていればその部分だけダウ ンロードすればよいのです。従来のようなファイルをすべてダウンロード してからチェックサムをとり、間違っていれば全部ダウンロードしなおすことと較べてください。 その差はファイルサイズが大きくなるにつれて明らかです。
This release adds an option to limit the number of connections to the same host in each download. aria2 now chooses server which is least used in aria2c instance. This release also adds Chromium cookie support and HTTP only conditional download support which is download file only when the local file is older than remote file. aria2 now can handle %2F in FTP URI properly. HTTP/1.1 chunked decoder was fixed. For Linux, aria2 uses fallocate by default if it is usable.
このリリースでは同一ホストへの接続数を制限するオプションを追加しました. aria2 は, aria2 インスタンスで最も使われていないサーバーを選択するようになりました. Chromium の Cookie をサポートしました. HTTP でのみローカルファイルがリモートよりも古い場合だけダウンロードを行う条件付きダウンロードを追加しました. FTP URI 中の %2F を正しく処理するようになりました. HTTP/1.1 chunked デコーダーを修正しました. Linux では, fallocate が使える場合はデフォルトで使うようになりました.
* Metadata download may take very long time. If URIs are available,
give up metadata download in at most 30 seconds.
* Added --on-bt-download-complete=COMMAND option. For BitTorrent, a
command specified in --on-download-complete is called when download
completes and seeding is over. On the other hand, this option set
the command to be executed when download completes but before
seeding.
* Added --conditional-get option. Download file only when the local
file is older than remote file. This function only works with
HTTP(S) downloads only. It does not work if file size is specified
in Metalink. It also ignores Content-Disposition header. If a
control file exists, this option will be ignored. This function
uses If-Modified-Since header to get only newer file
conditionally. When getting modification time of local file, it
uses user supplied filename(see --out option) or filename part in
URI if --out is not specified.
* FeedbackURISelector now tries to select URI whose host is least
used in aria2 globally.
* Added --min-split-size=SIZE option. aria2 does not split less than
2*SIZE byte range. For example, let's consider downloading 20MiB
file. If SIZE is 10M, aria2 can split file into 2 range [0-10MiB)
and [10MiB-20MiB) and download it using 2 sources(if --split >= 2,
of course). If SIZE is 15M, since 2*15M > 20MiB, aria2 does not
split file and download it using 1 source.
* Added --max-connection-per-server=NUM option. The default value of
NUM is 1. This option limits the number of connections allowed to
one server for each download. This means when NUM is 2 and 1 URI is
provided, even if you specified -s 5, aria2 establishes 2
connections.
* Set end byte in Range header if start byte > 0 to get more chance
to pool socket.
* Fixed ChunkedDecoder. It does not read trailer and final CRLF.
* Send each CWD component of FTP URI in separate CWD command as
described in RFC1738.
* Fixed the bug that aria2 cannot handle %2F in FTP URI properly. If
directory component starts with %2F which percent-encode of '/',
client should issue CWD to absolute path, but aria2 does not do
that. It just issues relative path and download fails.
* Added Chromium/Google Chrome Cookies file support. Thanks to
gotrunks for original patch.
* When allocating disk space, for Linux system with fallocate()
system call, first check file system supports fallocate. This just
run fallocate with small chunk and see it succeeds or fails. If it
succeeds, use fallocate() to allocate entire file otherwise fall
back to traditional slower method: writing zeros. This behavior is
enabled in --file-allocation=prealloc, so this is enabled by
default for most modern Linux.