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 |
Arvid Norberg
|
ae8488fb91
|
improved read cache memory efficiency
|
2009-05-23 19:27:27 +00:00 |
Arvid Norberg
|
c1d9198dc3
|
added largest_contiguous cache flush algorithm
|
2009-05-23 07:35:45 +00:00 |
Arvid Norberg
|
0127edac14
|
added disk-checking delay, to leave room for other disk operations while checking a torrent
|
2009-05-22 06:32:39 +00:00 |
Arvid Norberg
|
0c3f9a7f88
|
lowered default setting for max peer list size
|
2009-05-13 22:19:25 +00:00 |
Arvid Norberg
|
b7c5d2f12d
|
add a separate setting for max peer list size for paused torrents
|
2009-05-13 01:34:10 +00:00 |
Arvid Norberg
|
85bf463e11
|
added session setting to control disk buffer pool allocation sizes
|
2009-05-12 18:52:05 +00:00 |
Arvid Norberg
|
d5164b1b1e
|
fixed typo. made it possible to set max_outstanding_disk_bytes_per_connection to 0
|
2009-05-12 17:57:52 +00:00 |
Arvid Norberg
|
f2ec6b5adb
|
added option to use a single block buffer when hashing, instead of for the entire piece
|
2009-05-03 19:09:06 +00:00 |
Arvid Norberg
|
06b609aa1f
|
fixed unchoke bug. made the automatic unchoke strategy the default
|
2009-05-02 03:15:52 +00:00 |
Arvid Norberg
|
033fd5bd22
|
count send and receive buffers against the cache size limit
|
2009-05-01 08:00:58 +00:00 |
Arvid Norberg
|
84dda7b617
|
support for adjusting the socket buffer sizes through session_settings
|
2009-05-01 04:59:15 +00:00 |
Arvid Norberg
|
db8487be46
|
auto unchoke improvement
|
2009-04-04 07:55:34 +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
|
5c12db28d2
|
added option to lock disk cache in physical memory
|
2009-02-06 09:46:13 +00:00 |
Arvid Norberg
|
8bcdb333e0
|
fix typo in comment
|
2009-01-28 05:19:19 +00:00 |
Arvid Norberg
|
00808473e7
|
factor out disk_buffer_pool from disk_io_thread. refactored the file open modes to be platform independent. gave the disk_io_thread its own copy of session_settings that it shares with storage. added an unaligned_read implementation to storage. Added options to session_settings on when to open files in unbuffered mode. Added unit tests for unaligned reads
|
2009-01-21 07:31:49 +00:00 |
Arvid Norberg
|
7592ad4aee
|
updated disk IO to support unbuffered files
|
2009-01-11 02:02:34 +00:00 |
Arvid Norberg
|
cfd116ffad
|
made disk_io_settings be synchronized through the job queue
|
2009-01-10 05:46:02 +00:00 |
Arvid Norberg
|
d07ccaf6b8
|
workaround for sparse files issue on Windows vista
|
2009-01-05 01:08:09 +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
|
5fb854d724
|
improved super seeding with strict option
|
2008-12-09 07:56:37 +00:00 |
Arvid Norberg
|
2a9353cf48
|
prefer udp trackers. Fixes #433
|
2008-12-08 09:13:21 +00:00 |
Arvid Norberg
|
d1a2b774e6
|
changed how trackers are handled. Implements #297 by setting session_settings::announce_to_all_trackers to true
|
2008-11-29 08:38:40 +00:00 |
Arvid Norberg
|
78abf8a340
|
made recent change where the TCP/IP overhead is take into account when rate limiting, optional
|
2008-11-18 11:14:44 +00:00 |
Arvid Norberg
|
4dacfcbaaf
|
change the default UPnP settings to map anything that's found on the local network
|
2008-11-02 20:42:48 +00:00 |
Arvid Norberg
|
f04e9e9875
|
made unchoke interval depend on piece size
|
2008-10-18 22:35:10 +00:00 |
Arvid Norberg
|
1092c558e4
|
counts newly started torrents as active up to 2 minutes, to give them a chance to start downloading. Active torrents are not considered slow in the auto manager.
|
2008-10-01 05:25:18 +00:00 |
Arvid Norberg
|
166f761df3
|
fixed DHT bug where requests that timed out would be treated as transaction_id overflows and would slow down DHT lookups considerably.
|
2008-09-15 05:05:26 +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
|
18b14e56df
|
made the minimum announce interval configurable
|
2008-08-01 22:34:37 +00:00 |
Arvid Norberg
|
589e098002
|
fixed parole mode with timeouts and made it optional
|
2008-07-11 09:23:22 +00:00 |
Arvid Norberg
|
de8f676b98
|
increase timeouts
|
2008-07-11 09:02:05 +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
|
0f0ea269bc
|
added an active torrent limit
|
2008-06-21 12:31:28 +00:00 |
Arvid Norberg
|
d0e579826c
|
added an option to not count inactive torrents against the limits for auto managed torrents
|
2008-06-21 09:15:29 +00:00 |
Arvid Norberg
|
fd98434c97
|
peer list optimization and introduced hard limit on peer list size
|
2008-05-28 18:25:48 +00:00 |
Arvid Norberg
|
777954ab3e
|
automatically scrape auto managed torrents to keep track of downloader/seed ratio
|
2008-05-19 04:06:25 +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
|
c043d4b21d
|
initial support for queuing
|
2008-04-24 03:28:48 +00:00 |
Arvid Norberg
|
8132c6aad6
|
added option to control TOS byte in peer traffic
|
2008-03-12 16:58:23 +00:00 |
Arvid Norberg
|
9d3b60edb7
|
added support to bind outgoing connections to specific ports (might be useful to do traffic shaping)
|
2008-02-28 07:34:07 +00:00 |
Arvid Norberg
|
0e3eddf8e8
|
lower default connection speed in debug mode
|
2008-02-22 07:41:05 +00:00 |
Arvid Norberg
|
6c552db68e
|
added disk cache expiration
|
2008-02-10 00:58:25 +00:00 |
Arvid Norberg
|
ea7253c575
|
increased default cache size to 8 MB
|
2008-02-09 21:09:29 +00:00 |
Arvid Norberg
|
8cf0510144
|
added disk cache for write operations
|
2008-02-08 10:22:05 +00:00 |
Arvid Norberg
|
5d196ed555
|
auto upload slots. opens up more slots if upload rate is not met. On by default
|
2008-01-13 11:18:18 +00:00 |
Arvid Norberg
|
4420473b88
|
made send buffer watermark configurable
|
2008-01-08 01:16:30 +00:00 |
Arvid Norberg
|
e05f396a5d
|
made UPnP ignore devices that don't respond from a router IP (optional but on by default)
|
2008-01-07 05:48:28 +00:00 |
Arvid Norberg
|
db0ae6bd7e
|
increased default tracker timeout from 20 seconds to 40 seconds
|
2007-11-30 17:37:50 +00:00 |
Arvid Norberg
|
1cc0118c9c
|
supports retry for web seeds that respond with 503
|
2007-11-27 03:37:47 +00:00 |
Arvid Norberg
|
fd11e07a55
|
memory optimization to free piece hashes is now optional
|
2007-11-19 04:58:52 +00:00 |
Arvid Norberg
|
f054ae7c2d
|
made the handshake timeout configurable and defaults to 10 seconds
|
2007-10-23 00:19:28 +00:00 |
Arvid Norberg
|
fcc238e801
|
lowered piece timeout and sends cancels for pieces when a time out occurs
|
2007-10-22 20:58:42 +00:00 |
Arvid Norberg
|
1699fa4652
|
fast reconnect fixes
|
2007-10-15 05:03:29 +00:00 |
Arvid Norberg
|
28274bf1bd
|
improved shutdown behavior. decreased tracker timeouts to 5 seconds. added more logging
|
2007-10-07 18:06:56 +00:00 |
Arvid Norberg
|
4ac1ac8a1f
|
removed allocate_resources. switched to a global unchoker and connection distribution
|
2007-08-16 12:41:46 +00:00 |
Arvid Norberg
|
b62bb7944f
|
merged fast-extension => trunk. the fast extension branch is now closed
|
2007-08-14 17:47:48 +00:00 |
Arvid Norberg
|
be1faccd1d
|
peer_connection fixes for earlier pending disk buffer size limit
|
2007-08-03 08:19:10 +00:00 |
Arvid Norberg
|
786d4e5f25
|
added a limit on how many bytes each connection can have pending in the disk write queue
|
2007-08-01 05:22:34 +00:00 |
Arvid Norberg
|
82e1160214
|
introduced a non-rarest-first option to the piece picker that is used to pick the very first pieces in a torrent
|
2007-07-07 01:26:30 +00:00 |
Arvid Norberg
|
816bf3ff2d
|
made the number of peers requested from trackers customizable
|
2007-07-02 18:44:33 +00:00 |
Arvid Norberg
|
5b5f3b3ca2
|
support for ip address in announce
|
2007-06-13 00:20:06 +00:00 |
Arvid Norberg
|
a7ad108e8a
|
made the unchoke interval configurable
|
2007-06-07 22:37:58 +00:00 |
Arvid Norberg
|
273f8bd921
|
merged back encryption branch to trunk
|
2007-06-06 00:41:20 +00:00 |
Arvid Norberg
|
7e540a8d53
|
made inactivity time-out configurable
|
2007-05-31 19:57:15 +00:00 |
Arvid Norberg
|
b385ed6064
|
added socks4 proxy support
|
2007-05-30 23:35:14 +00:00 |
Arvid Norberg
|
9fe77101ed
|
added support for lazy bitfields
|
2007-05-26 22:27:40 +00:00 |
Arvid Norberg
|
8679ee5916
|
have optimization is now optional, but on by default
|
2007-05-25 21:19:14 +00:00 |
Arvid Norberg
|
c10e74f4fc
|
improved control over the rate of connection attempts
|
2007-05-25 21:00:35 +00:00 |
Arvid Norberg
|
685f79b82f
|
option to ignore bandwidth limits for local peers. fixed some asserts when allowing multiple connections per IP
|
2007-05-25 17:06:30 +00:00 |
Arvid Norberg
|
49bd69cad4
|
introduced a proper half open TCP connection limit. Also exposed the connection queue to let clients use the same connection limiter as libtorrent. UPnP connections and tracker connection are now also limited as well as peer connections and web seeds
|
2007-05-05 00:29:33 +00:00 |
Arvid Norberg
|
00948e9fc4
|
first attempt to implement SOCKS5 and proper HTTP proxy support. fixes #22
|
2007-04-25 18:26:35 +00:00 |
Arvid Norberg
|
fceaa8f79e
|
introduced failcount and retry time settings for peers
|
2007-04-14 21:47:07 +00:00 |
Arvid Norberg
|
ecaa3068d5
|
added natpmp support. bumped version number to 0.13. added piece priority support to the piece picker. optmized and simplified the piece picker in the process.
|
2007-03-15 22:03:56 +00:00 |
Arvid Norberg
|
16457e2280
|
fixed missing #ifdef
|
2007-02-18 18:28:07 +00:00 |
Arvid Norberg
|
f795be7acf
|
made the dht be a fallback by default, fixed glitch in earlier fix to make sure block requests are sent properly, fixed problem in peer_connection::second_tick if the piece picker was removed because of the torrent becoming a seed
|
2007-02-12 09:20:49 +00:00 |
Arvid Norberg
|
51e3261dd0
|
the file pool has been moved to the session and its size can be controlled via session_settings. Added untested option to allow multiple connections from the same IP.
|
2006-11-14 15:53:38 +00:00 |
Arvid Norberg
|
c687c428c4
|
removed incorrect asserts. added ip to the extension header. removed the mandatory libtorrent suffix on the user agent
|
2006-09-28 00:49:40 +00:00 |
Arvid Norberg
|
191fd76b42
|
made sequenced_download_threshold a per torrent setting. Updated the project page layout. Removed incorrect invariant checks in piece picker.
|
2006-09-04 17:17:45 +00:00 |
Arvid Norberg
|
5ef57265bf
|
first version with DHT support. Limited pipelining used by url-seeds. Fixed one configuration problem on FreeBSD.
|
2006-08-01 15:27:08 +00:00 |
Arvid Norberg
|
8d31bf442a
|
fixed incorrect sorting of pieces in piece_picker
|
2006-07-16 00:08:50 +00:00 |
Arvid Norberg
|
175fb8770b
|
added peer_timeout and urlseed_timeout to session_settings, they control the timeout for peers and web seeds respectively. Added BitSlug to the projects page. Added more debug logging when resolving web seed hostnames. Updated documentation.
|
2006-06-28 23:27:44 +00:00 |
Arvid Norberg
|
e6bb265d94
|
replaced http_settings with session_settings and introduced more settings
|
2006-05-20 23:24:19 +00:00 |
Arvid Norberg
|
0b529e8f96
|
added a setting for max outstanding requests, and a limit for BitComet since it's known to have a very low limit, also added an extension header to specify it. Fixed another unnecessary delay spotted by Tianhao Qiu. Cleaned up the logging class a bit. Fixed a bug that would cause an assert when removing a torrent queued for checking.
|
2006-05-14 22:30:05 +00:00 |
Arvid Norberg
|
18cb6736ea
|
fixed a serious bug where corrupt messages could be sent out.
|
2006-04-30 00:39:18 +00:00 |
Arvid Norberg
|
41810b1166
|
merged back the asio development branch
|
2006-04-25 21:04:48 +00:00 |