This repository contains nim-libp2p, go-libp2p and rust-libp2p based implementations of GossipSub test nodes that can run in both Kubernetes (K8s) and Shadow simulator environments.
These test nodes are designed for performance testing and evaluation of libp2p's GossipSub protocol under various network conditions. The implementations support:
- Configurable test node parameters
- Kubernetes and shadow deployment
- Multi-transport support (Mplex, Yamux, QUIC)
- Mix protocol support (for nim-libp2p)
- Prometheus metrics collection
- HTTP-based message injection for dynamic test configuration
Node/test-specific details are available in corresponding directories.
To maintain reproducible scenarios, tags (and public docker images) should be created and documented in READMES. Tag structure should work as follows:
<VERSION>-<IMPLEMENTATION>-<FOLDER>
For example, once we have everything ready for a new nim regression node version, we create the following tag:
v2.0.0-nim-regression