From 63cc9554f2cd93e46d0413a21cbce05014e2f2b3 Mon Sep 17 00:00:00 2001 From: eunhhu Date: Mon, 28 Sep 2026 19:41:08 +0100 Subject: Measure a link at rest: 132 bytes against a QUIC connection's 38,106 (094) M1 of design 011. A Pure node allows 1,000 to 1,000,000 senders; each sends one order and, once told it is stored, rests. At rest a link costs the node 132 bytes (the sender allowed, 73; its number heard, about 60) and no transport state; with a million the node runs in 139 MB. A quinn 0.11 service holding the same exchange's clients connected at rest costs 38,106 bytes a connection: 289 times as much, past the design's 1/100. A link at rest takes its next record in 0.56 ms to stored, one X25519 on the node included; a new QUIC connection takes 1.06 ms and 2.8 times the receiver's CPU, without storing. research/experiments/019-idle-links: links.c, many senders written from serve/link.h's packet format alone (a second implementation), and the quinn service and clients (quic/, built offline); run.py makes both measurements. --- research/experiments/019-idle-links/quic/Cargo.toml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 research/experiments/019-idle-links/quic/Cargo.toml (limited to 'research/experiments/019-idle-links/quic/Cargo.toml') diff --git a/research/experiments/019-idle-links/quic/Cargo.toml b/research/experiments/019-idle-links/quic/Cargo.toml new file mode 100644 index 0000000..cc0f527 --- /dev/null +++ b/research/experiments/019-idle-links/quic/Cargo.toml @@ -0,0 +1,18 @@ +[package] +name = "idle-quic" +version = "0.1.0" +edition = "2021" +publish = false + +# The QUIC side of M1 (../run.py, docs/design/011-pure-transport.md): quinn +# 0.11 with rustls and ring, as a Rust service would use it. +[dependencies] +quinn = { version = "0.11", default-features = false, features = ["rustls-ring", "runtime-tokio"] } +rustls = { version = "0.23", default-features = false, features = ["ring", "std"] } +tokio = { version = "1", features = ["rt", "rt-multi-thread", "macros", "time", "net", "sync", "io-util", "io-std"] } +ring = "0.17" + +[profile.release] +debug = 1 + +[workspace] -- cgit v1.2.3