Expand description

A simple benchmarking utility for Arti.

This works by establishing a simple TCP server, and having Arti connect back to it via a chutney network of Tor nodes, benchmarking the upload and download bandwidth while doing so.

Structs

Benchmark 🔒

A helper struct for running benchmarks

A set of benchmark results for a given BenchmarkType, including information about averages.

A summary of all benchmarks conducted throughout the invocation of arti-bench.

Timing information from the benchmarking client.

Timing information from the benchmarking server.

Statistic 🔒

Some information about a set of benchmark samples collected during multiple runs.

Helper type: track a StreamIsolation token over a set of runs.

A summary of benchmarking results, generated from ClientTiming.

Enums

The type of benchmark conducted.

Constants

How much should we be willing to read at a time?

Functions

client 🔒

Runs the benchmarking client on the provided socket.

main 🔒

Generate a random payload of bytes of the given size

run_timing 🔒

Run the timing routine

Runs the benchmarking TCP server, using the provided TCP listener and set of payloads.