luwenpeng
1f78881cbb
rename struct packet_layer to struct raw_layer
2024-06-14 10:58:40 +08:00
luwenpeng
01958b56c5
rename layer_type to layer_proto
2024-06-12 18:21:45 +08:00
luwenpeng
be9a68935b
Update the format of tuple to string output
2024-05-20 15:44:04 +08:00
luwenpeng
0e33a1b647
Resolve merge conflicts
2024-05-20 11:26:06 +08:00
luwenpeng
32ae4618ef
Add support for TCP port reuse (same tuple6 but different ISN) in session manager: evict old session and create new session
2024-05-16 19:21:12 +08:00
luwenpeng
fdc65067b2
stellar support monotonic time and real time
2024-05-16 10:13:43 +08:00
luwenpeng
7b20747c8f
Update session.h: support get tuple6 by session
2024-05-15 16:29:33 +08:00
luwenpeng
13001003e2
Refactor enum session_stat with improved naming conventions
2024-05-09 16:32:45 +08:00
luwenpeng
cc380d9271
rename session_direction to flow_direction
2024-05-09 14:57:12 +08:00
luwenpeng
c59f178769
Update stat of session manager
2024-04-30 17:03:36 +08:00
luwenpeng
74f0504d3d
Update Stellar export header and add stellar_get_current_thread_index() function
2024-04-23 14:38:58 +08:00
luwenpeng
5508454a1b
Optimize packet I/O and timeouts
...
- Introduce per-thread I/O statistics for packet I/O to reduce performance overhead.
- Implement packet_io_yield() for better thread management during I/O operations.
- Refactor time wheel management:
- Replace timeouts-based cron tasks with (now_ts - last_ts > timeout) for scheduled tasks.
- Update the time wheel every 5 ms for improved time management.
2024-04-18 14:37:03 +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
17f5d338de
Add packet utils to packet.h
2024-04-14 13:14:48 +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
c8beafe081
Modify the configuration items of evicted_session_filter && duplicated_packet_filter
2024-04-08 11:28:45 +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
6e422ecb8d
Update session timeouts
2024-03-29 16:32:16 +08:00
luwenpeng
eb281ab789
session manager support tcp reassembly
2024-03-26 15:09:03 +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
512dfddd03
reactor packet I/O & duplicated packet filter & evicted session filter
2024-03-10 19:07:26 +08:00
luwenpeng
734f6a5135
rename config -> options
2024-03-08 14:51:21 +08:00
luwenpeng
c945931620
rename xxx_create() / xxx_destory() -> xxx_new() / xxx_free()
2024-03-08 14:20:36 +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
5cd0571b4d
support IPv4 & IPv6 frag reassemble
2024-02-22 18:52:04 +08:00
luwenpeng
97ef872d9a
add session id generator
2024-01-31 18:55:06 +08:00
luwenpeng
6050d15e29
add test case: overload evict tcp (old/new) session
2024-01-26 14:13:54 +08:00
luwenpeng
2cef03eee2
session manager add tcp dupkt filter test case
2024-01-25 17:19:57 +08:00
luwenpeng
d3367fc86a
add timeout test case
...
tcp timeout init (SYN / SYNACK)
tcp timeout handshake
tcp timeout data
tcp timeout half closed (session opening / session active)
tcp timeout time wait
udp timeout data (session opening / session active)
2024-01-25 16:09:13 +08:00