Arvid Norberg
|
7d751b80da
|
merged fixes from RC_1_0
|
2014-08-26 03:14:32 +00:00 |
Arvid Norberg
|
ab8c1eb334
|
log latency of bittorrent requests
|
2014-07-28 22:18:06 +00:00 |
Arvid Norberg
|
2f6a68bad3
|
track RTT of piece requests
|
2014-07-28 07:52:59 +00:00 |
Arvid Norberg
|
30713a4a79
|
remove buffer stats debugging feature
|
2014-07-19 08:20:20 +00:00 |
Arvid Norberg
|
65bb1d0006
|
pass all the arguments to peer connections as an argument pack
|
2014-07-14 04:32:41 +00:00 |
Arvid Norberg
|
01640e1682
|
separate stats counters from session_interface (this was the main use of m_ses in peer connections)
|
2014-07-13 04:56:53 +00:00 |
Arvid Norberg
|
bf18e310e6
|
remove some peer connection dependencies on m_ses
|
2014-07-12 22:32:55 +00:00 |
Arvid Norberg
|
a6f345181f
|
fixed some unused argument warnings
|
2014-07-07 06:28:48 +00:00 |
Arvid Norberg
|
7351389ce8
|
land libtorrent_aio branch in trunk
|
2014-07-06 19:18:00 +00:00 |
Arvid Norberg
|
474e77039f
|
removed set_ratio feature
|
2014-05-03 17:11:55 +00:00 |
Arvid Norberg
|
3192e59a1a
|
improve piece_deadline/streaming
|
2014-04-22 04:21:14 +00:00 |
Arvid Norberg
|
0b3df1c973
|
merged integer overflow fix from RC_0_16
|
2014-04-16 08:25:14 +00:00 |
Arvid Norberg
|
a943fec777
|
update copyright
|
2014-02-23 19:12:25 +00:00 |
Arvid Norberg
|
8ab1d8b686
|
more build fixes and cleaning up
|
2014-01-19 20:19:15 +00:00 |
Arvid Norberg
|
702b68ecc4
|
clean up assert related defines and debuf-only fields less error-prone. fix missing initialization in file_pool caused by mistake in defines under which the debug field was initialized
|
2014-01-19 19:45:50 +00:00 |
Arvid Norberg
|
4e6b1cfbfb
|
update copyright
|
2013-12-25 17:07:16 +00:00 |
Arvid Norberg
|
faa53d7657
|
member re-order and struct packing
|
2013-12-02 04:24:10 +00:00 |
Arvid Norberg
|
fc2fc8dfb2
|
fix initialization order warnings. pack peer_connection and torrent
|
2013-11-26 07:47:48 +00:00 |
Arvid Norberg
|
e122678d04
|
pack fields in internal_file_entry, torrent_status and chained_buffer
|
2013-11-26 04:39:33 +00:00 |
Arvid Norberg
|
dafa812109
|
merged fixes from RC_0_16
|
2013-11-08 07:23:36 +00:00 |
Arvid Norberg
|
90e7a4c9e3
|
merged some rate limiter polish from libtorrent_aio
|
2013-11-02 03:26:53 +00:00 |
Arvid Norberg
|
6a1e861a1d
|
introduce mechanism for plugins to prevent libtorrent to disconnect peers for time-out reasons
|
2013-08-09 07:55:12 +00:00 |
Arvid Norberg
|
1cb0161f0e
|
merge fix from RC_0_16
|
2013-07-26 16:59:10 +00:00 |
Arvid Norberg
|
b03300201b
|
fix release build
|
2013-06-29 05:53:17 +00:00 |
Arvid Norberg
|
93993002ab
|
merged unchoke algorithm fix from RC_0_16
|
2013-06-01 22:33:11 +00:00 |
Arvid Norberg
|
520b8bfcd1
|
move out alert_manager to its own compilation unit. remove TORRENT_DISABLE_EXTENSIONS from affecting the public API
|
2013-04-09 02:38:11 +00:00 |
Arvid Norberg
|
22b1c968a4
|
back-ported choking issue at high uplod rates
|
2013-03-26 04:45:38 +00:00 |
Arvid Norberg
|
a0caa0f4b2
|
disable invariant_check functions when invariant checks are disabled
|
2013-02-25 04:13:46 +00:00 |
Arvid Norberg
|
ac5a9e9882
|
introduce global connection priority for improved swarm performance
|
2012-12-31 06:54:54 +00:00 |
Arvid Norberg
|
bff648a89e
|
update copyright dates and add tool to do so
|
2012-10-02 03:16:33 +00:00 |
Arvid Norberg
|
c56901e864
|
improve web seed hash failure mode
|
2012-09-29 17:46:41 +00:00 |
Arvid Norberg
|
d6a53200a2
|
add a force-flag to cancel_request
|
2012-06-06 16:05:25 +00:00 |
Arvid Norberg
|
5275e75fa5
|
back-port deletion of the redundant peer_connection constructor from libtorrent_aio
|
2012-05-14 05:43:45 +00:00 |
Arvid Norberg
|
49f74be42f
|
make super-seeding a bit more robust
|
2012-04-23 05:48:46 +00:00 |
Arvid Norberg
|
cafbf2ca1d
|
more work on minimizing shared object export symbol table
|
2012-03-20 03:53:07 +00:00 |
Arvid Norberg
|
8f3c3de1e2
|
add incoming requests to stats logging
|
2012-03-05 10:05:20 +00:00 |
Arvid Norberg
|
f7b5c10b2b
|
add asserts to try to catch crash in peer_connection::received_valid_data
|
2012-02-09 06:24:58 +00:00 |
Arvid Norberg
|
94a1cae4a3
|
don't disconnect peers that don't have metadata
|
2012-02-07 09:18:07 +00:00 |
Arvid Norberg
|
a6b5f761e8
|
rename is_local to is_outgoing and m_active to m_outgoing
|
2012-02-07 03:46:21 +00:00 |
Arvid Norberg
|
4706807300
|
fix issue with outgoing connections not being tied to a torrent
|
2012-01-21 21:29:22 +00:00 |
Arvid Norberg
|
7f90a241b6
|
don't let hung outgoing connection attempts block incoming connections
|
2012-01-21 09:05:34 +00:00 |
Arvid Norberg
|
61e8d3dd49
|
improved peer exchange performance by sharing incoming connections which advertize listen port
|
2012-01-04 20:49:54 +00:00 |
Arvid Norberg
|
8e8f798905
|
get rid of read-recurse hack
|
2011-11-30 20:07:18 +00:00 |
Arvid Norberg
|
614b279acb
|
fix assert
|
2011-11-27 05:46:52 +00:00 |
Arvid Norberg
|
f979f7a77b
|
make receive_buffer() not return a range exceeding the actual buffer
|
2011-11-27 01:08:28 +00:00 |
Arvid Norberg
|
9afd09d797
|
optimize sending buffers on peer sockets by corking and uncorking
|
2011-10-24 04:22:53 +00:00 |
Arvid Norberg
|
d3fb55e1da
|
optimize socket send buffers a bit
|
2011-10-19 02:40:37 +00:00 |
Arvid Norberg
|
85db40e2c5
|
log outstanding reading bytes from peers in stats log
|
2011-09-23 20:57:42 +00:00 |
Arvid Norberg
|
469414d486
|
initial BitTorrent over SSL support
|
2011-09-12 03:51:49 +00:00 |
Arvid Norberg
|
92bcb9ebfd
|
feature to encrypt peer connections with a secret AES-256 key stored in .torrent file
|
2011-09-05 05:50:41 +00:00 |
Arvid Norberg
|
d4958c9286
|
support for dont-have extension message
|
2011-08-07 00:41:13 +00:00 |
Arvid Norberg
|
88fa0b9393
|
optimize send buffer allocation and deallocation by not allowing requiring contiguous buffers
|
2011-05-19 02:41:28 +00:00 |
Arvid Norberg
|
a73960aa5a
|
support release asserts
|
2011-05-08 09:04:59 +00:00 |
Arvid Norberg
|
573a291495
|
first step to remove recursion in bandwidth channel
|
2011-04-21 03:13:53 +00:00 |
Arvid Norberg
|
5456f2ac91
|
provide more stats with stats builds
|
2011-02-03 04:09:50 +00:00 |
Arvid Norberg
|
b230c385d9
|
clean up logic around waiting for disk write queue to fall below low watermark. optimize peer disconnect. Fix integer overflow bug in uTP/TCP mixed mode algorithm. Fixed some invariant checks for closing connections issues
|
2011-01-25 08:03:35 +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
|
f4746f4090
|
verbose logging cleanup
|
2010-12-01 04:22:03 +00:00 |
Arvid Norberg
|
e5f980d80d
|
merged uTP branch into trunk (yay)
|
2010-11-29 01:33:05 +00:00 |
Arvid Norberg
|
8737a339c8
|
refactored verbose peer logging to use format strings
|
2010-10-31 22:12:26 +00:00 |
Arvid Norberg
|
e4de1fc8b1
|
graceful disconnect mode which finishes transactions before disconnecting peers
|
2010-10-30 08:36:18 +00:00 |
Arvid Norberg
|
d737dd051d
|
added support for chunked encoding for web seeds
|
2010-10-27 06:39:18 +00:00 |
Arvid Norberg
|
a7c87e14dd
|
added functions to query an individual peer's upload and download limit
|
2010-10-01 16:09:22 +00:00 |
Arvid Norberg
|
b6f92aa981
|
added initial support for share-mode
|
2010-09-05 16:01:36 +00:00 |
Arvid Norberg
|
18a3d545b0
|
fixed potential hang issue when receiving faster than we can handle the incoming messages
|
2010-08-28 19:44:50 +00:00 |
Arvid Norberg
|
9a9c121ec0
|
fixed assert typo
|
2010-07-15 06:31:39 +00:00 |
Arvid Norberg
|
4c6be42b74
|
added feature to not count downloaded bytes from web seeds in stats
|
2010-07-15 06:27:44 +00:00 |
Arvid Norberg
|
4e576f93fd
|
removed the session mutex for improved performance
|
2010-07-14 04:16:38 +00:00 |
Arvid Norberg
|
69001e6a6b
|
fixed bug in metadata extensions combined with encryption
|
2010-06-18 05:44:08 +00:00 |
Arvid Norberg
|
b882914461
|
refactored socket reading code to not use async. operations unnecessarily
|
2010-06-18 04:43:20 +00:00 |
Arvid Norberg
|
23ba8c8a72
|
fixed synchronization issue between download queue and piece picker
|
2010-05-13 06:29:33 +00:00 |
Arvid Norberg
|
c26d1631e0
|
fix bug in web and http seeds shutdown
|
2010-04-09 05:51:31 +00:00 |
Arvid Norberg
|
5224e0c340
|
complete_ago extension
|
2010-03-19 18:39:51 +00:00 |
Arvid Norberg
|
e3a9578e2d
|
fixed some shadow warnings
|
2010-03-06 07:16:39 +00:00 |
Arvid Norberg
|
54b4bc7754
|
better rate limiter fix
|
2010-02-21 01:32:57 +00:00 |
Arvid Norberg
|
cead1b5780
|
rate limiter fix for metadata extension
|
2010-02-20 18:56:53 +00:00 |
Arvid Norberg
|
348cd22b9a
|
fixed typo
|
2010-02-09 04:58:16 +00:00 |
Arvid Norberg
|
fb47469834
|
experimental support for the BitTyrant choking algorithm
|
2010-02-09 03:04:41 +00:00 |
Arvid Norberg
|
3bc40b9980
|
fix builds for all combinations of stats and disk stats
|
2010-01-31 20:32:12 +00:00 |
Arvid Norberg
|
ca20d2d600
|
fixed broken build
|
2010-01-31 20:22:35 +00:00 |
Arvid Norberg
|
3691ca847b
|
fixed missing include
|
2010-01-20 03:01:39 +00:00 |
Arvid Norberg
|
c9b594fde1
|
support sending suggest messages based on what's in the read cache. support 'explicit read cache'
|
2010-01-15 16:45:42 +00:00 |
Arvid Norberg
|
cdf459dad5
|
only keep one outstanding duplicate request per peer
|
2009-12-25 16:52:57 +00:00 |
Arvid Norberg
|
f612a07b06
|
more header dependency fixes and some configure header cleanup
|
2009-12-09 09:55:19 +00:00 |
Arvid Norberg
|
8dd244581d
|
header optimizations
|
2009-11-26 05:45:43 +00:00 |
Arvid Norberg
|
2280454a99
|
support upload-only extension message
|
2009-11-24 18:49:59 +00:00 |
Arvid Norberg
|
6343fe6a6d
|
optimized header dependencies to lower build time
|
2009-11-23 08:38:50 +00:00 |
Arvid Norberg
|
e43340c961
|
made it possible to build without RTTI
|
2009-11-02 20:43:38 +00:00 |
Arvid Norberg
|
dcd8bb6718
|
move stats instrumentation to .cpp file to fix header dependency issue
|
2009-10-28 19:56:18 +00:00 |
Georg Rudoy
|
e8327c96b1
|
Build fixes.
|
2009-09-17 11:22:18 +00:00 |
Arvid Norberg
|
0f62beebb3
|
improved compile time by moving rate limiter implementation to a cpp file and making it a non-template
|
2009-09-16 04:41:35 +00:00 |
Arvid Norberg
|
35bca49c61
|
add torrent priority to adjust bandwidth allocation of torrent's peers
|
2009-09-13 02:24:25 +00:00 |
Arvid Norberg
|
ddbb35cf7d
|
fixed bug in connect candidate counter
|
2009-09-09 16:42:52 +00:00 |
Arvid Norberg
|
7933132cd9
|
fixed assert when built with disk stats
|
2009-08-05 19:02:51 +00:00 |
Arvid Norberg
|
137d2d63f5
|
cleaned up policy. Moved logic from policy to torrent
|
2009-07-23 04:38:52 +00:00 |
Arvid Norberg
|
848a4b2cf2
|
fixed bug where downloading from peers could stall when downloading at very high rates
|
2009-07-21 04:29:29 +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
|
76db4627f6
|
another pending_bytes fix
|
2009-07-01 04:14:43 +00:00 |
Arvid Norberg
|
f09774607f
|
added upload mode
|
2009-06-18 22:32:55 +00:00 |
Arvid Norberg
|
07bcb3545a
|
converted a whole lot of error strings into error_codes. Documented some previously undocumented alerts as well as all the error codes
|
2009-06-12 16:40:38 +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
|
0283f07aed
|
more buffer categories to help debugging
|
2009-05-31 22:38:49 +00:00 |
Arvid Norberg
|
e3c07c0934
|
converted some recursive mutexes to regular ones
|
2009-05-23 21:36:09 +00:00 |
Daniel Wallin
|
6014ac1e7a
|
Allocate memory for read/write handlers inplace inside peer_connection instance.
|
2009-05-20 08:57:08 +00:00 |
Arvid Norberg
|
31c422df0a
|
added feature to set a separate global rate limit for local peers
|
2009-05-14 17:21:19 +00:00 |
Arvid Norberg
|
89ac9916d7
|
replaced std::set with std::vector for accept fast piece list
|
2009-05-04 00:08:00 +00:00 |
Arvid Norberg
|
641abc6c4a
|
slight memory optimization and some header cleanup
|
2009-05-03 20:21: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
|
fba4ae541c
|
fixed invalid iterator access in debug mode
|
2009-04-25 08:19:21 +00:00 |
Arvid Norberg
|
db8487be46
|
auto unchoke improvement
|
2009-04-04 07:55:34 +00:00 |
Arvid Norberg
|
0070232f7c
|
attempt to fix #493 by keeping io_service running while there are still peer connections
|
2009-03-31 08:02:25 +00:00 |
Arvid Norberg
|
31054ef069
|
first implementation of set_piece_deadline
|
2009-03-17 09:34:44 +00:00 |
Arvid Norberg
|
84a513bffb
|
initial support for merkle hash tree torrents
|
2009-03-13 06:09:39 +00:00 |
Arvid Norberg
|
0de21dc815
|
fixed bug related to ignoring upload slots and made the piece rejection code more robust to handle similar bugs better
|
2009-03-12 17:06:41 +00:00 |
Arvid Norberg
|
93eda7c7fa
|
fix ignore unchoke slot invariant check
|
2009-03-01 07:20:08 +00:00 |
Arvid Norberg
|
7fff6ace1b
|
added download queue time estimate
|
2009-02-17 02:33:45 +00:00 |
Arvid Norberg
|
2623037482
|
local peers are excempt from unchoke slots. #469
|
2009-01-28 06:14:21 +00:00 |
Arvid Norberg
|
952ed687cd
|
made session stats config build
|
2008-12-26 07:00:21 +00:00 |
Arvid Norberg
|
5bc4a2089d
|
fixed seeding choking algorithm to be more fair (proper round robin)
|
2008-12-10 23:07:44 +00:00 |
Arvid Norberg
|
b41cdd6469
|
initial super seeding support
|
2008-12-08 06:36:22 +00:00 |
Arvid Norberg
|
09b3a865ef
|
fixed compiler flags in pkg-config file and made header files not depend on the NDEBUG define
|
2008-11-29 21:33:21 +00:00 |
Arvid Norberg
|
c3bbf138a4
|
estimate TCP/IP overhead more accurately
|
2008-11-14 20:51:49 +00:00 |
Arvid Norberg
|
3412c0f709
|
added option to set peers in a state where it doesn't download
|
2008-11-06 08:34:56 +00:00 |
Arvid Norberg
|
fddd1ee8e2
|
fixed assert when connecting to upload-only peers
|
2008-09-07 01:01:25 +00:00 |
Arvid Norberg
|
41808f8742
|
big change to improve piece picker. Better end-game mode. More options on which pieces to pick.
|
2008-09-06 21:04:57 +00:00 |
Arvid Norberg
|
92ed7fb364
|
fixed metadata extension issues
|
2008-08-29 17:21:56 +00:00 |
Arvid Norberg
|
429a118dd2
|
keep track of interest more tightly. better support for upload_only
|
2008-07-18 10:03:42 +00:00 |
Arvid Norberg
|
1bdb6afebd
|
fixes to previous connection timeout check-in
|
2008-07-10 10:58:30 +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
|
f7042ca84a
|
improved piece timeout and peer snubbing logic
|
2008-07-07 12:04:06 +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 |
Arvid Norberg
|
d1b2cd558e
|
moved peer time out logic to second tick
|
2008-06-29 05:35:48 +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
|
c460704a5f
|
streamlined class footprint by reducing padding
|
2008-05-19 02:52:32 +00:00 |
Arvid Norberg
|
111f5faecb
|
upload only extension
|
2008-05-18 05:59:47 +00:00 |
Arvid Norberg
|
f259e34f86
|
peer_connection fix for incoming connections
|
2008-05-12 10:10:39 +00:00 |
Arvid Norberg
|
abb174218b
|
updated disconnect logic (also in [2279]). Introduced new peer_disconnect_alert used for normal disconnects and peer_error_alert is now used for protocol level errors
|
2008-05-12 06:05:13 +00:00 |
Arvid Norberg
|
f2ac4db1af
|
changed the optimistic disconnect logic to be more efficient and configurable
|
2008-05-12 05:17:11 +00:00 |
Arvid Norberg
|
e09457e4ab
|
take an estimate of the IP ACK traffic into account when rate limiting (allows setting rate limits closer to the capacity)
|
2008-05-05 17:08:14 +00:00 |
Arvid Norberg
|
d15573ecc2
|
disk receive buffer cleanup
|
2008-05-05 06:25:22 +00:00 |
Arvid Norberg
|
c7e6c04705
|
switched over to asio from boost-1.35
|
2008-05-03 16:05:42 +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
|
1511f2f59b
|
removed calls to self() from inside constructors in peer connections
|
2008-03-31 04:46:24 +00:00 |
Arvid Norberg
|
a97be6937a
|
unchoker counts bytes instead of rates
|
2008-03-10 03:30:01 +00:00 |
Arvid Norberg
|
cecd0dfcd2
|
added rtt estimation for outgoing connections
|
2008-02-09 22:42:56 +00:00 |
Arvid Norberg
|
a53473a65d
|
added new logging mode to log peer errors
|
2008-02-07 07:09:52 +00:00 |
Arvid Norberg
|
5527a8e9b1
|
fixed build issue on msvc
|
2008-01-27 21:03:33 +00:00 |