Joakim Frostegård
4e0fc68548
aquatic http and ws: when cleaning torrents, update statistics
2020-08-16 23:24:44 +02:00
Joakim Frostegård
3d35bd9bd4
aquatic http and ws: raise default max peer and connection age
...
There was a problem with aquatic_http with clients announcing
less often than requested interval and getting purged, making
file transfers less reliable
2020-08-16 23:24:29 +02:00
Joakim Frostegård
a9f9b59086
Update TODO
2020-08-16 23:11:53 +02:00
Joakim Frostegård
6ee8ed4895
aquatic_common: extract response peers: don't return sender
...
Seems to fix or at least help with some issues with
real clients being slow to initiate transfers
2020-08-16 23:07:39 +02:00
Joakim Frostegård
b5452c2954
aquatic_http: debug-log responses in full
2020-08-16 21:15:05 +02:00
Joakim Frostegård
25abadb39f
Update cargo-build-and-test.yml
2020-08-13 05:18:55 +02:00
Joakim Frostegård
1d8ee05b19
Create GitHub CI file cargo-build-and-test.yml
2020-08-13 05:16:43 +02:00
Joakim Frostegård
7c8729f256
aquatic_udp: replace some expect calls with anyhow error returns
2020-08-13 04:58:12 +02:00
Joakim Frostegård
f4187f4368
aquatic_udp: use log crate instead of eprintln, add LogLevel to Config
2020-08-13 04:52:50 +02:00
Joakim Frostegård
dd19f32a2a
aquatic help output: print short protocol descriptions
2020-08-13 04:34:10 +02:00
Joakim Frostegård
67234744e9
Remove plot_pareto crate
2020-08-13 04:19:00 +02:00
Joakim Frostegård
4e5750346d
Update TODO
2020-08-13 04:04:15 +02:00
Joakim Frostegård
88423976c4
aquatic_http, aquatic_ws: add option for printing statistics
...
statistics are on number of peers per torrent
2020-08-13 03:58:28 +02:00
Joakim Frostegård
23a562c1e5
README: make load test section more concise
2020-08-13 02:24:56 +02:00
Joakim Frostegård
ed6179cc63
Update TODO
2020-08-13 02:09:01 +02:00
Joakim Frostegård
6b3d9e00d8
aquatic_udp: drop unused channel senders & receivers
2020-08-13 02:08:19 +02:00
Joakim Frostegård
b9ab650138
README: don't say http and ws only support single request worker
2020-08-13 01:52:01 +02:00
Joakim Frostegård
2b4cd2dea1
aquatic_http: support multiple request workers
2020-08-13 01:50:18 +02:00
Joakim Frostegård
875eb122c7
aquatic_ws: support multiple request workers
2020-08-13 01:50:01 +02:00
Joakim Frostegård
cf0623e302
aquatic_ws_protocol: fix warning about JsonValue Arbitrary impl
...
Now it is clearer that only a single value is ever generated
2020-08-13 01:05:20 +02:00
Joakim Frostegård
77ac17dec4
Run cargo update
2020-08-13 01:00:54 +02:00
Joakim Frostegård
0aa781a79c
aquatic_ws_load_test: fix unused variable compiler warnings
2020-08-13 00:54:14 +02:00
Joakim Frostegård
67c346f88e
aquatic_http_load_test: fix compiler unused variable warnings
2020-08-13 00:53:26 +02:00
Joakim Frostegård
74e1ecf384
aquatic_http_protocol: remove unused utility function "urldecode"
2020-08-13 00:51:56 +02:00
Joakim Frostegård
639b8db072
README: refer to aquatic master executable in instructions
2020-08-13 00:45:19 +02:00
Joakim Frostegård
17844d05e3
Update TODO
2020-08-13 00:18:42 +02:00
Joakim Frostegård
beea0e7d97
add scripts/build-aquatic.sh
2020-08-13 00:15:43 +02:00
Joakim Frostegård
9efc1fc66a
add aquatic crate with master executable, refactor cli_helpers
2020-08-13 00:13:01 +02:00
Joakim Frostegård
c69b09ab9c
aquatic ws protocol: improve Arbitrary impl for JsonValue
2020-08-12 05:22:37 +02:00
Joakim Frostegård
acc1a0fd74
aquatic_ws: update tests to use simd-json
2020-08-12 05:14:27 +02:00
Joakim Frostegård
8c4d3e5cb9
Update TODO
2020-08-12 04:45:54 +02:00
Joakim Frostegård
6f955235ea
aquatic http: log at debug level for unrecognized keys in request parse
...
"downloaded" and "uploaded" occur all the time since they are
part of the specification
2020-08-12 04:38:47 +02:00
Joakim Frostegård
bc5cd90371
aquatic http: use serde_bencode for deserialization
...
bendy seems not to manage lack of trailing newline
2020-08-12 04:26:09 +02:00
Joakim Frostegård
7a96313173
aquatic_http_protocol: send host header for scrape requests too
2020-08-12 04:23:26 +02:00
Joakim Frostegård
e6a74c5bfe
aquatic http load test: send Host header, downloaded&uploaded keys
2020-08-12 04:08:43 +02:00
Joakim Frostegård
01a3e7795a
aquatic ws load test: set default num_connections to 16
2020-08-12 01:38:29 +02:00
Joakim Frostegård
884a2aa67d
aquatic ws: deserialize OutMessage properly
...
Performance seems to be about the same
2020-08-12 01:24:28 +02:00
Joakim Frostegård
dea88020a5
aquatic ws load test: use longer json value when sending answer
2020-08-12 00:52:07 +02:00
Joakim Frostegård
0c168404db
aquatic ws load test: add offers_per_request config var, default 10
2020-08-12 00:42:21 +02:00
Joakim Frostegård
cff9b44a7f
move RUSTFLAGS gen to own file instead of setting in each script
2020-08-12 00:28:03 +02:00
Joakim Frostegård
b3caa7ab7b
Update TODO
2020-08-12 00:20:00 +02:00
Joakim Frostegård
29e3d695a0
Update TODO
2020-08-12 00:13:36 +02:00
Joakim Frostegård
9af4e4663d
aquatic_ws: send responses for every event, wake mio for responses
2020-08-11 23:58:00 +02:00
Joakim Frostegård
de1a299f1e
aquatic_ws: InMessage::to_ws_message: don't take ownership
2020-08-11 23:24:46 +02:00
Joakim Frostegård
63e5fe11c9
aquatic http protocol: delete obsoleted bench_request_from_path
2020-08-11 23:06:05 +02:00
Joakim Frostegård
f2d697011b
Don't use target-cpu native etc in scripts/test.sh
2020-08-11 23:04:28 +02:00
Joakim Frostegård
56bc028a44
aquatic_ws: OutMessage and InMessage simd-json fixes
...
* use simd-json in OutMessage deserialization
* take ownership in InMessage deserialization to avoid bugs
* Update benchmark results, benchmark was broken
* Compile simd-json even if simd is not on, so that rust-analyzer
works
2020-08-11 23:02:19 +02:00
Joakim Frostegård
8dfe524421
Update TODO
2020-08-11 06:45:47 +02:00
Joakim Frostegård
5d40954936
aquatic_ws: deserialize InMessage with simd-json for performance
...
From 18% to 13% CPU time during load test run.
Criterion benchmark of deserialization got about 90% improvement.
2020-08-11 06:32:51 +02:00
Joakim Frostegård
539cf03f93
Update README (aquatic http load test section)
2020-08-11 06:31:09 +02:00