summaryrefslogtreecommitdiff
path: root/src/DownloadEngine.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-08-04 17:06:47 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-08-04 17:06:47 +0000
commitd64c8e75f6c3b6895f51036e5d16ad696dfe0f66 (patch)
treea9f70ca4f9885772f032c9d30d7ecdbd9fa30c5d /src/DownloadEngine.cc
parent7449aba847b876cebaee7c02260a4d0b2ec491bd (diff)
2008-08-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Implemented download speed based URI selection algorithm. Introduced new option --uri-selector. If --uri-selector=feedback is given, aria2 uses download speed observed in the previous downloads and chooses fastest server in the URI list. Currently at most 10 URIs are considered to introduce randomeness for finding better servers. The speed is average download speed in the downloads. On the other hand, if --uri-selector=inorder is given, which is default, URI is tried in order in URI list. The usage text for the new option has not been written yet. * src/AbstractCommand.cc * src/DownloadCommand.cc * src/DownloadEngine.cc * src/DownloadEngineFactory.cc * src/InOrderURISelector.cc * src/InOrderURISelector.h * src/OptionHandlerFactory.cc * src/PeerStat.h * src/RequestGroup.cc * src/RequestGroup.h * src/RequestGroupMan.cc * src/RequestGroupMan.h * src/SegmentMan.cc * src/SegmentMan.h * src/ServerStat.cc * src/ServerStat.h * src/ServerStatMan.cc * src/ServerStatMan.h * src/ServerStatURISelector.cc * src/ServerStatURISelector.h * src/URISelector.h * src/option_processing.cc * src/prefs.cc * src/prefs.h * test/InOrderURISelectorTest.cc * test/RequestGroupManTest.cc * test/ServerStatManTest.cc * test/ServerStatURISelectorTest.cc
Diffstat (limited to 'src/DownloadEngine.cc')
-rw-r--r--src/DownloadEngine.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/DownloadEngine.cc b/src/DownloadEngine.cc
index 7332bcc3..177347f4 100644
--- a/src/DownloadEngine.cc
+++ b/src/DownloadEngine.cc
@@ -51,6 +51,7 @@
#include "Util.h"
#include "a2functional.h"
#include "DlAbortEx.h"
+#include "ServerStatMan.h"
#include <signal.h>
#include <cstring>
#include <algorithm>
@@ -783,6 +784,7 @@ void DownloadEngine::calculateStatistics()
void DownloadEngine::onEndOfRun()
{
+ _requestGroupMan->updateServerStat();
_requestGroupMan->closeFile();
_requestGroupMan->save();
}