OMPUB-1508 For tunnel traffic, asymmetric traffic, and traffic matching the "no intercept" policy, only a session ID index flow table is created

This commit is contained in:
wangmenglan
2024-11-05 10:21:03 +08:00
parent d2b7d30e96
commit 02fae975ed
6 changed files with 175 additions and 31 deletions

View File

@@ -21,6 +21,7 @@ struct session_node
uint64_t session_id; /* first key */
struct tuple4 session_addr; /* second key */
uint8_t is_session_id_only_key;
void *val_data;
fn_free_cb *val_freecb;
@@ -39,7 +40,7 @@ uint64_t session_table_count(struct session_table *table);
// val_data : shallow copy (malloc by user, free by val_freecb)
// return 0 : suceess
// return -1 : key exists
int session_table_insert(struct session_table *table, uint64_t session_id, const struct tuple4 *session_addr, void *val_data, const fn_free_cb *val_freecb);
int session_table_insert(struct session_table *table, uint8_t is_session_id_only_key, uint64_t session_id, const struct tuple4 *session_addr, void *val_data, const fn_free_cb *val_freecb);
// return 0 : success
// return -1 : key not exists