High-performance open BitTorrent tracker (UDP, HTTP, WebTorrent)
Find a file
2020-04-20 16:54:43 +02:00
aquatic Decide to use Apache 2.0 license, add file and update Cargo.toml's 2020-04-20 16:54:43 +02:00
aquatic_bench Decide to use Apache 2.0 license, add file and update Cargo.toml's 2020-04-20 16:54:43 +02:00
aquatic_load_test Decide to use Apache 2.0 license, add file and update Cargo.toml's 2020-04-20 16:54:43 +02:00
bittorrent_udp Decide to use Apache 2.0 license, add file and update Cargo.toml's 2020-04-20 16:54:43 +02:00
cli_helpers Decide to use Apache 2.0 license, add file and update Cargo.toml's 2020-04-20 16:54:43 +02:00
documents Add load test pdf, remove load test details from README 2020-04-19 20:58:05 +02:00
scripts Add scripts for setting up benchmarks on linux 2020-04-19 10:31:33 +02:00
.gitignore Add load test pdf, remove load test details from README 2020-04-19 20:58:05 +02:00
Cargo.lock add aquatic_load_test for benchmarking aquatic over the network 2020-04-19 10:21:12 +02:00
Cargo.toml add aquatic_load_test for benchmarking aquatic over the network 2020-04-19 10:21:12 +02:00
deny.toml Add cargo deny file deny.toml, check dependency licenses 2020-04-20 16:49:40 +02:00
LICENSE Decide to use Apache 2.0 license, add file and update Cargo.toml's 2020-04-20 16:54:43 +02:00
README.md Decide to use Apache 2.0 license, add file and update Cargo.toml's 2020-04-20 16:54:43 +02:00
TODO.md Decide to use Apache 2.0 license, add file and update Cargo.toml's 2020-04-20 16:54:43 +02:00

aquatic

Fast, multi-threaded UDP BitTorrent tracker written in Rust.

Aims to implements the UDP BitTorrent protocol, except that it:

  • Doesn't care about IP addresses sent in announce requests. The packet source IP is always used.
  • Doesn't track of the number of torrent downloads (0 is always sent).

Supports IPv4 and IPv6.

Usage

Install rust compiler (stable is fine) and cmake. Then, compile and run aquatic:

./scripts/run-server.sh

Benchmarks

Performance was compared to opentracker using aquatic_load_test.

Server responses per second, best result in bold:

workers aquatic  opentracker
1 n/a 177k
2 168k 98k
3 187k 118k
4 216k 127k
6 309k 109k
8 408k 96k

(See documents/aquatic-load-test-2020-04-19.pdf for details.)

License

Apache 2.0 (see LICENSE file)

Trivia

The tracker is called aquatic because it thrives under a torrent of bits ;-)