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 JSON-RPC interface. The JSON-RPC and XML-RPC shares same APIs. The JSON-RPC also supports JSONP. 2 new options were added: --retry-wait and --async-dns-server. The downloads added by aria2.addTorrent and aria2.addMetalink RPC method are now saved to the file specified in --save-session option. The proxy options and related environment variables now accept https:// and ftp:// scheme. This release fixes the bug that causes segmentation fault when unpausing downloads in some situations. MinGW32 build now looks for USERPROFILE and the combination of HOMEDRIVE and HOMEPATH to get user's home directory and doesn't check permission of .netrc file.
このリリースでは JSON-RPC インターフェースを追加しました. JSON-RPC と XML-RPC では同じ API を使います. JSON-RPC は JSONP もサポートします. --retry-wait と --async-dns-server の二個のオプションを追加しました. aria2.addTorrent と aria2.addMetalink RPC メソッドで追加されたダウンロードが --save-session オプションで指定されるファイルに保存されるようになりました. proxy オプションと環境変数で https:// と ftp:// スキームを指定できるようになりました. ダウンロードを unpause すると segmentation fault が発生するバグを修正しました. MinGW32 ビルドでは, ユーザーのホームディレクトリを探すときに USERPROFILE と HOMEDRIVE, HOMEPATH の組み合わせも使うようになり, .netrc の権限をチェックしなくなりました.
* Updated gettext to 0.18
* Added JSON-RPC support. --enable-xml-rpc was deprecated and
--enable-rpc should be used instead. Similarly, --xml-rpc-*
options were replaced with --rpc-* options. We are implementing
JSON-RPC based on JSON-RPC 2.0 draft spec.
* Fixed rounding error in DownloadEngine::run(). This fixes the bug
that executeCommand() with Command::STATUS_ALL is not called in
every interval correctly because of rounding error in timer.
* Refresh buckets at DHT initialization without checking serialized
time. Checking serialized time does not work if you stop aria2 as
soon as it started DHT. The serialized time in dht.dat will be
updated, but buckets are not updated and still old. When you
restart aria2 again soon, it does not refresh buckets because
serialized time is recent.
* Save downloads added by aria2.addTorrent or aria2.addMetalink in
--save-session file. Uploaded data are saved as file named hex
string of sha1 hash of uploaded data plus extension(".torrent" for
torrent and ".meta4" for metalink). For example,
0a3893293e27ac0490424c06de4d09242215f0a6.torrent. The directory
where these files are saved is specified by --dir option. These
file paths are written in --save-session file.
* Fixed the bug that causes segmentation fault when unpause
RequestGroup which has resolved BtDependency.
* Look for USERPROFILE and the combination of HOMEDRIVE and HOMEPATH
to get user's home directory in MinGW32 build. Usually HOME
environment variable is defined in *nix like OSes, but not in
Windows. So in MinGW32 build, if HOME is not defined, we also look
for USERPROFILE and the combination of HOMEDRIVE and HOMEPATH.
* Fixed the bug that DownloadContext::basePath_ is not escaped.
* Added Date, Expires and Cache-Control response header field to RPC
response.
* Added --async-dns-server option. This option accepts comma
separated list of DNS server addresses used in asynchronous DNS
resolver. Usually asynchronous DNS resolver reads DNS server
addresses from /etc/resolv.conf. When this option is used, it uses
DNS servers specified in this option instead of ones in
/etc/resolv.conf. You can specify both IPv4 and IPv6 address. This
option is useful when the system does not have /etc/resolv.conf and
user does not have the permission to create it.
* Accept https:// and ftp:// in proxy options and environment variables.
* Fixed overflow in the calculation of progress percentage for file
allocation and hash check when off_t is 32bit.
* Accept HTTP 304 reply as success when If-None-Match request-header
field is specified using --header option. When --conditional-get
is used, --allow-overwrite is now required to overwrite existing
file.
* Added aria2.removeDownloadResult RPC method. The method signature
is aria2.removeDownloadResult(gid). This method removes
completed/error/removed download denoted by gid from memory. This
method returns "OK" for success.
* Use IP address of control connection to connect to the remote server in
FTP passive mode.
* Don't check permission of .netrc file in MinGW32 build.
* Added --retry-wait option. This option was once existed in aria2
but erased on 2009-09-20. Now it is resurrected once again. We
choose 0 as default value for backward compatibility. Now we retry
HTTP download when remote server returns "503 Service Unavailable"
if --retry-wait > 0. We also added error code 29:
HTTP_SERVICE_UNAVAILABLE.
* Don't show metadata download and paused download in "Download Results".