Commit Graph

180 Commits

Author SHA1 Message Date
Charles Kerr 51f1126a6d (libT) make tr_torrentAvailability() a lot faster in the case where the torrent is complete, and a little faster in the genral case too. 2008-06-09 23:11:15 +00:00
Charles Kerr dce24eb1f0 libT: first cut at implementing the internal peers' request queues as pieces rather than blocks, as discussed with erdgeist and denis, to avoid a couple of nasty CPU bottlenecks. 2008-06-09 22:53:45 +00:00
Charles Kerr 7f8ef25acc whoops, left some test scaffolding code in r6073 2008-06-07 21:28:47 +00:00
Charles Kerr e3e3bee8b5 #800 initial support for GetRight-style fetching of data through http and ftp servers specified in the .torrent's "url-list" tag 2008-06-07 21:26:41 +00:00
Charles Kerr 041561f232 minor refactoring of tr_bitfield to (a) simplify the tests and (b) make things easier to read 2008-06-07 01:44:54 +00:00
Charles Kerr 2878d0d32e bitfield speedups written by denis__. Thanks! 2008-06-05 20:21:56 +00:00
Charles Kerr 547056b50b #988: Optimistic unchoke can unchoke uninterested peers 2008-06-03 04:29:56 +00:00
Charles Kerr cdf5cb87d6 another tweak for calculating tr_stat.desiredAvailable faster, suggested by BentMyWookie 2008-05-31 05:22:10 +00:00
Charles Kerr e9c7e76c07 #980 optimistic unchoking is broken 2008-05-30 12:58:55 +00:00
Charles Kerr 70fcc56beb (libT) (1) shave a few bytes from tr_peer and tr_ratecontrol's footprints. (2) remove some dead code. 2008-05-26 12:14:35 +00:00
Charles Kerr 2c79888a93 RPC/IPC redesign 2008-05-18 16:44:30 +00:00
Charles Kerr 7b25d0476c remove occurrences of "if( 1 )" 2008-05-06 20:31:05 +00:00
Charles Kerr 86c3ae4fa4 #917: Another minor speedup suggested by BentMyWookie. He enjoys giving new suggestions right *after* I hit "svn commit" :) 2008-05-06 19:49:25 +00:00
Charles Kerr d047c1175d #917: small speedup to r5759 suggested by BentMyWookie 2008-05-06 19:39:16 +00:00
Charles Kerr 0f9ca34848 #917: when seeding, drop peers that have everything you have (instead of just dropping seeds) 2008-05-06 19:06:46 +00:00
Charles Kerr a362df0a14 #905: update peer_id client lists. add a dozen or so new clients from Azureus (thanks amc1!) 2008-04-29 16:57:16 +00:00
Charles Kerr 47021f1a12 fold most of the "deep logging" functions into a single function 2008-04-25 02:57:33 +00:00
Charles Kerr 3445817a80 peer-msgs: faster upload speeds in situations with few peers. this patch needs wider testing for side-effects wrt speed limits. 2008-04-19 19:37:05 +00:00
Charles Kerr 08b27749ba #890: be smarter about noticing seeds from tracker & pex 2008-04-19 15:07:59 +00:00
Charles Kerr ea9e0b260f (1) fix choke/unchoke error. (2) if a peer keeps trying to reconnect to us, hang up during the handshake. 2008-04-17 03:48:56 +00:00
Charles Kerr f12ac60d0a update a couple of the tr_stat fields based on feedback from BMW 2008-04-11 23:05:14 +00:00
Charles Kerr 5890eaef34 encapsulate the blocklist a little better so that we can add more blocklists in the future if necessary 2008-04-01 19:20:21 +00:00
Charles Kerr def9d1a492 better logging of blocked IP addresses. 2008-03-30 00:57:55 +00:00
Charles Kerr a20bb8d569 get the blocklist code working & add a unit test for it. 2008-03-29 21:05:51 +00:00
Charles Kerr c63b548195 fix bug that caused very large torrents to crash Transmission 2008-03-22 18:10:59 +00:00
Charles Kerr 5e3dcb5f6f #751: more digging to try to figure out where the problem is. 2008-03-06 13:24:44 +00:00
Charles Kerr e00d8bf849 fix some gcc 4.2 warnings 2008-02-28 19:33:11 +00:00
Charles Kerr f2f24e936d tear out the "fast peer" code from refillPulse() altogether 2008-02-25 01:35:20 +00:00
Charles Kerr b9a9e1f1a8 disable some fastpeer code that's too expensive. 2008-02-25 01:29:30 +00:00
Charles Kerr cfe068876e remove unnecessary #includes 2008-02-19 18:39:49 +00:00
Charles Kerr 8d14a789cb #698: `have' gets too far ahead of `verified' 2008-02-10 04:03:19 +00:00
Charles Kerr f72ba4b8d8 #663: connection limits don't work correctly. 2008-01-28 21:05:50 +00:00
Charles Kerr b1cd6ecccc remove unused "max unchoked peers" feature. fix obsolete TR_FLAG_SAVE comment. 2008-01-23 17:06:36 +00:00
Charles Kerr 1b7706e101 finish the trunk/1.0x libT merge: router death & portability 2008-01-21 02:11:57 +00:00
Charles Kerr de21d77af2 test code to test a "router death" theory in the nightlies 2008-01-20 03:21:51 +00:00
Charles Kerr 3a47dfdb23 (router death) dial down the max number of new sockets per second even lower 2008-01-19 03:44:44 +00:00
Charles Kerr de515ee339 if the torrent's download path doesn't exist, don't create it -- it's might be a removeable disk that got unplugged. 2008-01-18 19:13:32 +00:00
Charles Kerr 52c3243b4b more test code to address "router death". Based on maxintech's feedback in the forums, try making the peer manager's reconnect intervals and volume more like 1.00 2008-01-17 03:43:08 +00:00
Charles Kerr 377c00a826 a test: if we set the reconnect period to any given peer to > 900 seconds, will that make "router death" go away? 900 seconds is the usual router setting for timing out bad sockets. 2008-01-16 20:24:18 +00:00
Charles Kerr 61fc032dc1 sync peersSendingToUs with isDownloadingFrom, reported by BentMyWookie 2008-01-16 17:52:47 +00:00
Charles Kerr a1e20dd7e9 more work on "router death": if we can't connect to a given peer, retry it fewer times and wait much longer between retries. 2008-01-16 15:13:02 +00:00
Charles Kerr ca70ef18bb drive the throttle even lower.. max of 16 connections per second. 2008-01-15 06:02:47 +00:00
Charles Kerr 2c7a7c4253 throttle the number of new connections per second down even further from 48 to 32 because of the continuing "kills my router" reports 2008-01-13 21:05:38 +00:00
Charles Kerr 90f5c61327 tweak the conncetions a little bit 2008-01-11 19:44:45 +00:00
Charles Kerr 876cd4c413 test patch for the "router death" bug: throttle the number of connections made per second 2008-01-11 18:13:09 +00:00
Charles Kerr 39b1db460d follow the spec's suggestion that new connections be 3x as likely for optimistic unchoke 2008-01-11 02:09:20 +00:00
Charles Kerr 6f6adb1d53 try to ramp up fast connections more quickly. 2008-01-11 00:38:26 +00:00
Charles Kerr 3a6396a3cb mingw portability fixes 2008-01-10 18:52:46 +00:00
Mitchell Livingston bedfab2ccc clarify peer upload and download 2008-01-10 00:52:02 +00:00
Charles Kerr 591f7f8b10 * improve the unchoking algorithm.
* when deciding which peers to connect to, take peer's previous speeds into account
* longer delay interval before reconnecting to peers that didn't give us data
* added uTorrent-inspired "flags" column in tr_peer_stat and gtk's torrent details' "peer" tab
2008-01-09 17:33:43 +00:00