Update README

This commit is contained in:
Joakim Frostegård 2023-03-09 23:07:50 +01:00
parent 630e5c0938
commit 4b7e9c5609

View file

@ -13,11 +13,11 @@ of sub-implementations for different protocols:
[mio]: https://github.com/tokio-rs/mio [mio]: https://github.com/tokio-rs/mio
[glommio]: https://github.com/DataDog/glommio [glommio]: https://github.com/DataDog/glommio
| Name | Protocol | OS requirements | | Name | Protocol | OS requirements |
|--------------|----------------------------------------------|------------------------------| |--------------|-----------------------------------|--------------------------------------|
| aquatic_udp | [BitTorrent over UDP] | Unix-like (using [mio]) | | aquatic_udp | [BitTorrent over UDP] | Unix-like / Linux 6.0+ with io_uring |
| aquatic_http | [BitTorrent over HTTP] over TLS ([rustls]) | Linux 5.8+ (using [glommio]) | | aquatic_http | [BitTorrent over HTTP] over TLS | Linux 5.8+ |
| aquatic_ws | [WebTorrent], optionally over TLS ([rustls]) | Linux 5.8+ (using [glommio]) | | aquatic_ws | [WebTorrent], optionally over TLS | Linux 5.8+ |
Features at a glance: Features at a glance:
@ -190,22 +190,23 @@ Implements:
This is the most mature of the implementations. I consider it ready for production use. This is the most mature of the implementations. I consider it ready for production use.
#### Performance
![UDP BitTorrent tracker throughput comparison](./documents/aquatic-udp-load-test-illustration-2023-01-11.png)
More details are available [here](./documents/aquatic-udp-load-test-2023-01-11.pdf).
#### io_uring #### io_uring
An experimental io_uring backend can be compiled in by passing the `io-uring` An experimental io_uring backend can be enabled by passing the `io-uring`
feature. Currently, Linux 6.0 or later is required. The application will feature when compilinig. Currently, Linux 6.0 or later is required. The
attempt to fall back to the mio backend if your kernel is not supported. application will attempt to fall back to the [mio] backend if your kernel is
not supported.
```sh ```sh
cargo build --release -p aquatic_udp --features "io-uring" cargo build --release -p aquatic_udp --features "io-uring"
``` ```
#### Performance
![UDP BitTorrent tracker throughput comparison](./documents/aquatic-udp-load-test-illustration-2023-01-11.png)
More details are available [here](./documents/aquatic-udp-load-test-2023-01-11.pdf). The mio backend was used.
### aquatic_http: HTTP BitTorrent tracker ### aquatic_http: HTTP BitTorrent tracker
[BEP 003]: https://www.bittorrent.org/beps/bep_0003.html [BEP 003]: https://www.bittorrent.org/beps/bep_0003.html