diff options
| -rw-r--r-- | src/main.rs | 4 | ||||
| -rw-r--r-- | src/pinger.rs | 3 | ||||
| -rw-r--r-- | src/print.rs | 6 | ||||
| -rw-r--r-- | src/state.rs | 2 | ||||
| -rw-r--r-- | src/stats.rs | 19 |
5 files changed, 6 insertions, 28 deletions
diff --git a/src/main.rs b/src/main.rs index d5e1588..a5996d4 100644 --- a/src/main.rs +++ b/src/main.rs @@ -74,9 +74,9 @@ async fn main() { match rx.try_recv() { // Update the state of the received packet Ok(result) => match result { - PingResult::Ping { rtt, ttl, id } => { + PingResult::Ping { rtt, id } => { if (id as usize) < states.len() { - states[id as usize] = State::Received { rtt, ttl }; + states[id as usize] = State::Received { rtt }; } } PingResult::NoPingErr { id } => { diff --git a/src/pinger.rs b/src/pinger.rs index 3570ad1..12cad5d 100644 --- a/src/pinger.rs +++ b/src/pinger.rs @@ -5,7 +5,7 @@ use tokio::task; pub enum PingResult { NoPingErr { id: u32 }, - Ping { rtt: u64, ttl: u32, id: u32 }, + Ping { rtt: u64, id: u32 }, } pub fn spawn_ping(target: IpAddr, tx: Sender<PingResult>, id: u32) { @@ -26,7 +26,6 @@ fn do_ping(target: IpAddr, id: u32) -> PingResult { match result { Ok(reply) => PingResult::Ping { rtt: reply.rtt.as_millis() as u64, - ttl: reply.ttl.unwrap_or(0) as u32, id, }, Err(_) => PingResult::NoPingErr { id }, diff --git a/src/print.rs b/src/print.rs index 39a4382..de5e508 100644 --- a/src/print.rs +++ b/src/print.rs @@ -200,10 +200,9 @@ pub fn print_stats(stats: &Stats) { let mad_rtt_rounded = stats.mad_rtt.round() as u64; let mean_rtt_round = stats.avg_rtt.round() as u32; - let mean_ttl_round = stats.avg_ttl.round() as u32; println!( - "{}/{} ({:.1}%) | ⌊{}⌋ ⌈{}⌉ [{}] [Δ{}]ms / ⌊{}⌋ ⌈{}⌉ [{}]{}", + "{}/{} ({:.1}%) | ⌊{}⌋ ⌈{}⌉ [{}] [Δ{}]ms{}", stats.lost, total, percent_lost, @@ -211,9 +210,6 @@ pub fn print_stats(stats: &Stats) { stats.max_rtt, mean_rtt_round, mad_rtt_rounded, - stats.min_ttl, - stats.max_ttl, - mean_ttl_round, ERASE_LINE_END ); } diff --git a/src/state.rs b/src/state.rs index fe1fa4a..10a227f 100644 --- a/src/state.rs +++ b/src/state.rs @@ -3,7 +3,7 @@ use std::time::{SystemTime, UNIX_EPOCH}; pub enum State { NotYetReceived { time_sent: u64 }, SendError, - Received { rtt: u64, ttl: u32 }, + Received { rtt: u64 }, Lost, } diff --git a/src/stats.rs b/src/stats.rs index db99fb4..3848d6b 100644 --- a/src/stats.rs +++ b/src/stats.rs @@ -10,16 +10,10 @@ pub struct Stats { pub avg_rtt: f64, /// Mean absolute difference (deviation) from the average pub mad_rtt: f64, - - // Time To Live - pub min_ttl: u32, - pub max_ttl: u32, - pub avg_ttl: f64, } pub fn compute_stats(states: &[crate::state::State]) -> Option<Stats> { let mut rtts: Vec<u64> = Vec::new(); - let mut ttls: Vec<u32> = Vec::new(); let received = states .iter() @@ -32,9 +26,8 @@ pub fn compute_stats(states: &[crate::state::State]) -> Option<Stats> { } for state in states { - if let crate::state::State::Received { rtt, ttl } = state { + if let crate::state::State::Received { rtt } = state { rtts.push(*rtt); - ttls.push(*ttl); } } @@ -51,13 +44,6 @@ pub fn compute_stats(states: &[crate::state::State]) -> Option<Stats> { .sum::<f64>() / rtts.len() as f64; - // TTL stats - let min_ttl = ttls.iter().min().copied().unwrap(); - let max_ttl = ttls.iter().max().copied().unwrap(); - - let sum_ttl: u32 = ttls.iter().sum(); - let avg_ttl = sum_ttl as f64 / ttls.len() as f64; - Some(Stats { received, lost, @@ -65,8 +51,5 @@ pub fn compute_stats(states: &[crate::state::State]) -> Option<Stats> { max_rtt, avg_rtt, mad_rtt, - min_ttl, - max_ttl, - avg_ttl, }) } |