Commit Graph

236 Commits

Author SHA1 Message Date
Arvid Norberg 2b9b2a188a remove uTP delayed ack and instead send acks when the udp socket has been drained. simplify the udp socket to use null_buffers and allocate less memory for buffers. this also eliminated the race condition when resizing the udp socket receive buffer which greatly simplified it 2012-06-21 15:05:57 +00:00
Arvid Norberg 9f0e892228 merged ban_web_seed setting patch from RC_0_16 2012-04-11 03:25:09 +00:00
Arvid Norberg 418c1e8190 make tracker back-off configurable 2012-03-29 03:51:22 +00:00
Arvid Norberg 619c375528 don't inline large functions 2012-03-19 06:06:52 +00:00
Arvid Norberg df2e891a2d set uTP target delay to 100 ms. expose setting for packet loss multiplier for cwnd 2012-03-11 05:46:15 +00:00
Arvid Norberg 9bd40e950b add send_buffer_low_watermark in an attempt to improve seed ramp-up time 2012-03-07 02:59:50 +00:00
Arvid Norberg 4a40e68a82 landed ssl branch back into trunk 2012-01-14 16:04:25 +00:00
Arvid Norberg ef724014aa deprecated per-peer rate limits (and removed them from libtorrent_aio) 2011-12-18 12:52:09 +00:00
Arvid Norberg c40d072ab1 increase default cache expiry to 5 minutes 2011-11-16 09:49:00 +00:00
Arvid Norberg 4cde952a68 fix default settings for cache expiry and disk queue size 2011-09-26 05:32:22 +00:00
Arvid Norberg 451c31828f changed semantics of send_buffer_watermark_factor to be specified as a percentage 2011-09-23 21:12:28 +00:00
Arvid Norberg 3e91b45904 lower some default settings 2011-09-16 09:58:45 +00:00
Arvid Norberg ec74d500a4 clean up encryption code some 2011-08-29 02:00:17 +00:00
Arvid Norberg f6554bad08 back ported feature to expose which pieces have been verified in seed_mode and exposes it in client_test (initially implemented in the libtorrent_aio branch) 2011-08-07 07:19:18 +00:00
Arvid Norberg c647e95244 adjust default read cache line size and log IOPS in session stats 2011-06-26 19:00:40 +00:00
Arvid Norberg d6c8184381 support locking files 2011-06-09 06:08:24 +00:00
Arvid Norberg 6830eb10a9 remove old search code from DHT. modify announce-item to fit with more recent proposal of get/put. Only immutable entries for now 2011-05-23 05:07:52 +00:00
Arvid Norberg e389f5963d added support for fadvise/F_RDADVISE for improved disk read performance 2011-04-26 07:03:05 +00:00
Arvid Norberg abec8aed8c use 'avoid_readback' as default disk cache eviction algorithm 2011-04-11 03:36:37 +00:00
Arvid Norberg 35d2354c38 bump default .torrent file size limit for magnet files to 3 MB and add more verbose logging to ut_metadata.cpp 2011-04-02 08:13:35 +00:00
Arvid Norberg a79fb228f2 lower default to 3 concurrent downloads 2011-03-21 04:59:03 +00:00
Arvid Norberg 2dfd1a972b prevent read jobs from starving in the disk I/O thread 2011-03-20 19:17:59 +00:00
Arvid Norberg e4df633157 added another disk cache flush algorithm to minimize readback when hashing pieces 2011-03-20 05:47:27 +00:00
Arvid Norberg 9812626cf0 make DHT rate limit configurable 2011-03-14 07:47:24 +00:00
Arvid Norberg 1b09879e2a increase the default upper limit on send buffer size to 700 kB 2011-03-10 03:19:27 +00:00
Arvid Norberg 9d0b99480b fix ip filter exemption for trackers. also add a global setting to always exempt trackers 2011-03-04 06:55:39 +00:00
Arvid Norberg 8c2d496992 added new option 'always_send_user_agent' 2011-02-26 18:17:55 +00:00
Arvid Norberg 513914050c fixed broadcast_lsd option. in trunk, redefined it to only broadcast every 8th packet 2011-02-16 10:16:52 +00:00
Arvid Norberg 9aa09d384c added smooth_connect and turned it on by default 2011-02-16 03:11:55 +00:00
Arvid Norberg a42d42fd11 CPU optimization for end-game piece picker 2011-02-09 02:56:00 +00:00
Arvid Norberg 3d616f894e end-game mode optimizations 2011-02-06 23:40:21 +00:00
Arvid Norberg ed8779a338 added option to not recheck on missing or incomplete resume data 2011-02-06 00:50:12 +00:00
Arvid Norberg 4ed6b1a067 introduce a low watermark for disk io blocking connections 2011-02-04 03:02:23 +00:00
Arvid Norberg 87dfdd4790 expanded plugin interface to support session state. improved re-request logic in ut_metadata extension. made max metadata size configurable 2011-01-29 10:37:21 +00:00
Arvid Norberg 9964b9cdb6 support a separate option to use proxies for peers or not 2011-01-24 03:24:28 +00:00
Arvid Norberg 2732a6bc47 move alert queue size limit into session_settings. make some alerts non-discardable (don't throw them out, even when the queue is full). Make session pause also pause all checking files. optimize rejecting incoming connections when the session is paused 2011-01-23 18:00:52 +00:00
Arvid Norberg ba0aed2282 initial support for DHT RSS feeds 2011-01-19 05:57:44 +00:00
Arvid Norberg b49999b76e made the DHT implementation slightly more robust against routing table poisoning and node ID spoofing 2011-01-08 08:54:51 +00:00
Arvid Norberg 1bc50983dc don't connect to privileged ports by default 2010-12-31 00:33:23 +00:00
Arvid Norberg f2416af718 added feature to turn off making outgoing connections for seeds 2010-12-17 03:20:36 +00:00
Arvid Norberg d554cf88e6 optimized swarm startup time (shaved off about 1-2 seconds) by introducing torrent connection boost on the first tracker response for a torrent 2010-12-17 03:10:56 +00:00
Arvid Norberg 779014ddac support requesting UPnP and NAT-PMP routers for our external IP address 2010-12-05 20:40:28 +00:00
Arvid Norberg e5f980d80d merged uTP branch into trunk (yay) 2010-11-29 01:33:05 +00:00
Arvid Norberg 80611bd12c some settings save-fixes and reverting some unnecessary changes in the utp branch 2010-11-28 22:36:26 +00:00
Arvid Norberg f21251cba8 limit number of torrents tracked by DHT and support DHT name lookups 2010-11-27 03:09:28 +00:00
Arvid Norberg 08a234f6a6 document peer turnover settings and update default settings to enable it. In trunk, make the peer turnover interval configurable as well 2010-10-30 15:59:57 +00:00
Arvid Norberg 2e05dc765a make the listen argument configurable 2010-10-29 08:10:12 +00:00
Arvid Norberg 40245c5774 increased the interval between switching peers for round-robin seeding 2010-10-29 02:52:42 +00:00
Arvid Norberg f84cc340df fixed a bunch of sloppy typos 2010-10-29 02:42:41 +00:00
Arvid Norberg 9b323c372d changed default choker behavior to use 8 unchoke slots (instead of being rate based) 2010-10-29 02:28:13 +00:00
Arvid Norberg cadd4f1b8d anti-leach seeding unchoke mode 2010-10-21 05:53:13 +00:00
Arvid Norberg 3b550ece98 don't save settings that are set to the default value 2010-10-10 02:22:57 +00:00
Arvid Norberg e494cb219b made seeding choking algorithm configurable 2010-10-09 21:11:03 +00:00
Arvid Norberg 21cbd1fac4 deprecated setters for max connections, max half-open, upload and download rates and unchoke slots. These are now set through session_settings 2010-10-09 19:09:38 +00:00
Arvid Norberg b6f92aa981 added initial support for share-mode 2010-09-05 16:01:36 +00:00
Arvid Norberg de3db7e84e don't lock disk cache in RAM by default 2010-08-22 17:39:48 +00:00
Arvid Norberg fd5f1bf80b improved SOCKS5 support 2010-08-03 09:08:37 +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 97afe3fca8 added option to set file priorities when adding torrents 2010-07-15 01:14:36 +00:00
Arvid Norberg d0f2b0ade0 make tick interval configurable 2010-05-03 08:54:03 +00:00
Arvid Norberg 384bfdec48 added anonymous mode to disable some particular features that might give away the user's and the client's identity 2010-04-13 04:30:34 +00:00
Arvid Norberg 62eef91338 added setting to ignore file modification time when loading resume files 2010-04-11 21:02:43 +00:00
Arvid Norberg 7e851818b1 support more fine-grained torrent states between which peer sources it announces too 2010-03-29 00:34:04 +00:00
Arvid Norberg c6f57ce5d7 support optional LSD IP broadcast 2010-03-26 17:45:16 +00:00
Arvid Norberg 6ecb25121b disabled auto disconnect_peers feature since it seems to be buggy 2010-03-20 02:43:33 +00:00
Arvid Norberg 06a043a489 add send_watermark_factor 2010-03-12 02:36:55 +00:00
Arvid Norberg 79bd8fcd52 made the default cache size depend on the amount of physical RAM. and fixed disk thread settings update when loading through load_state 2010-03-10 07:14:10 +00:00
Arvid Norberg fb06acc828 add default peer rate limit setting 2010-03-03 01:31:31 +00:00
Arvid Norberg 29880b7e26 use a stricted condition when to enter end-game mode. Made it configurable in RC_0_15+ 2010-02-18 19:25:15 +00:00
Arvid Norberg 04d31cea6e support option to report redundant bytes or not to tracker as well as 'corrupt' argument 2010-02-18 06:45:07 +00:00
Arvid Norberg c050b22d8f optimized memory usage for torrent objects 2010-02-14 01:39:55 +00:00
Arvid Norberg 3d5d9eb807 start torrent on incoming connection feature 2010-02-11 04:39:04 +00:00
Arvid Norberg fb47469834 experimental support for the BitTyrant choking algorithm 2010-02-09 03:04:41 +00:00
Arvid Norberg 8c02d04d2e UDP tracker optimization 2010-02-06 08:14:18 +00:00
Arvid Norberg 088f4bf700 improved LSD performance and made the interval configurable 2010-02-05 08:23:17 +00:00
Arvid Norberg 1b2798970c support O_NOATIME on linux and use it by default 2010-02-02 19:44:52 +00:00
Arvid Norberg 859f412189 support an arbitrary number of optimistic unchoke slots 2010-02-02 18:39:32 +00:00
Arvid Norberg 53ef3dfb22 tuning of guided read cache 2010-02-01 00:38:32 +00:00
Arvid Norberg 5b747f58f7 add guided read cache and update tuning docs 2010-01-31 19:14:00 +00:00
Arvid Norberg ccf8b0278a added volatile read cache option 2010-01-30 03:50:17 +00:00
Arvid Norberg a046850130 support disk I/O priority setting 2010-01-23 03:02:32 +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 2d7705e38b disabled feature to drop requests after having been skipped too many times 2010-01-14 02:16:23 +00:00
Arvid Norberg 6343fe6a6d optimized header dependencies to lower build time 2009-11-23 08:38:50 +00:00
Arvid Norberg e11f5265bd increased the number of peers returned from the DHT 2009-10-26 22:44:49 +00:00
Arvid Norberg f36688a364 initial support for torrent tag store in DHT 2009-09-27 03:38:41 +00:00
Arvid Norberg bec481acdf improved disk read performance and fixed bug in storage_interface's backwards compatibility functions 2009-09-05 07:21:10 +00:00
Arvid Norberg f7ebefb285 fixed checking of fast and suggest messages when used with magnet links 2009-09-01 04:41:50 +00:00
Arvid Norberg 45fd696bc6 added I2P support 2009-08-20 03:19:12 +00:00
Arvid Norberg 51c38c2e16 added performance warning when hitting the send buffer watermark limit 2009-08-17 20:29:09 +00:00
Arvid Norberg 63368c1383 added dummy storage class to disable disk I/O and an option to disable hash checking (for performance testing and simulation) 2009-08-02 06:40:45 +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 8ee50045ca added support for uTorrent interpretation of multi-tracker torrents (off by default) 2009-06-28 20:21:55 +00:00
Arvid Norberg f09774607f added upload mode 2009-06-18 22:32:55 +00:00
Arvid Norberg 5e87420b6f set all piece priorities to 0 when a write fails 2009-06-10 09:20:55 +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 c662f1c153 fix python bindings 2009-06-03 09:02:43 +00:00
Andrew Resch 6242ae051e added ability to give seeding torrents preference to active slots 2009-05-27 19:27:12 +00:00
Arvid Norberg bb47b2924c fix coalesce reads and writes setting 2009-05-25 07:46:31 +00:00
Arvid Norberg a89d6cced1 clean up some disk cache duplication of logic and added another memory usage optimization for the write cache 2009-05-24 00:12:53 +00:00