[][src]Struct bevy_networking_turbulence::ReliableChannelSettings

pub struct ReliableChannelSettings {
    pub bandwidth: u32,
    pub recv_window_size: u32,
    pub send_window_size: u32,
    pub burst_bandwidth: u32,
    pub init_send: u32,
    pub wakeup_time: Duration,
    pub initial_rtt: Duration,
    pub max_rtt: Duration,
    pub rtt_update_factor: f64,
    pub rtt_resend_factor: f64,
}

Fields

bandwidth: u32

The target outgoing bandwidth, in bytes / sec.

This is the target bandwidth usage for all sent packets, not the target bandwidth for the actual underlying stream. Both sends and resends (but not currently acks) count against this bandwidth limit, so this is designed to limit the amount of traffic this channel produces.

recv_window_size: u32

The size of the incoming ring buffer

send_window_size: u32

The size of the outgoing ring buffer

burst_bandwidth: u32

The maximum available bytes to send in a single burst

init_send: u32

The sending side of a channel will always send a constant amount of bytes more than what it believes the remote's recv window actually is, to avoid stalling the connection. This controls the amount past the recv window which will be sent, and also the initial amount of data that will be sent when the connection starts up.

wakeup_time: Duration

The transmission task for the channel will wake up at this rate to do resends and as a Nagle timer.

initial_rtt: Duration

The initial estimate for the RTT.

max_rtt: Duration

The maximum reasonable RTT which will be used as an upper bound for packet RTT values.

rtt_update_factor: f64

The computed RTT for each received acknowledgment will be mixed with the RTT estimate by this factor.

rtt_resend_factor: f64

Resends will occur if an acknowledgment is not received within this multiplicative factor of the estimated RTT.

Trait Implementations

impl Clone for Settings[src]

impl Debug for Settings[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Component for T where
    T: 'static + Send + Sync
[src]

impl<T> Downcast for T where
    T: Any

impl<T> DowncastSync for T where
    T: Send + Sync + Any

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Resource for T where
    T: 'static + Send + Sync
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,