Commit Graph

96 Commits

Author SHA1 Message Date
luwenpeng
d57c81697f bugfix: call duplicated packet filter too many times 2024-04-17 17:53:42 +08:00
luwenpeng
3771b68873 Add API support thread cron task 2024-04-17 11:44:38 +08:00
luwenpeng
f5f09e5e23 Update timeout and timestamp
* Timeout using CLOCK_MONOTONIC
    * Session start/last timestamps use CLOCK_REALTIME
    * Session ID generator uses CLOCK_REALTIME
2024-04-16 19:19:00 +08:00
luwenpeng
d878849c3a Stellar output statistics 2024-04-16 14:13:42 +08:00
luwenpeng
17f5d338de Add packet utils to packet.h 2024-04-14 13:14:48 +08:00
luwenpeng
84541c40e2 Refactor main loop 2024-04-11 16:33:35 +08:00
luwenpeng
cfbad63021 Duplicated packet filter supports IPv4-Based TCP / UDP packet (IPv6 is not supported, because IPv6 does not have an IPid and cannot distinguish between retransmissions and duplicates) 2024-04-11 11:29:01 +08:00
luwenpeng
621a4cf292 Refactor Packet I/O 2024-04-11 10:55:06 +08:00
luwenpeng
24e109e34f Export tuple.h / packet.h / session.h to the include directory 2024-04-10 15:37:42 +08:00
luwenpeng
a5a133bf91 Modify the stat of session 2024-04-09 17:27:49 +08:00
luwenpeng
3b00acab81 Modify the stat of session manager 2024-04-09 10:36:39 +08:00
luwenpeng
daff1ecbc7 When tcp reassembly is turned off, all tcp segments are considered in order 2024-04-08 12:10:25 +08:00
luwenpeng
c8beafe081 Modify the configuration items of evicted_session_filter && duplicated_packet_filter 2024-04-08 11:28:45 +08:00
luwenpeng
151b6f8f1d Add TCP reassembly metrics on session 2024-04-03 19:51:44 +08:00
luwenpeng
e8e60cee6d Refactor TCP reassembly, the session knows where the TCP segment comes from: raw packet or tcp segment queue 2024-04-03 15:45:08 +08:00
luwenpeng
a509f0ce3b Update API of manipulation session 2024-04-01 17:15:19 +08:00
luwenpeng
772860c1be Update session timer 2024-03-29 19:49:01 +08:00
luwenpeng
8e527a0f4c Replace session queue with kernel list 2024-03-29 17:45:41 +08:00
luwenpeng
6e422ecb8d Update session timeouts 2024-03-29 16:32:16 +08:00
luwenpeng
814a0d739f Add linux kernel interval tree 2024-03-27 17:16:59 +08:00
luwenpeng
eb281ab789 session manager support tcp reassembly 2024-03-26 15:09:03 +08:00
luwenpeng
5b92d6d8de Add tcp reassembly test case 2024-03-25 17:30:48 +08:00
luwenpeng
2ad811f68d Add tcp reassembly 2024-03-21 19:27:41 +08:00
luwenpeng
36b9a8282a Add interval tree 2024-03-21 10:06:11 +08:00
luwenpeng
1cdbb7c2a4 Add session state 'discard' 2024-03-15 17:02:12 +08:00
luwenpeng
5b8d5610a2 rename ip_reassembly args name 'mgr' -> 'assembler' 2024-03-15 09:59:33 +08:00
luwenpeng
ce00122557 Refactor the session manager using session transformation 2D array & Update test case 2024-03-14 18:03:34 +08:00
luwenpeng
639614622b update session_manager_stat 2024-03-11 15:04:18 +08:00
luwenpeng
512dfddd03 reactor packet I/O & duplicated packet filter & evicted session filter 2024-03-10 19:07:26 +08:00
luwenpeng
ee35a26a9d update stellar thread main loop 2024-03-08 18:10:38 +08:00
luwenpeng
734f6a5135 rename config -> options 2024-03-08 14:51:21 +08:00
luwenpeng
d0914483bb rename counter -> stat 2024-03-08 14:25:01 +08:00
luwenpeng
c945931620 rename xxx_create() / xxx_destory() -> xxx_new() / xxx_free() 2024-03-08 14:20:36 +08:00
luwenpeng
9d562ffee6 rename ip_reassemble -> ip_reassembly 2024-03-08 13:55:17 +08:00
luwenpeng
d7370e0e19 rename xxx_tostring() -> xxx_to_str() 2024-03-08 13:43:03 +08:00
luwenpeng
31c9303a93 bugfix: reasion -> reason 2024-03-08 13:33:49 +08:00
luwenpeng
62c70d0d67 packet IO dumpfile mode use lock free queue 2024-02-28 19:43:07 +08:00
luwenpeng
7952ae7283 Add packet IO module
* support marsio
    * support dumpfile ( 1 thread read dumpfile & N thread handle packet)
2024-02-28 16:31:26 +08:00
luwenpeng
2e748e0821 add IPv4 & IPv6 frag reassemble test case 2024-02-26 16:21:25 +08:00
luwenpeng
5cd0571b4d support IPv4 & IPv6 frag reassemble 2024-02-22 18:52:04 +08:00
luwenpeng
5e5ac458f2 update IPv6 utils 2024-02-21 15:06:48 +08:00
luwenpeng
bd3735d3c4 update IPv4 utils 2024-02-21 14:34:34 +08:00
luwenpeng
03f428681e update TCP utils 2024-02-21 11:49:20 +08:00
luwenpeng
c37f9869a6 update UDP utils 2024-02-21 11:14:21 +08:00
luwenpeng
c0514964f9 Add ip_reassemble & ip_fragment function define 2024-02-04 17:40:32 +08:00
luwenpeng
3bbb341280 bugfix: ipv4_hdr_get_frag_offset 2024-02-01 15:46:43 +08:00
luwenpeng
97ef872d9a add session id generator 2024-01-31 18:55:06 +08:00
luwenpeng
2766b3cfeb bugfix: disable packet debug log 2024-01-30 18:15:54 +08:00
luwenpeng
6d1f352bc9 receive packets from mrzcpd; log output supports stderr or file 2024-01-30 18:09:12 +08:00
luwenpeng
7d7cc8e90c load config from toml file 2024-01-29 15:29:10 +08:00