Commit Graph

59 Commits

Author SHA1 Message Date
Arvid Norberg e6640de205 updated IP->ID formula for DHT 2011-05-26 17:04:53 +00:00
Arvid Norberg a73960aa5a support release asserts 2011-05-08 09:04:59 +00:00
Arvid Norberg 141ada013f fixed a whole bunch of build warnings on gcc and msvc, along with some fixes discovered along the way 2011-02-21 05:24:41 +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 451c583023 more robust mechanism to determine external IP 2010-12-24 01:31:41 +00:00
Arvid Norberg de3a5784be fix build with IPv6 disabled 2010-12-18 18:46:20 +00:00
Arvid Norberg b56a1638ae DHT fixes. fixed bucket refresh issue. re-introduced refreshing our own bucket regularly. added more DHT instrumentation in session_status. added alert for when bootstrap is complete. Fixed bootstrap to ping remaining nodes when search is complete. Completed recent DHT observer rewrite to remove some redundant fields 2010-12-12 03:17:08 +00:00
Arvid Norberg 29ed03f720 first implementation of DHT security implementation. tie the node ID to the external IP 2010-12-11 09:38:07 +00:00
Arvid Norberg 94ef3eaf4b windows build fixes 2010-12-01 05:47:18 +00:00
Arvid Norberg 1c7e5506e9 report stats on the number of dht request observers that are currently allocated 2010-11-06 07:12:57 +00:00
Arvid Norberg d3a8916f02 further simplify the DHT by getting rid of the result type and just using observers instead. This might save some memory and should fix the assert that would be triggered before 2010-11-05 19:06:50 +00:00
Arvid Norberg 23ac52c164 simplify some DHT code and remove a dependency on boost.mpl 2010-11-05 03:12:57 +00:00
Arvid Norberg dce2edb6cc fixed vs 2010 build 2010-04-30 19:08:16 +00:00
Arvid Norberg 686fc1a1c7 windows fixes 2010-03-21 02:13:56 +00:00
Arvid Norberg 11cd7af4e7 optimized DHT routing table memory usage 2010-01-03 11:08:39 +00:00
Arvid Norberg a5586d154d more header dependency optimizations 2009-11-25 06:55:34 +00:00
Arvid Norberg 51aa6c4b6b rpc_manager fix 2009-11-13 02:53:34 +00:00
Arvid Norberg a8c72b47ab USE_IPV6 fixes 2009-10-19 02:49:20 +00:00
Arvid Norberg aad0a68dfa removed a few more dependencies on lexical_cast 2009-10-19 00:31:47 +00:00
Arvid Norberg cee42ff5a1 more DHT simplifications 2009-10-07 20:51:02 +00:00
Arvid Norberg dfccf0b412 some DHT work 2009-09-29 17:06:08 +00:00
Arvid Norberg 54cce9da60 simplified and optimized the DHT implementation 2009-09-20 00:23:36 +00:00
Arvid Norberg c459262c51 exception and IPv6 fixes 2009-05-14 20:38:42 +00:00
Arvid Norberg 00ccf9064e optimized memory usage in the DHT, and added some handling for out-of-memory cases 2009-05-13 22:18:41 +00:00
Arvid Norberg 3cdf9c87a8 fixed build errors on Solaris 2009-01-27 08:24:48 +00:00
Arvid Norberg cf7a6e6029 fixed broken DHT round trip logging 2008-12-31 18:49:28 +00:00
Arvid Norberg 00d02f7859 improved DHT get_peers code. get_peers always returns nodes now, and announce_peer is always sent to the k closest nodes to the info-hash. This should significantly speed up retrieving peers from the DHT 2008-12-23 20:04:12 +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 18d269dd62 DHT optimizations 2008-11-10 02:08:42 +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 37147f99c0 fixes bug in kademlia implementation when nodes are unreachable 2008-08-29 23:00:57 +00:00
Arvid Norberg bbf9c83edc initial support for icmp errors in the DHT 2008-05-08 00:22:17 +00:00
Arvid Norberg 99eed299cd asserts in dht 2008-02-09 21:04:24 +00:00
Arvid Norberg 97511f2819 removed stray space 2008-01-14 17:25:08 +00:00
Arvid Norberg 56210c1687 added asserts to make sure the pool allocator for dht messages allocates blocks of correct size 2008-01-13 04:24:10 +00:00
Arvid Norberg 87512ea3cf dht fix 2007-12-10 20:49:42 +00:00
Arvid Norberg 14c9c367b2 improved dht logging 2007-12-09 18:47:01 +00:00
Arvid Norberg a981943ea2 fix build problem when building with dht logging 2007-11-25 11:14:53 +00:00
Arvid Norberg 29fa298d05 updated dht verbose logging to try to catch #176 2007-11-24 21:38:46 +00:00
Arvid Norberg 966800cd5b replaced the assert macro to TORRENT_ASSERT instead of hi-jacking assert. 2007-10-05 00:30:00 +00:00
Arvid Norberg 157362b447 DHT optimization by using unordered free instead of ordered free on the pool 2007-10-01 05:20:00 +00:00
Arvid Norberg 99a22dcae4 made dht requests be allocated in a pool allocator for heap and runtime efficiency. Fixes to DHT error responses 2007-05-23 08:45:12 +00:00
Arvid Norberg b386aa23e9 DHT bugfix, more logging and less frequent private key generation. Fixed typo in identify_client 2007-05-14 17:49:36 +00:00
Arvid Norberg 9f902e7b9f the DHT now refreshes buckets properly. 2007-05-12 01:52:25 +00:00
Arvid Norberg ceb442bea0 DHT is more forgiving when parsing responses and logs messages that fails to decode 2007-05-08 00:55:43 +00:00
Arvid Norberg eb5b532d3f removed boost.date_time dependency from DHT logging code 2007-05-07 18:12:03 +00:00
Arvid Norberg 306d015924 added a timer abstraction and replaced the use of boost.date_time. the timers used now are QueryPerformanceCounter on windows, mach_absolute_time on darwin and currently falls back on boost.date_time on other platforms. This has the advantage of being a monotonic clock, and also slightly more efficient 2007-04-04 22:27:36 +00:00
Arvid Norberg b282c43f3f fixed assert caused when network went down 2007-04-02 06:49:15 +00:00
Arvid Norberg 8957b64c04 prepared for precompiled headers support. fixed issue where storage didn't lock the session properly. fixed typo in natpmp.cpp 2007-03-17 17:15:16 +00:00