Expand description
An ndt7 speed test client library.
ndt7 is a network performance measurement protocol developed by M-Lab. It measures download and upload throughput over WebSocket connections and reports TCP-level metrics such as latency and retransmission.
§Quick start
use ndt7_client::client::ClientBuilder;
let mut client = ClientBuilder::new("my-app", "0.1.0").build();
let handle = client.start_download(None).await?;
println!("connected to {}", handle.server_fqdn);
let mut rx = handle.rx;
while let Some(result) = rx.recv().await {
match result {
Ok(m) => println!("{:?}", m),
Err(e) => eprintln!("error: {e}"),
}
}Modules§
- client
- High-level ndt7 test client.
- download
- ndt7 download test implementation.
- emitter
- Output formatting for test events.
- error
- Error types for the ndt7 client.
- locate
- M-Lab Locate API client.
- params
- Protocol constants and tuning parameters.
- spec
- ndt7 protocol data types.
- summary
- Post-test summary computation.
- upload
- ndt7 upload test implementation.