LibQuicR
quicr::QuicConnectionMetrics Struct Reference

QUIC connection counters and period aggregates. More...

#include <metrics.h>

Public Member Functions

auto operator<=> (const QuicConnectionMetrics &other) const =default
 Compare all metric fields. More...
 
void ResetPeriod ()
 Clear the rate, congestion-window, in-transit, and RTT period aggregates. More...
 

Public Attributes

uint64_t cwin_congested { 0 }
 Number of times CWIN is low or zero (congested) More...
 
uint64_t prev_cwin_congested { 0 }
 Previous number of times CWIN is congested. More...
 
uint64_t tx_congested { 0 }
 count of times transmit connection is considered congested More...
 
MinMaxAvg tx_rate_bps
 Rate in bits per second in period. More...
 
MinMaxAvg rx_rate_bps
 Estimated rate in bits per second in period. More...
 
MinMaxAvg tx_cwin_bytes
 Congestion window bytes in period. More...
 
MinMaxAvg tx_in_transit_bytes
 Number of bytes in transit. More...
 
MinMaxAvg rtt_us
 Round trip time in microseconds in period. More...
 
MinMaxAvg srtt_us
 Smooth Round trip time in microseconds in period. More...
 
uint64_t tx_retransmits { 0 }
 count of retransmits More...
 
uint64_t tx_lost_pkts { 0 }
 Number of lost packets sent. More...
 
uint64_t tx_timer_losses { 0 }
 Packet losses detected due to timer expiring. More...
 
uint64_t tx_spurious_losses { 0 }
 Number of packet lost that were later acked. More...
 
uint64_t rx_dgrams { 0 }
 count of datagrams received More...
 
uint64_t rx_dgrams_bytes { 0 }
 Number of receive datagram bytes. More...
 
uint64_t tx_dgram_cb { 0 }
 count of picoquic callback for datagram can be sent More...
 
uint64_t tx_dgram_ack { 0 }
 count of picoquic callback for acked datagrams More...
 
uint64_t tx_dgram_lost { 0 }
 count of picoquic callback for lost datagrams More...
 
uint64_t tx_dgram_spurious { 0 }
 count of picoquic callback for late/delayed dgram acks More...
 

Detailed Description

QUIC connection counters and period aggregates.

Member Function Documentation

◆ operator<=>()

auto quicr::QuicConnectionMetrics::operator<=> ( const QuicConnectionMetrics &  other) const
default

Compare all metric fields.

Parameters
otherMetrics to compare.
Returns
Lexicographic comparison of the metric fields.

◆ ResetPeriod()

void quicr::QuicConnectionMetrics::ResetPeriod ( )
inline

Clear the rate, congestion-window, in-transit, and RTT period aggregates.

Member Data Documentation

◆ cwin_congested

uint64_t quicr::QuicConnectionMetrics::cwin_congested { 0 }

Number of times CWIN is low or zero (congested)

◆ prev_cwin_congested

uint64_t quicr::QuicConnectionMetrics::prev_cwin_congested { 0 }

Previous number of times CWIN is congested.

◆ rtt_us

MinMaxAvg quicr::QuicConnectionMetrics::rtt_us

Round trip time in microseconds in period.

◆ rx_dgrams

uint64_t quicr::QuicConnectionMetrics::rx_dgrams { 0 }

count of datagrams received

◆ rx_dgrams_bytes

uint64_t quicr::QuicConnectionMetrics::rx_dgrams_bytes { 0 }

Number of receive datagram bytes.

◆ rx_rate_bps

MinMaxAvg quicr::QuicConnectionMetrics::rx_rate_bps

Estimated rate in bits per second in period.

◆ srtt_us

MinMaxAvg quicr::QuicConnectionMetrics::srtt_us

Smooth Round trip time in microseconds in period.

◆ tx_congested

uint64_t quicr::QuicConnectionMetrics::tx_congested { 0 }

count of times transmit connection is considered congested

◆ tx_cwin_bytes

MinMaxAvg quicr::QuicConnectionMetrics::tx_cwin_bytes

Congestion window bytes in period.

◆ tx_dgram_ack

uint64_t quicr::QuicConnectionMetrics::tx_dgram_ack { 0 }

count of picoquic callback for acked datagrams

◆ tx_dgram_cb

uint64_t quicr::QuicConnectionMetrics::tx_dgram_cb { 0 }

count of picoquic callback for datagram can be sent

◆ tx_dgram_lost

uint64_t quicr::QuicConnectionMetrics::tx_dgram_lost { 0 }

count of picoquic callback for lost datagrams

◆ tx_dgram_spurious

uint64_t quicr::QuicConnectionMetrics::tx_dgram_spurious { 0 }

count of picoquic callback for late/delayed dgram acks

◆ tx_in_transit_bytes

MinMaxAvg quicr::QuicConnectionMetrics::tx_in_transit_bytes

Number of bytes in transit.

◆ tx_lost_pkts

uint64_t quicr::QuicConnectionMetrics::tx_lost_pkts { 0 }

Number of lost packets sent.

◆ tx_rate_bps

MinMaxAvg quicr::QuicConnectionMetrics::tx_rate_bps

Rate in bits per second in period.

◆ tx_retransmits

uint64_t quicr::QuicConnectionMetrics::tx_retransmits { 0 }

count of retransmits

◆ tx_spurious_losses

uint64_t quicr::QuicConnectionMetrics::tx_spurious_losses { 0 }

Number of packet lost that were later acked.

◆ tx_timer_losses

uint64_t quicr::QuicConnectionMetrics::tx_timer_losses { 0 }

Packet losses detected due to timer expiring.


The documentation for this struct was generated from the following file: