From 60c4fce25aaf063ed476e1cb9e3e600532b2162b Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Thu, 29 Sep 2022 01:38:28 -0700 Subject: [PATCH] roadmap: add a benchmarking section --- ROADMAP.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ROADMAP.md b/ROADMAP.md index 7f808b1616..9feae247fb 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -47,6 +47,12 @@ Why: Having lots of transports is great, and shaving off RTTs is awesome. We nee Goal: We have cross-version and cross-implementation Testground coverage that makes sure that we are able to establish a libp2p connection between two nodes, in the expected number of RTTs. This makes sure that the optimizations don’t break compatibility, actually have the performance impact we expect them to have, and serves as a regression test in the future. +## ⏱ Future-proof Benchmarking + +Why: For libp2p to be competitive, it needs to delivers comparable performance to widely used protocols on the internet, namely HTTP/2 and HTTP/3. + +Goal: We have a test suite that runs libp2p transfers between nodes located at different locations all over the world, proving that libp2p is able to achieve performance on par with HTTP. The test suite is run on a continuous basis and results are published to a public performance dashboard. + ## 📢 Judicious Address Advertisements Why: A node that advertises lots of addresses hurts itself. Other nodes will have to try dialing a lot of addresses before they find one that actually works, dramatically increasing handshake latencies.