pub struct TransportConfig {
pub congestion: Congestion,
pub datagram_send_buffer: usize,
pub datagram_receive_buffer: usize,
pub max_idle: Duration,
pub keep_alive: Duration,
pub initial_mtu: u16,
}Fields§
§congestion: Congestion§datagram_send_buffer: usizeBytes quinn may hold in its outgoing datagram buffer.
This is a ceiling, not the latency bound: the engine’s admission control
measures what is queued here against the QoS profile’s backlog
threshold (Session::send_buffer_queued) and drops delta frames long
before the buffer fills. What the size must guarantee is that a keyframe
always fits — keyframes are never dropped, and a keyframe chunk that
finds no room is retried with 1 ms sleeps and then abandoned, tearing
the frame. So: the largest backlog a profile tolerates (3 frames at
6 Mbps / 30 fps is 75 KB) plus the largest keyframe with parity (a 2 s
GOP at 6 Mbps can reach ~170 KB), with headroom.
datagram_receive_buffer: usize§max_idle: Duration§keep_alive: Duration§initial_mtu: u16Starting MTU assumption; DPLPMTUD probes upward from here.
Trait Implementations§
Source§impl Clone for TransportConfig
impl Clone for TransportConfig
Source§fn clone(&self) -> TransportConfig
fn clone(&self) -> TransportConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 TransportConfig
impl Debug for TransportConfig
Auto Trait Implementations§
impl Freeze for TransportConfig
impl RefUnwindSafe for TransportConfig
impl Send for TransportConfig
impl Sync for TransportConfig
impl Unpin for TransportConfig
impl UnsafeUnpin for TransportConfig
impl UnwindSafe for TransportConfig
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