NetSim Source Code Help
Loading...
Searching...
No Matches
RTO.c File Reference
#include "main.h"
#include "TCP.h"
#include "TCP_Enum.h"
#include "TCP_Header.h"
Include dependency graph for RTO.c:

Go to the source code of this file.

Macros

#define alpha   (1/8.0)
 
#define beta   (1/4.0)
 
#define G
 
#define K   (4)
 

Functions

double calculate_RTO (double R, double *srtt, double *rtt_var)
 
static void Backoff_RTO (double *rto)
 
void add_timeout_event (PNETSIM_SOCKET s, NetSim_PACKET *packet)
 
static void handle_rto_timer_for_ctrl (PNETSIM_SOCKET s)
 
void handle_rto_timer ()
 
void restart_rto_timer (PNETSIM_SOCKET s)
 

Macro Definition Documentation

◆ alpha

#define alpha   (1/8.0)

Definition at line 30 of file RTO.c.

◆ beta

#define beta   (1/4.0)

Definition at line 31 of file RTO.c.

◆ G

#define G
Value:
(0.5*SECOND) /* Min RTO value is set to 0.5 s.
* The RFC states this should be 1 s
* Linux seems to be currently using 200 ms.
*/
#define SECOND
Definition: Stack.h:60

Definition at line 32 of file RTO.c.

◆ K

#define K   (4)

Definition at line 33 of file RTO.c.

Function Documentation

◆ add_timeout_event()

void add_timeout_event ( PNETSIM_SOCKET  s,
NetSim_PACKET packet 
)

Definition at line 63 of file RTO.c.

Here is the caller graph for this function:

◆ Backoff_RTO()

static void Backoff_RTO ( double *  rto)
static

Definition at line 57 of file RTO.c.

◆ calculate_RTO()

double calculate_RTO ( double  R,
double *  srtt,
double *  rtt_var 
)

Definition at line 35 of file RTO.c.

Here is the caller graph for this function:

◆ handle_rto_timer()

void handle_rto_timer ( )

Definition at line 101 of file RTO.c.

Here is the caller graph for this function:

◆ handle_rto_timer_for_ctrl()

static void handle_rto_timer_for_ctrl ( PNETSIM_SOCKET  s)
static

Definition at line 92 of file RTO.c.

◆ restart_rto_timer()

void restart_rto_timer ( PNETSIM_SOCKET  s)

Definition at line 152 of file RTO.c.

Here is the caller graph for this function: