feature: consume all packets and free all sessions before exit

This commit is contained in:
luwenpeng
2024-08-27 16:19:20 +08:00
parent 11bf852c15
commit 79e70f7145
10 changed files with 103 additions and 96 deletions

View File

@@ -140,10 +140,10 @@ int main(int argc, char *argv[])
::testing::InitGoogleTest(&argc, argv);
struct stellar *st = stellar_new("./conf/stellar.toml", "./plugin/spec.toml", "./conf/log.toml");
stellar_run(st);
stellar_free(st);
if (result_json_path != NULL)
{
ret = RUN_ALL_TESTS();
}
stellar_free(st);
return ret;
}

View File

@@ -34,10 +34,10 @@ tcp_handshake_timeout = 50 # range: [1, 60000] (ms)
tcp_data_timeout = 50 # range: [1, 15999999000] (ms)
tcp_half_closed_timeout = 50 # range: [1, 604800000] (ms)
tcp_time_wait_timeout = 50 # range: [1, 600000] (ms)
tcp_discard_timeout = 10 # range: [1, 15999999000] (ms)
tcp_discard_timeout = 10 # range: [1, 15999999000] (ms)
tcp_unverified_rst_timeout = 50 # range: [1, 600000] (ms)
# UDP timeout
udp_data_timeout = 50 # range: [1, 15999999000] (ms)
udp_data_timeout = 50 # range: [1, 15999999000] (ms)
udp_discard_timeout = 50 # range: [1, 15999999000] (ms)
# duplicate packet filter
@@ -59,14 +59,15 @@ tcp_reassembly_max_segments = 256 # range: [2, 4096]
[schedule]
# Note: free_expired_session_interval determines the precision of session_manager timeout
free_expired_session_interval = 50 # range: [1, 60000] (ms)
free_expired_session_batch = 100 # range: [1, 60000]
free_expired_session_interval = 50 # range: [1, 60000] (ms)
free_expired_session_batch = 100 # range: [1, 60000]
froce_session_expire_before_exit = 0 # 1: force session to expire before exit, 0: wait for session to naturally expire before exit.
# Note: free_expired_ip_frag_interval determines the precision of ip_reassembly timeout
free_expired_ip_frag_interval = 50 # range: [1, 60000] (ms)
free_expired_ip_frag_batch = 100 # range: [1, 60000]
free_expired_ip_frag_batch = 100 # range: [1, 60000]
merge_stat_interval = 50 # range: [1, 60000] (ms)
merge_stat_interval = 50 # range: [1, 60000] (ms)
output_stat_interval = 10 # range: [1, 60000] (ms)
packet_io_yield_interval = 90 # range: [1, 60000] (ms)

View File

@@ -59,8 +59,9 @@ tcp_reassembly_max_segments = 128 # range: [2, 4096]
[schedule]
# Note: free_expired_session_interval determines the precision of session_manager timeout
free_expired_session_interval = 50 # range: [1, 60000] (ms)
free_expired_session_batch = 1000 # range: [1, 60000]
free_expired_session_interval = 50 # range: [1, 60000] (ms)
free_expired_session_batch = 1000 # range: [1, 60000]
froce_session_expire_before_exit = 0 # 1: force session to expire before exit, 0: wait for session to naturally expire before exit.
# Note: free_expired_ip_frag_interval determines the precision of ip_reassembly timeout
free_expired_ip_frag_interval = 50 # range: [1, 60000] (ms)