Functions

Network Emulator
[Queueing Disciplines]

For further documentation see http://linux-net.osdl.org/index.php/Netem. More...

Functions

int netem_msg_fill_raw (struct rtnl_tc *tc, void *data, struct nl_msg *msg)

Queue Limit



void rtnl_netem_set_limit (struct rtnl_qdisc *qdisc, int limit)
 Set limit of netem qdisc.
int rtnl_netem_get_limit (struct rtnl_qdisc *qdisc)
 Get limit of netem qdisc.

Packet Re-ordering



void rtnl_netem_set_gap (struct rtnl_qdisc *qdisc, int gap)
 Set re-ordering gap of netem qdisc.
int rtnl_netem_get_gap (struct rtnl_qdisc *qdisc)
 Get re-ordering gap of netem qdisc.
void rtnl_netem_set_reorder_probability (struct rtnl_qdisc *qdisc, int prob)
 Set re-ordering probability of netem qdisc.
int rtnl_netem_get_reorder_probability (struct rtnl_qdisc *qdisc)
 Get re-ordering probability of netem qdisc.
void rtnl_netem_set_reorder_correlation (struct rtnl_qdisc *qdisc, int prob)
 Set re-order correlation probability of netem qdisc.
int rtnl_netem_get_reorder_correlation (struct rtnl_qdisc *qdisc)
 Get re-ordering correlation probability of netem qdisc.

Corruption



void rtnl_netem_set_corruption_probability (struct rtnl_qdisc *qdisc, int prob)
 Set corruption probability of netem qdisc.
int rtnl_netem_get_corruption_probability (struct rtnl_qdisc *qdisc)
 Get corruption probability of netem qdisc.
void rtnl_netem_set_corruption_correlation (struct rtnl_qdisc *qdisc, int prob)
 Set corruption correlation probability of netem qdisc.
int rtnl_netem_get_corruption_correlation (struct rtnl_qdisc *qdisc)
 Get corruption correlation probability of netem qdisc.

Packet Loss



void rtnl_netem_set_loss (struct rtnl_qdisc *qdisc, int prob)
 Set packet loss probability of netem qdisc.
int rtnl_netem_get_loss (struct rtnl_qdisc *qdisc)
 Get packet loss probability of netem qdisc.
void rtnl_netem_set_loss_correlation (struct rtnl_qdisc *qdisc, int prob)
 Set packet loss correlation probability of netem qdisc.
int rtnl_netem_get_loss_correlation (struct rtnl_qdisc *qdisc)
 Get packet loss correlation probability of netem qdisc.

Packet Duplication



void rtnl_netem_set_duplicate (struct rtnl_qdisc *qdisc, int prob)
 Set packet duplication probability of netem qdisc.
int rtnl_netem_get_duplicate (struct rtnl_qdisc *qdisc)
 Get packet duplication probability of netem qdisc.
void rtnl_netem_set_duplicate_correlation (struct rtnl_qdisc *qdisc, int prob)
 Set packet duplication correlation probability of netem qdisc.
int rtnl_netem_get_duplicate_correlation (struct rtnl_qdisc *qdisc)
 Get packet duplication correlation probability of netem qdisc.

Packet Delay



void rtnl_netem_set_delay (struct rtnl_qdisc *qdisc, int delay)
 Set packet delay of netem qdisc.
int rtnl_netem_get_delay (struct rtnl_qdisc *qdisc)
 Get packet delay of netem qdisc.
void rtnl_netem_set_jitter (struct rtnl_qdisc *qdisc, int jitter)
 Set packet delay jitter of netem qdisc.
int rtnl_netem_get_jitter (struct rtnl_qdisc *qdisc)
 Get packet delay jitter of netem qdisc.
void rtnl_netem_set_delay_correlation (struct rtnl_qdisc *qdisc, int prob)
 Set packet delay correlation probability of netem qdisc.
int rtnl_netem_get_delay_correlation (struct rtnl_qdisc *qdisc)
 Get packet delay correlation probability of netem qdisc.
int rtnl_netem_get_delay_distribution_size (struct rtnl_qdisc *qdisc)
 Get the size of the distribution table.
int rtnl_netem_get_delay_distribution (struct rtnl_qdisc *qdisc, int16_t **dist_ptr)
 Get a pointer to the distribution table.
int rtnl_netem_set_delay_distribution (struct rtnl_qdisc *qdisc, const char *dist_type)
 Set the delay distribution.

Detailed Description

For further documentation see http://linux-net.osdl.org/index.php/Netem.


Function Documentation

void rtnl_netem_set_limit ( struct rtnl_qdisc *  qdisc,
int  limit 
)

Set limit of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
limit New limit in bytes.
Returns:
0 on success or a negative error code.

Definition at line 295 of file netem.c.

References TC_CAST.

int rtnl_netem_get_limit ( struct rtnl_qdisc *  qdisc  ) 

Get limit of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Limit in bytes or a negative error code.

Definition at line 311 of file netem.c.

References TC_CAST.

void rtnl_netem_set_gap ( struct rtnl_qdisc *  qdisc,
int  gap 
)

Set re-ordering gap of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
gap New gap in number of packets.
Returns:
0 on success or a negative error code.

Definition at line 337 of file netem.c.

References TC_CAST.

int rtnl_netem_get_gap ( struct rtnl_qdisc *  qdisc  ) 

Get re-ordering gap of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Re-ordering gap in packets or a negative error code.

Definition at line 353 of file netem.c.

References TC_CAST.

void rtnl_netem_set_reorder_probability ( struct rtnl_qdisc *  qdisc,
int  prob 
)

Set re-ordering probability of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
prob New re-ordering probability.
Returns:
0 on success or a negative error code.

Definition at line 372 of file netem.c.

References TC_CAST.

int rtnl_netem_get_reorder_probability ( struct rtnl_qdisc *  qdisc  ) 

Get re-ordering probability of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Re-ordering probability or a negative error code.

Definition at line 388 of file netem.c.

References TC_CAST.

void rtnl_netem_set_reorder_correlation ( struct rtnl_qdisc *  qdisc,
int  prob 
)

Set re-order correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
prob New re-ordering correlation probability.
Returns:
0 on success or a negative error code.

Definition at line 407 of file netem.c.

References TC_CAST.

int rtnl_netem_get_reorder_correlation ( struct rtnl_qdisc *  qdisc  ) 

Get re-ordering correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Re-ordering correlation probability or a negative error code.

Definition at line 423 of file netem.c.

References TC_CAST.

void rtnl_netem_set_corruption_probability ( struct rtnl_qdisc *  qdisc,
int  prob 
)

Set corruption probability of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
prob New corruption probability.
Returns:
0 on success or a negative error code.

Definition at line 449 of file netem.c.

References TC_CAST.

int rtnl_netem_get_corruption_probability ( struct rtnl_qdisc *  qdisc  ) 

Get corruption probability of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Corruption probability or a negative error code.

Definition at line 465 of file netem.c.

References TC_CAST.

void rtnl_netem_set_corruption_correlation ( struct rtnl_qdisc *  qdisc,
int  prob 
)

Set corruption correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
prob New corruption correlation probability.
Returns:
0 on success or a negative error code.

Definition at line 484 of file netem.c.

References TC_CAST.

int rtnl_netem_get_corruption_correlation ( struct rtnl_qdisc *  qdisc  ) 

Get corruption correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Corruption correlation probability or a negative error code.

Definition at line 500 of file netem.c.

References TC_CAST.

void rtnl_netem_set_loss ( struct rtnl_qdisc *  qdisc,
int  prob 
)

Set packet loss probability of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
prob New packet loss probability.
Returns:
0 on success or a negative error code.

Definition at line 526 of file netem.c.

References TC_CAST.

int rtnl_netem_get_loss ( struct rtnl_qdisc *  qdisc  ) 

Get packet loss probability of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Packet loss probability or a negative error code.

Definition at line 542 of file netem.c.

References TC_CAST.

void rtnl_netem_set_loss_correlation ( struct rtnl_qdisc *  qdisc,
int  prob 
)

Set packet loss correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
prob New packet loss correlation.
Returns:
0 on success or a negative error code.

Definition at line 561 of file netem.c.

References TC_CAST.

int rtnl_netem_get_loss_correlation ( struct rtnl_qdisc *  qdisc  ) 

Get packet loss correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Packet loss correlation probability or a negative error code.

Definition at line 577 of file netem.c.

References TC_CAST.

void rtnl_netem_set_duplicate ( struct rtnl_qdisc *  qdisc,
int  prob 
)

Set packet duplication probability of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
prob New packet duplication probability.
Returns:
0 on success or a negative error code.

Definition at line 603 of file netem.c.

References TC_CAST.

int rtnl_netem_get_duplicate ( struct rtnl_qdisc *  qdisc  ) 

Get packet duplication probability of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Packet duplication probability or a negative error code.

Definition at line 619 of file netem.c.

References TC_CAST.

void rtnl_netem_set_duplicate_correlation ( struct rtnl_qdisc *  qdisc,
int  prob 
)

Set packet duplication correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
prob New packet duplication correlation probability.
Returns:
0 on sucess or a negative error code.

Definition at line 638 of file netem.c.

References TC_CAST.

int rtnl_netem_get_duplicate_correlation ( struct rtnl_qdisc *  qdisc  ) 

Get packet duplication correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Packet duplication correlation probability or a negative error code.

Definition at line 654 of file netem.c.

References TC_CAST.

void rtnl_netem_set_delay ( struct rtnl_qdisc *  qdisc,
int  delay 
)

Set packet delay of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
delay New packet delay in micro seconds.
Returns:
0 on success or a negative error code.

Definition at line 680 of file netem.c.

References nl_us2ticks(), and TC_CAST.

Here is the call graph for this function:

int rtnl_netem_get_delay ( struct rtnl_qdisc *  qdisc  ) 

Get packet delay of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Packet delay in micro seconds or a negative error code.

Definition at line 696 of file netem.c.

References nl_ticks2us(), and TC_CAST.

Here is the call graph for this function:

void rtnl_netem_set_jitter ( struct rtnl_qdisc *  qdisc,
int  jitter 
)

Set packet delay jitter of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
jitter New packet delay jitter in micro seconds.
Returns:
0 on success or a negative error code.

Definition at line 715 of file netem.c.

References nl_us2ticks(), and TC_CAST.

Here is the call graph for this function:

int rtnl_netem_get_jitter ( struct rtnl_qdisc *  qdisc  ) 

Get packet delay jitter of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Packet delay jitter in micro seconds or a negative error code.

Definition at line 731 of file netem.c.

References nl_ticks2us(), and TC_CAST.

Here is the call graph for this function:

void rtnl_netem_set_delay_correlation ( struct rtnl_qdisc *  qdisc,
int  prob 
)

Set packet delay correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc to be modified.
prob New packet delay correlation probability.

Definition at line 749 of file netem.c.

References TC_CAST.

int rtnl_netem_get_delay_correlation ( struct rtnl_qdisc *  qdisc  ) 

Get packet delay correlation probability of netem qdisc.

Parameters:
qdisc Netem qdisc.
Returns:
Packet delay correlation probability or a negative error code.

Definition at line 765 of file netem.c.

References TC_CAST.

int rtnl_netem_get_delay_distribution_size ( struct rtnl_qdisc *  qdisc  ) 

Get the size of the distribution table.

Parameters:
qdisc Netem qdisc.
Returns:
Distribution table size or a negative error code.

Definition at line 783 of file netem.c.

References TC_CAST.

int rtnl_netem_get_delay_distribution ( struct rtnl_qdisc *  qdisc,
int16_t **  dist_ptr 
)

Get a pointer to the distribution table.

Parameters:
qdisc Netem qdisc.
dist_ptr The pointer to set.
Returns:
Negative error code on failure or 0 on success.

Definition at line 802 of file netem.c.

References TC_CAST.

int rtnl_netem_set_delay_distribution ( struct rtnl_qdisc *  qdisc,
const char *  dist_type 
)

Set the delay distribution.

Latency/jitter must be set before applying.

Parameters:
qdisc Netem qdisc.
dist_type The name of the distribution (type, file, path/file).
Returns:
0 on success, error code on failure.

Definition at line 822 of file netem.c.

References TC_CAST.