Browse Source

reduce the dht traffic load due to mostly useless tracker requests

miguelfreitas
Miguel Freitas 11 years ago
parent
commit
aa312dfc39
  1. 5
      libtorrent/src/torrent.cpp

5
libtorrent/src/torrent.cpp

@ -2111,11 +2111,16 @@ namespace libtorrent
int port = m_ses.listen_port(); int port = m_ses.listen_port();
#endif #endif
// this is where the tracker request is made. if we have enough connections already don't bother
// invoking the tracker again so we should prevent useless traffic.
// peer exchange protocol will obtain new peers anyway.
if( m_allow_peers && int(m_connections.size()) < 8 ) {
boost::weak_ptr<torrent> self(shared_from_this()); boost::weak_ptr<torrent> self(shared_from_this());
m_ses.m_dht->announce(name(), m_torrent_file->info_hash() m_ses.m_dht->announce(name(), m_torrent_file->info_hash()
, m_ses.external_address().external_address(address_v4()), port, is_seed(), true, m_policy.num_peers() , m_ses.external_address().external_address(address_v4()), port, is_seed(), true, m_policy.num_peers()
, boost::bind(&torrent::on_dht_announce_response_disp, self, _1)); , boost::bind(&torrent::on_dht_announce_response_disp, self, _1));
} }
}
void torrent::on_dht_announce_response_disp(boost::weak_ptr<libtorrent::torrent> t void torrent::on_dht_announce_response_disp(boost::weak_ptr<libtorrent::torrent> t
, std::vector<tcp::endpoint> const& peers) , std::vector<tcp::endpoint> const& peers)

Loading…
Cancel
Save