session table can search session by tuple6 or tuple4 or id

This commit is contained in:
luwenpeng
2024-04-24 11:39:15 +08:00
parent 74f0504d3d
commit 476c5bac56
5 changed files with 233 additions and 105 deletions

View File

@@ -39,7 +39,7 @@ struct tcp_half
*
* session memory usage = 128 * (50000 + 50000) * 1024 = 13107200000 bytes = 12.2 GB
*/
struct session // 1024 bytes
struct session
{
uint64_t id; // 8 bytes
uint64_t stats[MAX_DIRECTION][MAX_STAT]; // 480 bytes
@@ -49,7 +49,9 @@ struct session // 1024 bytes
struct list_head lru; // 16 bytes -- used for lru queue
struct list_head free; // 16 bytes -- used for free queue
struct list_head evicte; // 16 bytes -- used for evicte queue
UT_hash_handle hh; // 56 bytes -- used for hash table
UT_hash_handle hh1; // 56 bytes -- used for hash table (tuple6)
UT_hash_handle hh2; // 56 bytes -- used for hash table (tuple4)
UT_hash_handle hh3; // 56 bytes -- used for hash table (session id)
struct tuple6 tuple; // 56 bytes
char tuple_str[TUPLE6_STR_SIZE]; // 108 bytes
const struct packet *first_pkt[MAX_DIRECTION]; // 16 bytes