State object for CongURE QUIC. More...

Detailed Description

State object for CongURE QUIC.

Definition at line 134 of file quic.h.

#include <quic.h>

Data Fields

congure_snd_t super
 see congure_snd_t More...
 
const congure_quic_snd_consts_tconsts
 Constants. More...
 
ztimer_now_t first_rtt_sample
 Timestamp in milliseconds of when the first RTT sample was obtained. More...
 
unsigned in_flight_size
 Sum of caller-defined units of message sizes of all messages that are yet not ack'd or declared lost. More...
 
ztimer_now_t recovery_start
 Timestamp in milliseconds of when congestion was first detected. More...
 
congure_wnd_size_t ssthresh
 Slow start threshold in caller-defined units. More...
 
uint16_t smoothed_rtt
 The smoothed RTT of a connection between peers in milliseconds. More...
 
uint16_t rtt_var
 The RTT variation. More...
 
uint16_t min_rtt
 The minimum RTT seen over a period of time. More...
 
uint16_t limited
 Set to one if congestion control should is limited by the application or flow control. More...
 
uint16_t max_ack_delay
 Advertised maximum amount of time in milliseconds a receiver intends to delay its acknowledgements. More...
 
- Data Fields inherited from congure_snd_t
const congure_snd_driver_tdriver
 Driver for the state object. More...
 
void * ctx
 Context for callbacks specific to the congestion control. More...
 
congure_wnd_size_t cwnd
 Congestion window size. More...
 

Field Documentation

◆ consts

const congure_quic_snd_consts_t* congure_quic_snd_t::consts

Constants.

Definition at line 140 of file quic.h.

◆ first_rtt_sample

ztimer_now_t congure_quic_snd_t::first_rtt_sample

Timestamp in milliseconds of when the first RTT sample was obtained.

Definition at line 146 of file quic.h.

◆ in_flight_size

unsigned congure_quic_snd_t::in_flight_size

Sum of caller-defined units of message sizes of all messages that are yet not ack'd or declared lost.

Definition at line 152 of file quic.h.

◆ limited

uint16_t congure_quic_snd_t::limited

Set to one if congestion control should is limited by the application or flow control.

Should be supplied and may be changed by user before calling a CongURE - A Congestion control framework function.

See also
RFC 9002, Appendix B.5

Definition at line 194 of file quic.h.

◆ max_ack_delay

uint16_t congure_quic_snd_t::max_ack_delay

Advertised maximum amount of time in milliseconds a receiver intends to delay its acknowledgements.

Used to establish persistent congestion.

Should be supplied and may be changed by user before calling a CongURE - A Congestion control framework function. If this value is not provided by the * protocol, leave it at 0.

Definition at line 206 of file quic.h.

◆ min_rtt

uint16_t congure_quic_snd_t::min_rtt

The minimum RTT seen over a period of time.

Definition at line 183 of file quic.h.

◆ recovery_start

ztimer_now_t congure_quic_snd_t::recovery_start

Timestamp in milliseconds of when congestion was first detected.

This is the time when congestion recovery mode is entered.

Definition at line 159 of file quic.h.

◆ rtt_var

uint16_t congure_quic_snd_t::rtt_var

The RTT variation.

Definition at line 178 of file quic.h.

◆ smoothed_rtt

uint16_t congure_quic_snd_t::smoothed_rtt

The smoothed RTT of a connection between peers in milliseconds.

Definition at line 173 of file quic.h.

◆ ssthresh

congure_wnd_size_t congure_quic_snd_t::ssthresh

Slow start threshold in caller-defined units.

When congure_quic_snd_t::cwnd is below congure_quic_snd_t::ssthresh the algorithm is in slow start mode and congure_quic_snd_t::cwnd grows in number of caller-defined units of acknowledged messages sizes

Definition at line 168 of file quic.h.

◆ super

congure_snd_t congure_quic_snd_t::super

see congure_snd_t

Definition at line 135 of file quic.h.


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