Commit Graph

298 Commits

Author SHA1 Message Date
Arvid Norberg 68a89507bc mutex fix for dht status reporting 2008-10-09 03:33:14 +00:00
Arvid Norberg 0338510b9b added more bandwidth monitoring of DHT and TCP/IP overhead. added monitoring of the running DHT lookups 2008-09-20 17:42:25 +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 c88071ae10 fixed race when adding router nodes to the dht (router nodes should be added before it's started) 2008-09-02 06:37:40 +00:00
Arvid Norberg 37147f99c0 fixes bug in kademlia implementation when nodes are unreachable 2008-08-29 23:00:57 +00:00
Arvid Norberg d94f35a75b fix build failure with TORRENT_DHT_VERBOSE_LOGGING 2008-08-19 08:39:21 +00:00
Arvid Norberg 4d380c57d7 made bdecode not throw 2008-06-23 22:00:27 +00:00
Arvid Norberg 0ba85e96d5 fixed kademlia announce bug 2008-05-26 15:23:06 +00:00
Arvid Norberg 07f070868d factored out to_hex into the escape_string header file 2008-05-19 07:36:04 +00:00
Arvid Norberg bae6ff1a10 dht typo fix 2008-05-18 06:02:57 +00:00
Arvid Norberg 498a43c123 streamlined dht log format 2008-05-18 05:09:11 +00:00
Arvid Norberg aa626f1422 logs node uptime and parses it for the DHT 2008-05-10 05:51:58 +00:00
Arvid Norberg 3fe96818d3 dht log fix 2008-05-09 23:42:00 +00:00
Arvid Norberg ae11038495 improved dht logging of transaction ids 2008-05-09 21:20:28 +00:00
Arvid Norberg 11c181873c stripped down the dht log 2008-05-09 17:38:36 +00:00
Arvid Norberg 5202056682 inverted distance log in dht 2008-05-08 03:58:05 +00:00
Arvid Norberg 1522f52db8 logs the distance between key and node when announcing 2008-05-08 01:17:14 +00:00
Arvid Norberg bbf9c83edc initial support for icmp errors in the DHT 2008-05-08 00:22:17 +00:00
Arvid Norberg 7434368652 fixed dht logging error 2008-05-07 23:25:47 +00:00
Arvid Norberg c7e6c04705 switched over to asio from boost-1.35 2008-05-03 16:05:42 +00:00
Arvid Norberg 1724b1eb75 dht array index out of bound fix 2008-04-16 03:20:35 +00:00
Arvid Norberg 2bd49c4b56 fixed DHT assert 2008-03-29 14:52:18 +00:00
Arvid Norberg 40824d2bb1 minor dht fix 2008-03-28 22:56:33 +00:00
Arvid Norberg a53cd86cae fixed typo in previous dht checkin 2008-03-27 00:46:50 +00:00
Arvid Norberg 10d20f8f4e dht fix 2008-03-26 17:37:31 +00:00
Arvid Norberg 1d8edc0722 fixed race condition in dht 2008-03-24 04:38:43 +00:00
Arvid Norberg 211ae62d33 fixes #295 2008-03-24 02:19:47 +00:00
Arvid Norberg 1d31dc3613 fixed dht announce bug 2008-03-23 05:10:47 +00:00
Arvid Norberg ee92504aad added missing include statement 2008-03-20 16:34:34 +00:00
Arvid Norberg fece6e9300 fixed #289 in trunk, 0.12 and 0.13 2008-03-19 22:44:55 +00:00
Arvid Norberg f8b2b60634 fixed bug in dht routing table. added unit test to trunk 2008-03-16 03:52:13 +00:00
Arvid Norberg 99eed299cd asserts in dht 2008-02-09 21:04:24 +00:00
Arvid Norberg 92f4947bbe full proxy support for udp-trackers, and more reliable udp tracker code 2008-02-05 06:32:10 +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 501611173e removed unused header 'packet_iterator.hpp' 2007-12-28 19:46:08 +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 8c3f9571de socks5 support for udp messages 2007-12-09 04:15:24 +00:00
Arvid Norberg a7f6e3bccb added abuse protection to DHT. nodes that hammer will be ignored 2007-12-04 02:53:10 +00:00
Arvid Norberg a981943ea2 fix build problem when building with dht logging 2007-11-25 11:14:53 +00:00
Arvid Norberg d8537937c7 try to fix #103 2007-11-25 08:57:58 +00:00
Arvid Norberg 29fa298d05 updated dht verbose logging to try to catch #176 2007-11-24 21:38:46 +00:00
Arvid Norberg b9073420fc fixed incorrect node-id distance calculation in DHT 2007-11-19 07:21:38 +00:00
Arvid Norberg 95d09070fb cancels more async operations on shutdown 2007-11-11 19:09:29 +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 57a76f9db6 fixed debug assert on linux 2007-09-10 06:12:41 +00:00
Arvid Norberg fd42f3232b upnp more logging and error recovery 2007-09-01 04:08:39 +00:00
Arvid Norberg a567f18962 fixed #126 2007-08-27 06:47:08 +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 dcad9b3031 fixed warning 2007-05-14 03:50:19 +00:00
Arvid Norberg 9f902e7b9f the DHT now refreshes buckets properly. 2007-05-12 01:52:25 +00:00
Arvid Norberg e6c7945aac fixed typo 2007-05-10 06:17:27 +00:00
Arvid Norberg a531027e3f attempted heap optimization in DHT routing table 2007-05-10 05:48:14 +00:00
Arvid Norberg 122841fc5e attempt to memory optimization in DHT routing table 2007-05-08 08:49:07 +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 517488c722 DHT fixes 2007-05-07 18:00:17 +00:00
Arvid Norberg f41fd7d303 added catch blocks to lsd. changed bind expressions to use operators 2007-04-29 20:49:30 +00:00
Arvid Norberg d88ffcc0e4 removed some more unecessary boost.date_time dependencies 2007-04-10 07:52:58 +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
Arvid Norberg 034231566a removed unnecessary assert(false) from rpc_manager 2007-03-10 20:23:16 +00:00
Arvid Norberg 4b68dce5f0 lowered the dht timeout from 20 to 10 seconds. added support to parse values-messages as described in the spec (even though that format is very very rare). 2007-03-09 20:37:17 +00:00
Arvid Norberg a3dbea606e added debug message to dht. fixed while loop around condition variable in checker thread. 2007-03-06 17:27:17 +00:00
Arvid Norberg c22c55feda dht fix 2007-03-02 21:40:18 +00:00
Arvid Norberg 7e3a415d0b made the trackers pick the most suitable interface to connect to (IPv6/Ipv4 issue). added Mono Torrent to identify_client and dht statistics. 2007-03-02 18:40:02 +00:00
Arvid Norberg c40a75f844 IPv6 fixes 2007-02-27 17:21:46 +00:00
Arvid Norberg 7888b72e12 fix for crashes when stopping or restarting DHT 2007-02-25 09:42:43 +00:00
Arvid Norberg 98b92e3f02 fixed problems in the network layer that made web seeds fail some times. prepared for proxy support in peer connections. worked on the http seeding. added support for web seeds in make_torrent tool 2007-02-12 05:46:29 +00:00
Arvid Norberg 6cb914b62f removed invariant_check() left in by mistake 2007-01-29 17:56:59 +00:00
Arvid Norberg f14c84b01e fixes in DHT to make it work when the number of transaction slots are full (very rare case). Added a feature to (optionally) resolve the countries of peers and updated the docs (see peer_info::country). 2007-01-29 07:39:33 +00:00
Arvid Norberg 327f820292 correction of previous fix 2007-01-07 13:55:27 +00:00
Arvid Norberg b62d54948c may have fixed another exception caused when the network cable is plugged 2007-01-07 13:27:55 +00:00
Arvid Norberg 56a7fc35bc may have fixed a problem with an uncaught exception when the network plug is pulled 2007-01-04 15:44:23 +00:00
Arvid Norberg 13facbdb83 added a strand for all async operations for thread safety 2006-12-15 17:47:21 +00:00
Arvid Norberg 400aeaa347 fixed bug in sending announce messages 2006-12-14 00:54:37 +00:00
Arvid Norberg ce9eed5ea1 fixed incorrectly named members of session_status, fixed compilation error in ut_pex, documentation updates 2006-11-28 18:18:37 +00:00
Arvid Norberg c52de08421 added more logging and modified the resource allocation algorithm. A new, looser, upload and download bandwidth limiter is now used, in order to be able to use more of the available bandwidth 2006-11-19 15:29:58 +00:00
Arvid Norberg e35fc5c4be refactored extensions and added a plugin interface. fixed file.cpp for windows 2006-11-14 00:08:16 +00:00
Arvid Norberg 7bff835cdd fixed problem when sending messages to oneself fails in the dht 2006-10-27 01:56:01 +00:00
Arvid Norberg 340d8a1cbc removed incorrect assert hit when rebinding the dht service port 2006-10-24 11:52:30 +00:00
Arvid Norberg 599cfe3820 moved a stderr log to the verbose log 2006-10-02 10:06:31 +00:00
Arvid Norberg 910733f29e added proper support for dht router nodes (which are automatically used to bootstrap from, and won't get added to the routing table) 2006-09-27 17:20:18 +00:00
Arvid Norberg 5aa875c2af fixed some warnings 2006-09-24 11:32:08 +00:00
Arvid Norberg 004d3771cb added first version of an IPv6 extension and docs 2006-09-21 18:22:26 +00:00
Arvid Norberg dc2e25141c changed sequencial download threshold api, it is now per torrent 2006-09-04 23:22:21 +00:00
Arvid Norberg bdf1bbc8f4 changed the file format for storing the DHT routing table to support IPv6. Changed the address used to be IPv4-IPv6 independent (ip_filter still onlt works with IPv4). Added default boost-build features to the building documentation. Completed the jamfile's support for building without DHT support. Updated documentation with these changes. 2006-09-01 03:06:00 +00:00
Arvid Norberg b1411fcdf7 the DHT can now change listen port runtime, and the same listen interface will be used for the DHT as is used for the torrent listen port. The DHT buckets are refreshed slightly more evenly distributed over time. 2006-08-30 00:09:58 +00:00
Arvid Norberg d0a38c50c6 fixed crash bug occuring when removing a torrent while it announces on the DHT. Fixed the mainloop not to quit when an uncought exception is thrown. 2006-08-29 01:15:24 +00:00
Arvid Norberg 4f2d147e07 the dht node will now add nodes who sends announce_peer with correct write token. Fixed bug in session where nodes from a .torrent were added to the node even though if it wasn't running. 2006-08-06 18:42:04 +00:00
Arvid Norberg 2daaa9f8d2 fixed bug in allocate_resources, made the refresh timers more accurate and tries to even out the load bu not refreshing more than one bucket at a time 2006-08-06 16:36:00 +00:00
Arvid Norberg 2d83cdfa59 fixed runtime-check that msvc adds if that option is checked. Fixed problem that occured if the max_transactions limit was reached. 2006-08-01 22:23:05 +00:00
Arvid Norberg e340485974 fixed possible problem with errors occuring and reported to dht_tracker::on_receive. 2006-08-01 16:59:12 +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