enhance: add configuration items to adjust the scheduling parameters of the main loop
This commit is contained in:
@@ -10,12 +10,29 @@ extern "C"
|
||||
#include "ip_reassembly.h"
|
||||
#include "session_manager.h"
|
||||
|
||||
struct schedule_options
|
||||
{
|
||||
// Note: free_expired_session_interval determines the precision of session_manager timeout
|
||||
uint64_t free_expired_session_interval; // range: [1, 60000] (ms)
|
||||
uint64_t free_expired_session_batch; // range: [1, 60000]
|
||||
|
||||
// Note: free_expired_ip_frag_interval determines the precision of ip_reassembly timeout
|
||||
uint64_t free_expired_ip_frag_interval; // range: [1, 60000] (ms)
|
||||
uint64_t free_expired_ip_frag_batch; // range: [1, 60000]
|
||||
|
||||
uint64_t merge_stat_interval; // range: [1, 60000] (ms)
|
||||
uint64_t output_stat_interval; // range: [1, 60000] (ms)
|
||||
|
||||
uint64_t packet_io_yield_interval; // range: [1, 60000] (ms)
|
||||
};
|
||||
|
||||
struct stellar_config
|
||||
{
|
||||
struct packet_io_options pkt_io_opts;
|
||||
struct id_generator_options id_gen_opts;
|
||||
struct ip_reassembly_options ip_reass_opts;
|
||||
struct session_manager_options sess_mgr_opts;
|
||||
struct schedule_options sched_opts;
|
||||
};
|
||||
|
||||
int stellar_config_load(struct stellar_config *config, const char *file);
|
||||
|
||||
Reference in New Issue
Block a user