1use rperf3::{client::Client, Config, Protocol};
2use std::time::Duration;
3
4#[tokio::main]
5async fn main() -> Result<(), Box<dyn std::error::Error>> {
6 env_logger::Builder::from_env(env_logger::Env::default().default_filter_or("info")).init();
7
8 println!("Connecting to rperf3 server at 127.0.0.1:5201...");
9
10 let config = Config::client("127.0.0.1".to_string(), 5201)
11 .with_protocol(Protocol::Tcp)
12 .with_duration(Duration::from_secs(10))
13 .with_buffer_size(128 * 1024);
14
15 let client = Client::new(config)?;
16 client.run().await?;
17
18 let measurements = client.get_measurements();
19 println!(
20 "\nFinal Results: {:.2} Mbps",
21 measurements.total_bits_per_second() / 1_000_000.0
22 );
23
24 Ok(())
25}