pub struct SensorSnapshot {
pub loss: f32,
pub burstiness: f32,
pub owd_trend: f32,
pub link_stress: f32,
pub path_shift: f32,
pub ecn_ce: f32,
pub congestion_fraction: f32,
pub rev_loss: f32,
pub queue_delay_ms: f32,
pub backhaul_hops: u8,
}Expand description
A fused snapshot of the channel from all sensors.
Fields§
§loss: f32Measured loss fraction, 0..=1 (in-band ground truth).
burstiness: f32Burstiness, 0..=1: how clustered the loss is (radio / temporal).
owd_trend: f32One-way-delay trend (delay added per unit time). Positive means the queue is building - congestion-driven loss is imminent.
link_stress: f32Link stress, 0..=1, from the platform link sensor (low signal / high interface drop rate). A feed-forward predictor of loss.
path_shift: f32Path shift, 0..=1, from the peer’s echoed TTL: high just after a hop-count change (a router-level re-route). A feed-forward predictor of the loss a path change often brings.
ecn_ce: f32ECN Congestion-Experienced rate, 0..=1, from the peer’s echoed TOS. An AQM router marks CE before it tail-drops, so this leads loss the way a rising delay trend does.
congestion_fraction: f32Share of recent loss the peer classed congestion (0..=1), from its
loss_class report (Biaz + Spike). The congestion share drives parity
up broadly; the wireless share is left to local FEC and does not inflate
effective loss.
rev_loss: f32Reverse-path (feedback) loss share (0..=1): the fraction of the peer’s feedback the sender missed. Lost feedback impairs ARQ, so a lossy reverse path nudges FEC to carry more (less reliance on the round trip).
queue_delay_ms: f32Self-induced queue delay in milliseconds: RTT_now - RTprop from the
BBR path model. A sustained value above QUEUE_BLOAT_MS is bufferbloat
WE are causing - the rising delay is our own standing queue, not external
congestion, so the answer is to pace down (drain the queue), not to add
FEC parity (which only deepens it).
backhaul_hops: u8Estimated Wi-Fi backhaul-hop count (0..=3) behind the first hop. Each extra hop is a shared-medium retransmit that raises expected loss, so more hops bias parity up.
Trait Implementations§
Source§impl Clone for SensorSnapshot
impl Clone for SensorSnapshot
Source§fn clone(&self) -> SensorSnapshot
fn clone(&self) -> SensorSnapshot
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more