pub enum RtoStrategy {
Rfc6298,
Quic,
MinRtt {
margin_us: u64,
},
Fixed {
rto_us: u64,
},
}Expand description
RTO computation strategy.
Different algorithms suit different link types:
Rfc6298: Conservative, jitter-tolerant — good default for unknown links.Quic: Lower initial RTO (333ms vs 1s), tighter granularity — better for short flows and first-contact latency.MinRtt: Uses minimum observed RTT + margin — aggressive, best for stable low-jitter links (dedicated point-to-point Ethernet).Fixed: Constant timeout, no adaptation — ideal for local faces (Unix, SHM) where RTT is known and stable.
Variants§
Rfc6298
RFC 6298 EWMA with Karn’s algorithm. Default.
Quic
QUIC (RFC 9002): lower initial RTO, tighter granularity.
MinRtt
Minimum observed RTT + configurable margin. Aggressive.
Fixed
Fixed RTO, no adaptation. For known-latency links.
Trait Implementations§
Source§impl Clone for RtoStrategy
impl Clone for RtoStrategy
Source§fn clone(&self) -> RtoStrategy
fn clone(&self) -> RtoStrategy
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RtoStrategy
impl Debug for RtoStrategy
Source§impl Default for RtoStrategy
impl Default for RtoStrategy
Source§fn default() -> RtoStrategy
fn default() -> RtoStrategy
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for RtoStrategy
impl RefUnwindSafe for RtoStrategy
impl Send for RtoStrategy
impl Sync for RtoStrategy
impl Unpin for RtoStrategy
impl UnwindSafe for RtoStrategy
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more