Commit Graph

110 Commits

Author SHA1 Message Date
Arvid Norberg be6afa74f3 optimized rate limiter by allowing peers to request more bandwidth while waiting on the socket 2013-03-24 18:00:58 +00:00
Arvid Norberg bff648a89e update copyright dates and add tool to do so 2012-10-02 03:16:33 +00:00
Arvid Norberg e58e27e83a change peer_states to be a bitmask (bw_limit, bw_network, bw_disk) 2011-10-25 17:34:42 +00:00
Arvid Norberg 57f24128a9 add more default reporting about the request and download queue of peers to track end-game stall issue 2011-06-06 04:24:12 +00:00
Arvid Norberg 20d4279177 optimized piece picking to not cause busy loops in some end-game modes 2010-12-18 10:19:34 +00:00
Arvid Norberg e5f980d80d merged uTP branch into trunk (yay) 2010-11-29 01:33:05 +00:00
Arvid Norberg 1e70456f58 improved support for multi-homed clients 2010-07-17 07:13:14 +00:00
Arvid Norberg fb47469834 experimental support for the BitTyrant choking algorithm 2010-02-09 03:04:41 +00:00
Arvid Norberg 6c67da08d6 split socket.hpp up in multiple headers to lower build time somewhat 2009-09-16 03:46:36 +00:00
Arvid Norberg ae3be201c4 reduced the number of floating point operations to better support systems with no FPU 2009-07-19 04:59:27 +00:00
Arvid Norberg f0134c1b11 improved disk error handling and expanded use of error_code in error reporting 2009-06-10 08:30:55 +00:00
Arvid Norberg c8176cca55 optimized peer storage in resume data an in memory. Should use far less memory than previously for the peer list. Introduced peer source affinity, to avoid problem with a peer list that's diluted with stale peers 2009-05-06 22:36:24 +00:00
Arvid Norberg 7109b86566 greatly simplified the rate limiter and generalized all rate limits (peer, torrent, global) to allow for arbitrary rate limit configurations 2009-04-26 00:21:59 +00:00
Arvid Norberg 31054ef069 first implementation of set_piece_deadline 2009-03-17 09:34:44 +00:00
Arvid Norberg 7fff6ace1b added download queue time estimate 2009-02-17 02:33:45 +00:00
Arvid Norberg e5d3755afb added support for http seeds (BEP 17) 2008-12-30 03:54:07 +00:00
Arvid Norberg 7d83bfb6b3 fixed pedantic warnings 2008-10-26 22:12:12 +00:00
Arvid Norberg 971f437b41 added num_pieces to peer_info. Fixes #385 2008-10-24 00:15:39 +00:00
Andrew Resch 4189e0b697 add peer_info::progress 2008-09-25 20:39:06 +00:00
Arvid Norberg 7607034ab6 exposed upload_only in peer_info 2008-07-19 07:57:43 +00:00
Arvid Norberg a20f1a8fa0 keeps track of the number of requests waiting in the send buffer and adjusts bandwidht priority accordingly in the bandwidth limiter 2008-07-08 00:03:08 +00:00
Arvid Norberg 2ac5c13e6f introduced a stricter timeout on piece requests and snubbing. exposed some more data about this through the peer_info. Fixes #40 2008-06-29 09:50:42 +00:00
cg25 ff3e80c42f Removed svn:executable property from {c,h}pp files in branches/RC_0_13 and
trunk.
2008-06-25 14:15:21 +00:00
Arvid Norberg 68c31e48dc replaced vector<bool> with a custom bitfield type 2008-05-28 02:35:02 +00:00
Arvid Norberg 17c4257cce added get_full_peer_list to retrieve all the peers known for a swarm 2008-04-13 06:32:48 +00:00
Arvid Norberg 093d912e9a receive buffer optimization. added receive_buffer_size and used_receive_buffer to peer_info. changed plugin api to make use of new disk_buffer_holder type 2008-04-10 10:03:23 +00:00
Arvid Norberg 57d75e120a initial support for GeoIP (only AS mappings for now) 2008-04-05 04:53:22 +00:00
Arvid Norberg 0fcb204128 added peak rates to peer_info 2008-04-03 06:11:21 +00:00
Arvid Norberg cecd0dfcd2 added rtt estimation for outgoing connections 2008-02-09 22:42:56 +00:00
Arvid Norberg b19bf337bf generalized peer read/write state 2008-01-13 23:46:43 +00:00
Arvid Norberg 3a727e99ff expose more info through peer_info 2008-01-10 22:13:23 +00:00
Arvid Norberg 1d6e0f5bf6 bandwidth request block size optimization 2008-01-07 04:47:20 +00:00
Arvid Norberg 73bb0c05ad added 'incoming' peer source 2007-09-15 20:17:23 +00:00
Arvid Norberg 80aee32972 fixed piece picker problem when a downloading piece could not be picked with the right speed category 2007-09-10 08:07:18 +00:00
Arvid Norberg 23a20a24c1 added more asserts for choke/unchoke states and a peer_info flag to indicate a peer being optimistically unchoked 2007-08-21 17:45:28 +00:00
Arvid Norberg 54aa76f940 exposed queued disk bytes in peer_info 2007-08-01 06:11:11 +00:00
Arvid Norberg a3a2217276 an approximate peer download rate is now in peer_info 2007-06-07 00:05:18 +00:00
Arvid Norberg 273f8bd921 merged back encryption branch to trunk 2007-06-06 00:41:20 +00:00
Arvid Norberg bb71832f5f exposed some more peer info 2007-05-25 19:42:10 +00:00
Arvid Norberg 54805ca60b added option to disable country resolving 2007-05-02 19:47:38 +00:00
Arvid Norberg a22ad5ad33 added failcount to peer_info. fixes #31 2007-04-13 20:19:04 +00:00
Arvid Norberg 3ed24da320 added source to peer_info, which is a bitmask of the sources where the peer has been acquired from 2007-04-10 21:23:13 +00:00
Arvid Norberg f14c84b01e fixes in DHT to make it work when the number of transaction slots are full (very rare case). Added a feature to (optionally) resolve the countries of peers and updated the docs (see peer_info::country). 2007-01-29 07:39:33 +00:00
Arvid Norberg 41810b1166 merged back the asio development branch 2006-04-25 21:04:48 +00:00
Arvid Norberg bcbe165aee added the ability to limit the number of half-open tcp connections 2005-11-02 16:28:39 +00:00
Arvid Norberg 3f36dd0395 added the ability to build libtorrent as a shared library. Fixed bugs with deleting of incomplete types (replaced auto_ptr with scoped_ptr). Made the string converter fall back on windows local code page if utf-8 decoding failed. 2005-11-01 18:30:39 +00:00
Arvid Norberg 2fabb2bf80 experimental support for filtering pieces (filter from downloading that is) 2005-05-25 10:01:01 +00:00
Arvid Norberg e9ef2b56a5 *** empty log message *** 2004-10-17 22:23:08 +00:00
Arvid Norberg 0dbbc18186 removed most warnings on msvc.
reimplemented piece_manager::check_pieces to take care of all possible cases of the storage state.
2004-01-25 18:18:36 +00:00
Magnus Jonsson 5068562916 *** empty log message *** 2004-01-14 11:46:26 +00:00
Magnus Jonsson 5b242a6464 *** empty log message *** 2004-01-14 02:36:01 +00:00
Arvid Norberg b9bbf242c6 *** empty log message *** 2004-01-09 10:50:22 +00:00
Arvid Norberg e2baa0a646 *** empty log message *** 2004-01-04 23:51:54 +00:00
Arvid Norberg 8a3d994416 *** empty log message *** 2004-01-04 04:29:13 +00:00
Arvid Norberg 5158ca8558 Updated zlib version.
Changed fignerprint interface to force azureus-style fingerprints.
Tested the load balancing, it seems to work.
2003-12-16 13:33:29 +00:00
Arvid Norberg 557b3f3955 *** empty log message *** 2003-12-09 18:09:34 +00:00
Arvid Norberg d99762f0b0 *** empty log message *** 2003-12-08 16:39:05 +00:00
Arvid Norberg 420ab6bff2 *** empty log message *** 2003-11-09 18:17:09 +00:00
Arvid Norberg d7f92afea3 *** empty log message *** 2003-10-29 23:28:09 +00:00
Arvid Norberg ec34b1bfdb Initial commit of 'new' libtorrent.
The Jamfile is broken and will hopefully be fixed soon.
2003-10-22 23:00:57 +00:00