2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

Run PeerLookupTask more frequently when the number of peer is low.
	* src/DHTGetPeersCommand.cc
	* src/DHTGetPeersCommand.h
pull/1/head
Tatsuhiro Tsujikawa 2010-08-29 12:43:40 +00:00
parent c0b0e4f761
commit 9d58a5cefb
3 changed files with 12 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Run PeerLookupTask more frequently when the number of peer is low.
* src/DHTGetPeersCommand.cc
* src/DHTGetPeersCommand.h
2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Drop connection when bad ut_metadata is received..

View File

@ -79,7 +79,10 @@ bool DHTGetPeersCommand::execute()
if(task_.isNull() &&
((numRetry_ > 0 &&
lastGetPeerTime_.difference(global::wallclock) >= (time_t)numRetry_*5) ||
lastGetPeerTime_.difference(global::wallclock) >= GET_PEER_INTERVAL)) {
lastGetPeerTime_.difference(global::wallclock) >= GET_PEER_INTERVAL ||
(btRuntime_->lessThanMinPeers() &&
lastGetPeerTime_.difference(global::wallclock) >= GET_PEER_MIN_INTERVAL
&& !requestGroup_->downloadFinished()))) {
if(getLogger()->debug()) {
getLogger()->debug("Issuing PeerLookup for infoHash=%s",
bittorrent::getInfoHashString

View File

@ -54,6 +54,8 @@ class DHTGetPeersCommand:public Command {
private:
static const time_t GET_PEER_INTERVAL = (15*60);
static const time_t GET_PEER_MIN_INTERVAL = (5*60);
static const size_t MAX_RETRIES = 10;
RequestGroup* requestGroup_;