From 4b7e9c5609688c4dd962c3492d06881f609164b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Thu, 9 Mar 2023 23:07:50 +0100 Subject: [PATCH] Update README --- README.md | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index ee8c52c..aa08ff7 100644 --- a/README.md +++ b/README.md @@ -13,11 +13,11 @@ of sub-implementations for different protocols: [mio]: https://github.com/tokio-rs/mio [glommio]: https://github.com/DataDog/glommio -| Name | Protocol | OS requirements | -|--------------|----------------------------------------------|------------------------------| -| aquatic_udp | [BitTorrent over UDP] | Unix-like (using [mio]) | -| aquatic_http | [BitTorrent over HTTP] over TLS ([rustls]) | Linux 5.8+ (using [glommio]) | -| aquatic_ws | [WebTorrent], optionally over TLS ([rustls]) | Linux 5.8+ (using [glommio]) | +| Name | Protocol | OS requirements | +|--------------|-----------------------------------|--------------------------------------| +| aquatic_udp | [BitTorrent over UDP] | Unix-like / Linux 6.0+ with io_uring | +| aquatic_http | [BitTorrent over HTTP] over TLS | Linux 5.8+ | +| aquatic_ws | [WebTorrent], optionally over TLS | Linux 5.8+ | Features at a glance: @@ -190,22 +190,23 @@ Implements: 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 -An experimental io_uring backend can be compiled in by passing the `io-uring` -feature. Currently, Linux 6.0 or later is required. The application will -attempt to fall back to the mio backend if your kernel is not supported. +An experimental io_uring backend can be enabled by passing the `io-uring` +feature when compilinig. Currently, Linux 6.0 or later is required. The +application will attempt to fall back to the [mio] backend if your kernel is +not supported. ```sh 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 [BEP 003]: https://www.bittorrent.org/beps/bep_0003.html