Stats

Struct Stats 

Source
pub struct Stats {
Show 23 fields pub recv: usize, pub sent: usize, pub lost: usize, pub spurious_lost: usize, pub retrans: usize, pub sent_bytes: u64, pub recv_bytes: u64, pub acked_bytes: u64, pub lost_bytes: u64, pub stream_retrans_bytes: u64, pub dgram_recv: usize, pub dgram_sent: usize, pub paths_count: usize, pub reset_stream_count_local: u64, pub stopped_stream_count_local: u64, pub reset_stream_count_remote: u64, pub stopped_stream_count_remote: u64, pub data_blocked_sent_count: u64, pub stream_data_blocked_sent_count: u64, pub data_blocked_recv_count: u64, pub stream_data_blocked_recv_count: u64, pub path_challenge_rx_count: u64, pub bytes_in_flight_duration: Duration,
}
Expand description

Statistics about the connection.

A connection’s statistics can be collected using the stats() method.

Fields§

§recv: usize

The number of QUIC packets received.

§sent: usize

The number of QUIC packets sent.

§lost: usize

The number of QUIC packets that were lost.

§spurious_lost: usize

The number of QUIC packets that were marked as lost but later acked.

§retrans: usize

The number of sent QUIC packets with retransmitted data.

§sent_bytes: u64

The number of sent bytes.

§recv_bytes: u64

The number of received bytes.

§acked_bytes: u64

The number of bytes sent acked.

§lost_bytes: u64

The number of bytes sent lost.

§stream_retrans_bytes: u64

The number of stream bytes retransmitted.

§dgram_recv: usize

The number of DATAGRAM frames received.

§dgram_sent: usize

The number of DATAGRAM frames sent.

§paths_count: usize

The number of known paths for the connection.

§reset_stream_count_local: u64

The number of streams reset by local.

§stopped_stream_count_local: u64

The number of streams stopped by local.

§reset_stream_count_remote: u64

The number of streams reset by remote.

§stopped_stream_count_remote: u64

The number of streams stopped by remote.

§data_blocked_sent_count: u64

The number of DATA_BLOCKED frames sent due to hitting the connection flow control limit.

§stream_data_blocked_sent_count: u64

The number of STREAM_DATA_BLOCKED frames sent due to a stream hitting the stream flow control limit.

§data_blocked_recv_count: u64

The number of DATA_BLOCKED frames received from the remote.

§stream_data_blocked_recv_count: u64

The number of STREAM_DATA_BLOCKED frames received from the remote.

§path_challenge_rx_count: u64

The total number of PATH_CHALLENGE frames that were received.

§bytes_in_flight_duration: Duration

Total duration during which this side of the connection was actively sending bytes or waiting for those bytes to be acked.

Trait Implementations§

Source§

impl Clone for Stats

Source§

fn clone(&self) -> Stats

Returns a duplicate of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Stats

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Stats

Source§

fn default() -> Stats

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl Freeze for Stats

§

impl RefUnwindSafe for Stats

§

impl Send for Stats

§

impl Sync for Stats

§

impl Unpin for Stats

§

impl UnwindSafe for Stats

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.