Commit graph

  • 88feb49c3d aquatic_bench: fix progress bar min width for request type info Joakim Frostegård 2020-04-19 10:38:59 +02:00
  • 7ba61ee6b7 aquatic: improve comment for NetworkConfig.socket_recv_buffer_size Joakim Frostegård 2020-04-19 10:34:01 +02:00
  • d63d8e14f4 README: improve tone in trivia section Joakim Frostegård 2020-04-19 10:32:47 +02:00
  • b77af78483 Add scripts for setting up benchmarks on linux Joakim Frostegård 2020-04-19 10:31:33 +02:00
  • f6ed47fec7 add aquatic_load_test for benchmarking aquatic over the network Joakim Frostegård 2020-04-19 10:21:12 +02:00
  • eb3ba6a2ce Update TODO Joakim Frostegård 2020-04-14 22:05:20 +02:00
  • 4127cbc7c9 aquatic: handlers: minor syntax and comment improvements Joakim Frostegård 2020-04-14 20:13:12 +02:00
  • 6fca5cd9d5 aquatic: config: resort to default values for keys not present in file Joakim Frostegård 2020-04-14 17:45:35 +02:00
  • 57c5d8314f Update TODO Joakim Frostegård 2020-04-14 16:25:47 +02:00
  • f0ec858bef socket workers: add Vec for requests (send together) and responses Joakim Frostegård 2020-04-13 17:09:42 +02:00
  • 6950726b3c aquatic: actually send error responses from parsing Joakim Frostegård 2020-04-13 16:52:05 +02:00
  • fbeade0ca2 Update README and TODO Joakim Frostegård 2020-04-13 14:41:40 +02:00
  • c44c5b017f aquatic: announce: fix bug in calculation of number of peers to take Joakim Frostegård 2020-04-13 12:52:58 +02:00
  • 8f68b3a9a2 aquatic: config: change default settings Joakim Frostegård 2020-04-13 12:50:53 +02:00
  • ca52b44389 split connection and torrent mutexes again Joakim Frostegård 2020-04-13 12:00:46 +02:00
  • b9a9a82207 bench: add announce and scrape benchmarks Joakim Frostegård 2020-04-13 03:23:17 +02:00
  • f4ca9c2795 aquatic_bench: start work on fixing it: create new connect bencher Joakim Frostegård 2020-04-13 01:34:05 +02:00
  • 6c4013ca55 Update TODO Joakim Frostegård 2020-04-12 22:07:11 +02:00
  • 06ff4ad9d0 aquatic: save valid_until Instant in connections and requests Joakim Frostegård 2020-04-12 22:02:54 +02:00
  • 587096f76f aquatic: give threads names when spawning them Joakim Frostegård 2020-04-12 21:46:48 +02:00
  • 140aa4b75d aquatic: improve naming of socket workers, request workers Joakim Frostegård 2020-04-12 21:40:38 +02:00
  • f8713c09c1 aquatic: handler: put responses in vector, send after releasing lock Joakim Frostegård 2020-04-12 14:54:38 +02:00
  • 16155f3de5 Update TODO Joakim Frostegård 2020-04-12 14:46:49 +02:00
  • 2779b6ec3a aquatic: lock connections and torrents together; optimize handler Joakim Frostegård 2020-04-12 14:44:34 +02:00
  • 62a40317f9 Update TODO Joakim Frostegård 2020-04-12 13:41:35 +02:00
  • cbae43e175 aquatic: HandlerConfig: add comment Joakim Frostegård 2020-04-12 13:31:32 +02:00
  • ad7a8c46a9 aquatic: config: rename recv_buffer_size to socket_recv_buffer_size Joakim Frostegård 2020-04-12 13:29:21 +02:00
  • 5430e561f5 aquatic: Config: add fields for max handler request, channel timeout Joakim Frostegård 2020-04-12 13:26:44 +02:00
  • e61c961126 Use hashbrown hashmap directly for faster hash (ahash) Joakim Frostegård 2020-04-12 13:19:07 +02:00
  • eaa42a26b7 Update TODO Joakim Frostegård 2020-04-12 12:35:05 +02:00
  • 3c5b515be9 Update TODO Joakim Frostegård 2020-04-11 22:22:44 +02:00
  • 558ddadf28 Remove DashMap, use parking_lot::Mutex<HashMap> instead Joakim Frostegård 2020-04-11 22:07:09 +02:00
  • 70cc193522 Use crossbeam channel insteaf of SegQueue Joakim Frostegård 2020-04-11 21:11:25 +02:00
  • f37ba1e52e Use (unbounded) SegQueue instead of ArrayQueue Joakim Frostegård 2020-04-11 19:59:52 +02:00
  • 6503e89375 Update TODO Joakim Frostegård 2020-04-11 19:48:41 +02:00
  • 3527952242 start work on using seperate threads for sockets and handlers Joakim Frostegård 2020-04-11 19:35:15 +02:00
  • 8d7cbb7926 aquatic_bench: test multiple threads at once, with disappointing results Joakim Frostegård 2020-04-11 17:32:05 +02:00
  • eded822c31 Update TODO Joakim Frostegård 2020-04-11 15:05:11 +02:00
  • 9bf17b0ab4 bittorrent_udp: response_to_bytes: return Result<(), io:Error> Joakim Frostegård 2020-04-11 15:03:50 +02:00
  • 054d36b316 Update TODO Joakim Frostegård 2020-04-11 15:03:45 +02:00
  • c45fa80391 bittorrent_udp: simplify quickcheck test syntax, keeping functionality Joakim Frostegård 2020-04-11 14:57:08 +02:00
  • 02b63feef7 bittorrent_udp: add quickcheck tests for request byte conversion Joakim Frostegård 2020-04-11 14:53:36 +02:00
  • 554895a9df bittorrent_udp: implement quickcheck::Arbitrary for request types Joakim Frostegård 2020-04-11 14:43:58 +02:00
  • 9a1143ffac aquatic_bench: enable loading configuration from file Joakim Frostegård 2020-04-11 14:31:21 +02:00
  • 4691080602 Update TODO Joakim Frostegård 2020-04-11 14:23:03 +02:00
  • 834a8c3fa2 cli_helpers: run_with_cli_and_config: rename function and "f" argument Joakim Frostegård 2020-04-11 14:19:46 +02:00
  • 688372bdf2 aquatic: announce and scrape handlers: send back error on invalid conn Joakim Frostegård 2020-04-11 14:17:03 +02:00
  • b32046e768 bittorrent_udp: improve code formatting and imports Joakim Frostegård 2020-04-10 15:20:27 +02:00
  • fe85901021 bittorrent_udp: add RequestParseError; remove InvalidRequest; other fixes Joakim Frostegård 2020-04-10 15:14:50 +02:00
  • f80646e3a8 bittorrent_udp: add From<> for requests and responses into their enums Joakim Frostegård 2020-04-10 11:19:29 +02:00
  • 44b0489521 bittorrent_udp: response_to_bytes: simplify code for ipv6 announce Joakim Frostegård 2020-04-10 10:10:33 +02:00
  • 2fadbcc8f8 Update TODO Joakim Frostegård 2020-04-10 03:35:22 +02:00
  • 25f6be3940 Add scripts/test.sh for running tests with higher quickcheck settings Joakim Frostegård 2020-04-10 03:30:59 +02:00
  • c964f05e84 bittorrent_udp: add quickcheck tests for response byte conversion Joakim Frostegård 2020-04-10 03:30:07 +02:00
  • 46f9a1d13c Update TODO Joakim Frostegård 2020-04-10 03:29:55 +02:00
  • 6e6633951f Update README Joakim Frostegård 2020-04-10 03:29:42 +02:00
  • 264ad17b7b aquatic_bench: use 20 rounds again Joakim Frostegård 2020-04-10 03:29:26 +02:00
  • 43b31e5e96 bittorrent_udp: request_to_bytes: fix bad writing of zero after IP Joakim Frostegård 2020-04-10 01:43:00 +02:00
  • 9fbcd60dff bittorrent_udp: response_from_bytes: improve announce code Joakim Frostegård 2020-04-10 01:42:20 +02:00
  • b20e5912e2 bittorrent_udp: request converters: general cleanup and fixes Joakim Frostegård 2020-04-10 01:22:13 +02:00
  • 5bd0deb105 bittorrent_udp: requests converters: clean up Joakim Frostegård 2020-04-10 01:08:54 +02:00
  • c5d746a42e bittorrent_udp: request_from_bytes: improve scrape code Joakim Frostegård 2020-04-10 01:04:12 +02:00
  • acfd2a75d8 bittorrent_udp: response_to_bytes: improve code Joakim Frostegård 2020-04-09 21:30:58 +02:00
  • f203250155 bittorrent_udp: response_from_bytes: more improvements Joakim Frostegård 2020-04-09 21:15:25 +02:00
  • 928a82e4dc bittorrent_udp: response_from_bytes: improve announce part Joakim Frostegård 2020-04-09 21:08:29 +02:00
  • 13e7ef6b57 bittorrent_udp: response_from_bytes: more fixes Joakim Frostegård 2020-04-09 20:43:42 +02:00
  • a37b44ec89 bittorrent_udp: response_to_bytes: improve scrape encoding Joakim Frostegård 2020-04-09 20:27:50 +02:00
  • 9705d1822e Update TODO Joakim Frostegård 2020-04-09 17:58:09 +02:00
  • 8dfd49af0d cli helpers: in run function, take function as argument instead Joakim Frostegård 2020-04-09 17:54:09 +02:00
  • ac52668a3d add crate cli_helpers with option and config parsing; use in aquatic Joakim Frostegård 2020-04-09 16:46:35 +02:00
  • 06756f1c74 Add short README.md Joakim Frostegård 2020-04-09 11:53:19 +02:00
  • 05d085e076 aquatic_bench: Cargo.toml: sort dependencies alphabetically Joakim Frostegård 2020-04-09 11:52:23 +02:00
  • 91c764d143 Update TODO Joakim Frostegård 2020-04-09 11:48:00 +02:00
  • b457df26e3 aquatic annonunce handler: downgrade TorrentMap ref instead of new .get Joakim Frostegård 2020-04-09 11:46:06 +02:00
  • 32edee9bbb aquatic: add #[inline] to handle_readable_socket and handlers Joakim Frostegård 2020-04-09 10:14:53 +02:00
  • 2fd732efc6 aquatic: handlers: pass rng's as function arguments Joakim Frostegård 2020-04-09 09:53:18 +02:00
  • bd16cdd709 aquatic: event loop: don't preallocate request/response vectors Joakim Frostegård 2020-04-09 09:34:39 +02:00
  • eddd353621 aquatic: when statistics.interval == 0, skip adding to stats atomics Joakim Frostegård 2020-04-08 22:00:52 +02:00
  • 5d2e4412b3 aquatic: create function in tasks.rs for statistics printing Joakim Frostegård 2020-04-08 21:55:16 +02:00
  • 58fbf8b7fe aquatic: add comments to many config fields Joakim Frostegård 2020-04-08 21:50:23 +02:00
  • e3b29723a4 aquatic: when config recv_buffer_size is zero, don't set on socket Joakim Frostegård 2020-04-08 21:45:25 +02:00
  • ad68dda9f5 aquatic: remove unnecessary fields from Peer; general clean up Joakim Frostegård 2020-04-08 21:40:36 +02:00
  • 31c8864658 aquatic: put max_scrape_torrents, max_response_peers in NetworkConfig Joakim Frostegård 2020-04-08 21:32:05 +02:00
  • 7239e9c047 aquatic: add and use NetworkConfig.peer_announce_interval Joakim Frostegård 2020-04-08 21:30:57 +02:00
  • ca9d15c7a9 aquatic: move some fields from Config into new NetworkConfig Joakim Frostegård 2020-04-08 21:27:12 +02:00
  • fa60eddcc4 aquatic: add CleaningConfig and StatisticsConfig to Config, use them Joakim Frostegård 2020-04-08 21:22:12 +02:00
  • 766606cc08 aquatic: announce handler: improve safety by small margin Joakim Frostegård 2020-04-08 20:26:39 +02:00
  • 789783cfe4 aquatic scrape handler: preallocate stats vec better Joakim Frostegård 2020-04-08 20:23:31 +02:00
  • 13790b5d60 Update TODO Joakim Frostegård 2020-04-08 20:20:57 +02:00
  • 910accad31 announce handler: keep mutable access to torrent map less time Joakim Frostegård 2020-04-08 13:32:18 +02:00
  • b40d205ccd bench: make "print_results" a function instead of a macro Joakim Frostegård 2020-04-08 13:12:58 +02:00
  • 2d01a34ff7 bench: don't accumulate state over runs Joakim Frostegård 2020-04-08 13:08:41 +02:00
  • c75e36c105 Update TODO Joakim Frostegård 2020-04-08 12:12:05 +02:00
  • 209072aa4a Update benchmark stats Joakim Frostegård 2020-04-08 12:11:56 +02:00
  • afa4ad318f aquatic stats print: fix newline printing issue Joakim Frostegård 2020-04-08 11:56:30 +02:00
  • ff67998cc1 Update TODO Joakim Frostegård 2020-04-08 11:50:12 +02:00
  • d896b6cf29 aquatic: print entire socket errors Joakim Frostegård 2020-04-08 11:49:47 +02:00
  • 52078ab1ad aquatic: print bandwidth used (based on bytes received and sent) Joakim Frostegård 2020-04-08 11:43:18 +02:00
  • a865f4a1ae Add inline markers; simplify ip address conversion in request_from_bytes Joakim Frostegård 2020-04-08 11:19:03 +02:00
  • 4721fa3109 Update TODO Joakim Frostegård 2020-04-08 10:23:59 +02:00