Commit graph

115 commits

Author SHA1 Message Date
Joakim Frostegård
bbb4c5e411 udp: remove ConnectedRequestSender::any_full method 2024-02-02 14:09:46 +01:00
Joakim Frostegård
97688ed074 udp: disallow announce requests with port value of 0 2024-02-02 14:08:08 +01:00
Joakim Frostegård
c48a83b06a udp: reorder declarations in common.rs 2024-02-02 13:55:57 +01:00
Joakim Frostegård
be5165bcf2 udp: mio socket worker: make send_response plain fn 2024-02-02 13:48:06 +01:00
Joakim Frostegård
405bbaca93 udp: improve statistics structs
- Now, workers don't need to keep track of which atomic usize
  to update
- Additionally, prometheus now gets separate information per
  socket worker
2024-02-02 13:39:46 +01:00
Joakim Frostegård
e2e525b560 udp: move PeerStatus from common.rs to swarm worker 2024-02-01 23:25:43 +01:00
Joakim Frostegård
216bb93088 udp: improve WorkerType Display implementation 2024-01-29 22:27:03 +01:00
Joakim Frostegård
1967d8aa3e udp: return errors from threads instead of panicking in some cases 2024-01-29 22:17:30 +01:00
Joakim Frostegård
ae75d0cbe4 udp socket worker: fix warning 2024-01-29 22:12:08 +01:00
Joakim Frostegård
6dec985d45 udp: store prometheus exporter thread handle, periodically render 2024-01-29 22:09:20 +01:00
Joakim Frostegård
8f838098aa udp: replace PanicSentinel with loop over JoinHandles 2024-01-29 21:45:50 +01:00
Joakim Frostegård
239266ddab udp protocol: improve README 2024-01-29 20:01:05 +01:00
Joakim Frostegård
38de05a6c4 http protocol: rename methods for writing to and parsing from bytes 2024-01-29 19:52:41 +01:00
Joakim Frostegård
3c906f48ee ws protocol: make tungstenite integration optional feature 2024-01-29 19:49:05 +01:00
Joakim Frostegård
fee465d205 udp protocol: derive Copy for multiple structs 2024-01-29 19:45:29 +01:00
Joakim Frostegård
41efa151af udp protocol: implement write_bytes for individual request types 2024-01-29 19:42:56 +01:00
Joakim Frostegård
1c59972834 udp protocol: rename "write" and "from_bytes" methods 2024-01-29 19:38:12 +01:00
Joakim Frostegård
964636db7c http and ws: fix build errors with --no-default-features 2024-01-27 18:21:44 +01:00
Joakim Frostegård
acabf1581f silence bencher clippy warning for now 2024-01-27 18:13:23 +01:00
Joakim Frostegård
c5e09e8106 README files: mention installing build-essential 2024-01-27 18:12:21 +01:00
Joakim Frostegård
a0c79970fe Add separate READMEs for bencher, peer_id and all protocol crates 2024-01-27 18:05:21 +01:00
Joakim Frostegård
7d4ba6940b Improve README files 2024-01-27 17:46:49 +01:00
Joakim Frostegård
264a12230e
http README: remove text about only running over TLS 2024-01-27 13:31:07 +01:00
Joakim Frostegård
352194e0bd http: avoid heap allocation for torrents with few peers; refactor 2024-01-27 10:58:03 +01:00
Joakim Frostegård
9fc7abd568 aquatic_common: remove unused import 2024-01-25 23:43:48 +01:00
Joakim Frostegård
e4422cf3ff ws: swarm worker: more readability refactors 2024-01-25 23:40:19 +01:00
Joakim Frostegård
f050467c2a ws: further refactor of swarm worker to improve readability 2024-01-25 23:24:10 +01:00
Joakim Frostegård
e6e663761c ws: refactor swarm worker storage code for improved readability 2024-01-25 19:35:45 +01:00
Joakim Frostegård
238cce9b16 Move common/extract_response_peers to ws since it is only user 2024-01-25 19:05:27 +01:00
Joakim Frostegård
c7f7f010ca http: upgrade metrics crate to 0.22 2024-01-25 00:03:05 +01:00
Joakim Frostegård
fe6a7ef8b5 http: update crate description 2024-01-24 23:37:35 +01:00
Joakim Frostegård
73eeb22f66 http: extract response peers while announcing peer removed
This improves performance by avoiding lots of comparisons
2024-01-24 23:33:15 +01:00
Joakim Frostegård
63ae98f67c http: index peer map by IP and port instead of IP and peer id 2024-01-24 22:54:13 +01:00
Joakim Frostegård
cbbfa9afef toml_config_derive: fix clippy warning 2024-01-20 10:43:39 +01:00
Joakim Frostegård
aeeeda1b2b bencher: fix most clippy warnings 2024-01-20 10:40:28 +01:00
Joakim Frostegård
2dd3ab8682 aquatic_common: fix clippy warnings 2024-01-20 10:37:15 +01:00
Joakim Frostegård
746aa47cce http: silence clippy warnings 2024-01-20 10:29:13 +01:00
Joakim Frostegård
c32fa7cc2b Fix ws clippy warnings 2024-01-20 10:27:15 +01:00
Joakim Frostegård
9d1bba5e92 udp: fix/silence clippy warnings 2024-01-20 10:08:53 +01:00
Joakim Frostegård
5401eaf85f Run cargo clippy --fix and cargo fmt 2024-01-20 09:56:14 +01:00
Joakim Frostegård
22e151d0f0 http: start awaiting conn close message before tls setup 2024-01-20 09:43:55 +01:00
Joakim Frostegård
0c03048ce8 udp: update metrics crate 2024-01-20 09:42:17 +01:00
Joakim Frostegård
1a6b4345d4 udp: remove thingbuf in favor of crossbeam channel
thingbuf didn't have obvious performance advantages and is a lot less
mature. Furthermore, it doesn't support anything like crossbeam
Receiver::try_iter, which is prefereable now that announce responses
can be sent to any socket worker.
2024-01-20 09:41:07 +01:00
Joakim Frostegård
e77c9f46e7 udp: store torrents with few peers without an extra heap alloc 2024-01-20 09:40:09 +01:00
Joakim Frostegård
0dae7fd533 ws protocol: remove glob exports; adjust dependent crates 2024-01-08 20:16:46 +01:00
Joakim Frostegård
27ecccd984 ws load test: store global info hashes as Arc<[InfoHash]> 2024-01-08 20:07:15 +01:00
Joakim Frostegård
34167371b0 ws load test: refactor network module 2024-01-08 20:02:30 +01:00
Joakim Frostegård
64926ba46a ws load test: clean up, slight code refactor 2024-01-08 19:37:01 +01:00
Joakim Frostegård
2279e8390e ws load test: send answers regarding correct info_hash 2024-01-08 19:09:17 +01:00
Joakim Frostegård
d4c95d89c0 ws: swarm: remove peer ValidUntil update task, just create when needed 2024-01-08 18:54:11 +01:00