Load generation algorithms.
More...
#include <freeradius-devel/io/load.h>
Go to the source code of this file.
|
| fr_load_t * | fr_load_generator_create (TALLOC_CTX *ctx, fr_event_list_t *el, fr_load_config_t *config, fr_load_callback_t callback, fr_load_done_callback_t done, void *uctx) |
| |
| fr_load_reply_t | fr_load_generator_have_reply (fr_load_t *l, fr_time_t request_time) |
| | Tell the load generator that we have a reply to a packet we sent.
|
| |
| static void | fr_load_generator_send (fr_load_t *l, fr_time_t now, int count) |
| | Send one or more packets.
|
| |
| int | fr_load_generator_start (fr_load_t *l) |
| | Start the load generator.
|
| |
| fr_load_stats_t const * | fr_load_generator_stats (fr_load_t const *l) |
| |
| size_t | fr_load_generator_stats_sprint (fr_load_t *l, fr_time_t now, char *buffer, size_t buflen) |
| | Print load generator statistics in CVS format.
|
| |
| int | fr_load_generator_stop (fr_load_t *l) |
| | Stop the load generation through the simple expedient of deleting the timer associated with it.
|
| |
| static void | load_drain (fr_load_t *l, fr_time_t now) |
| | Stop sending new packets, and wait for outstanding replies.
|
| |
| static void | load_timer (fr_timer_list_t *tl, fr_time_t now, void *uctx) |
| |
Load generation algorithms.
- Id
- ed962a7e3768f414686f5b0d854eb8380b5485cf
- Copyright
- 2019 Network RADIUS SAS (legal.nosp@m.@net.nosp@m.workr.nosp@m.adiu.nosp@m.s.com)
Definition in file load.c.
◆ fr_load_s
◆ DIFF
Value: (\
fr_time_delta_lt(_rtt, _t) ? \
fr_time_delta_sub(_t, _rtt) : \
)
static fr_time_delta_t fr_time_delta_sub(fr_time_delta_t a, fr_time_delta_t b)
Definition at line 40 of file load.c.
◆ IALPHA
◆ IBETA
◆ RTT
◆ RTTVAR
| #define RTTVAR |
( |
|
_rtt, |
|
|
|
_rttvar, |
|
|
|
_t |
|
) |
| |
Value:
), \
)
static fr_time_delta_t fr_time_delta_add(fr_time_delta_t a, fr_time_delta_t b)
#define fr_time_delta_wrap(_time)
static fr_time_delta_t fr_time_delta_mul(fr_time_delta_t a, int64_t b)
static fr_time_delta_t fr_time_delta_div(fr_time_delta_t a, fr_time_delta_t b)
Definition at line 47 of file load.c.
◆ fr_load_state_t
| Enumerator |
|---|
| FR_LOAD_STATE_INIT | |
| FR_LOAD_STATE_SENDING | |
| FR_LOAD_STATE_GATED | |
| FR_LOAD_STATE_DRAINING | |
Definition at line 58 of file load.c.
◆ fr_load_generator_create()
◆ fr_load_generator_have_reply()
Tell the load generator that we have a reply to a packet we sent.
Definition at line 324 of file load.c.
◆ fr_load_generator_send()
Send one or more packets.
Definition at line 115 of file load.c.
◆ fr_load_generator_start()
Start the load generator.
Definition at line 277 of file load.c.
◆ fr_load_generator_stats()
◆ fr_load_generator_stats_sprint()
Print load generator statistics in CVS format.
Definition at line 406 of file load.c.
◆ fr_load_generator_stop()
Stop the load generation through the simple expedient of deleting the timer associated with it.
Definition at line 312 of file load.c.
◆ load_drain()
Stop sending new packets, and wait for outstanding replies.
If every reply has already arrived then the test is complete right now, so run the "done" callback. Otherwise completion is signalled by fr_load_generator_have_reply() when the last reply comes in.
Definition at line 140 of file load.c.
◆ load_timer()