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 client = ClientBuilder::new("my-app", "0.1.0").build();
let targets = client.locate_test_targets().await?;
if let Some(url) = &targets.download_url {
let mut rx = client.start_download(url).await?;
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.