Electroneum
rtt.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  rtt_info
 

Macros

#define RTT_MAX_TIMEOUT   120000
 

Functions

void rtt_init (struct rtt_info *rtt)
 
int rtt_timeout (const struct rtt_info *rtt)
 
int rtt_unclamped (const struct rtt_info *rtt)
 
int rtt_notimeout (const struct rtt_info *rtt)
 
void rtt_update (struct rtt_info *rtt, int ms)
 
void rtt_lost (struct rtt_info *rtt, int orig)
 

Variables

int RTT_MIN_TIMEOUT
 

Detailed Description

This file contains a data type and functions to help estimate good round trip times for UDP resend timeout values.

Definition in file rtt.h.

Macro Definition Documentation

◆ RTT_MAX_TIMEOUT

#define RTT_MAX_TIMEOUT   120000

max retransmit timeout value, in milliseconds

Definition at line 61 of file rtt.h.

Function Documentation

◆ rtt_init()

void rtt_init ( struct rtt_info rtt)

Initialize RTT estimators.

Parameters
rttThe structure. Caller is responsible for allocation of it.

◆ rtt_lost()

void rtt_lost ( struct rtt_info rtt,
int  orig 
)

Update the statistics with a new timeout expired observation.

Parameters
rttround trip statistics structure.
origoriginal rtt time given for the query that timed out. Used to calculate the maximum responsible backed off time that can reasonably be applied.

◆ rtt_notimeout()

int rtt_notimeout ( const struct rtt_info rtt)

RTT for valid responses. Without timeouts.

Parameters
rttround trip statistics structure.
Returns
: value in msec.

◆ rtt_timeout()

int rtt_timeout ( const struct rtt_info rtt)

Get timeout to use for sending a UDP packet.

Parameters
rttround trip statistics structure.
Returns
: timeout to use in milliseconds. Relative time value.

◆ rtt_unclamped()

int rtt_unclamped ( const struct rtt_info rtt)

Get unclamped timeout to use for server selection. Recent timeouts are reflected in the returned value.

Parameters
rttround trip statistics structure.
Returns
: value to use in milliseconds.

◆ rtt_update()

void rtt_update ( struct rtt_info rtt,
int  ms 
)

Update the statistics with a new roundtrip estimate observation.

Parameters
rttround trip statistics structure.
msestimate of roundtrip time in milliseconds.

Variable Documentation

◆ RTT_MIN_TIMEOUT

int RTT_MIN_TIMEOUT

min retransmit timeout value, in milliseconds