Splice Throughput Example
Run a proxied client-server TCP stream through local Nextmini dataplane nodes and observe splice throughput.
This example places an external client and external server on opposite sides of a three-node Nextmini dataplane path. The default route in examples/splice-test/controller-config.toml is [1, 2, 3, 4, 5], where node 1 is the external client and node 5 is the external server.
The client (examples/splice-test/src/client.rs) performs a SOCKS5 handshake to 172.16.8.5:8081, then continuously sends data to the server at 172.16.8.8:8080. The server (examples/splice-test/src/server.rs) reports receive throughput.
From the repository root:
cd examples/splice-test
docker compose build
docker compose upIn another terminal, watch client and server logs:
cd examples/splice-test
docker compose logs -f external_client
docker compose logs -f external_serverSuccessful startup is indicated by lines such as SOCKS5 tunnel established successfully in external_client logs and Throughput: in external_server logs.
If you want a different number of dataplane nodes, regenerate before rebuilding:
cd examples/splice-test
python nodes.py -n 5
rg "^route = " controller-config.toml
rg "target_ip" src/client.rs
docker compose build
docker compose upStop containers when finished:
docker compose down