FD.io VPP  v18.01.2-1-g9b554f3
Vector Packet Processing
fa_node.h File Reference
+ Include dependency graph for fa_node.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

union  fa_packet_info_t
 
union  fa_session_l4_key_t
 
union  fa_5tuple_t
 
struct  fa_session_t
 
struct  fa_full_session_id_t
 
struct  acl_fa_per_worker_data_t
 

Macros

#define TCP_FLAG_FIN   0x01
 
#define TCP_FLAG_SYN   0x02
 
#define TCP_FLAG_RST   0x04
 
#define TCP_FLAG_PUSH   0x08
 
#define TCP_FLAG_ACK   0x10
 
#define TCP_FLAG_URG   0x20
 
#define TCP_FLAG_ECE   0x40
 
#define TCP_FLAG_CWR   0x80
 
#define TCP_FLAGS_RSTFINACKSYN   (TCP_FLAG_RST + TCP_FLAG_FIN + TCP_FLAG_SYN + TCP_FLAG_ACK)
 
#define TCP_FLAGS_ACKSYN   (TCP_FLAG_SYN + TCP_FLAG_ACK)
 
#define ACL_FA_CONN_TABLE_DEFAULT_HASH_NUM_BUCKETS   (64 * 1024)
 
#define ACL_FA_CONN_TABLE_DEFAULT_HASH_MEMORY_SIZE   (1<<30)
 
#define ACL_FA_CONN_TABLE_DEFAULT_MAX_ENTRIES   1000000
 
#define CT_ASSERT_EQUAL(name, x, y)   typedef int assert_ ## name ## _compile_time_assertion_failed[((x) == (y))-1]
 

Enumerations

enum  acl_fa_next_t { ACL_FA_ERROR_DROP, ACL_FA_N_NEXT }
 
enum  { ACL_FA_CLEANER_RESCHEDULE = 1, ACL_FA_CLEANER_DELETE_BY_SW_IF_INDEX }
 

Functions

 CT_ASSERT_EQUAL (fa_l3_key_size_is_40, offsetof(fa_5tuple_t, pkt), offsetof(clib_bihash_kv_40_8_t, value))
 
 CT_ASSERT_EQUAL (fa_l4_key_t_is_8, sizeof(fa_session_l4_key_t), sizeof(u64))
 
 CT_ASSERT_EQUAL (fa_packet_info_t_is_8, sizeof(fa_packet_info_t), sizeof(u64))
 
 CT_ASSERT_EQUAL (fa_l3_kv_size_is_48, sizeof(fa_5tuple_t), sizeof(clib_bihash_kv_40_8_t))
 
 CT_ASSERT_EQUAL (fa_session_t_size_is_128, sizeof(fa_session_t), 128)
 
 CT_ASSERT_EQUAL (fa_full_session_id_size_is_64, sizeof(fa_full_session_id_t), sizeof(u64))
 
void acl_fa_enable_disable (u32 sw_if_index, int is_input, int enable_disable)
 
void show_fa_sessions_hash (vlib_main_t *vm, u32 verbose)
 
u8format_acl_plugin_5tuple (u8 *s, va_list *args)
 

Variables

enum { ... }  acl_fa_cleaner_process_event_e
 

Macro Definition Documentation

#define ACL_FA_CONN_TABLE_DEFAULT_HASH_MEMORY_SIZE   (1<<30)

Definition at line 19 of file fa_node.h.

#define ACL_FA_CONN_TABLE_DEFAULT_HASH_NUM_BUCKETS   (64 * 1024)

Definition at line 18 of file fa_node.h.

#define ACL_FA_CONN_TABLE_DEFAULT_MAX_ENTRIES   1000000

Definition at line 20 of file fa_node.h.

#define CT_ASSERT_EQUAL (   name,
  x,
  y 
)    typedef int assert_ ## name ## _compile_time_assertion_failed[((x) == (y))-1]

Definition at line 93 of file fa_node.h.

#define TCP_FLAG_ACK   0x10

Definition at line 11 of file fa_node.h.

#define TCP_FLAG_CWR   0x80

Definition at line 14 of file fa_node.h.

#define TCP_FLAG_ECE   0x40

Definition at line 13 of file fa_node.h.

#define TCP_FLAG_FIN   0x01

Definition at line 7 of file fa_node.h.

#define TCP_FLAG_PUSH   0x08

Definition at line 10 of file fa_node.h.

#define TCP_FLAG_RST   0x04

Definition at line 9 of file fa_node.h.

#define TCP_FLAG_SYN   0x02

Definition at line 8 of file fa_node.h.

#define TCP_FLAG_URG   0x20

Definition at line 12 of file fa_node.h.

#define TCP_FLAGS_ACKSYN   (TCP_FLAG_SYN + TCP_FLAG_ACK)

Definition at line 16 of file fa_node.h.

#define TCP_FLAGS_RSTFINACKSYN   (TCP_FLAG_RST + TCP_FLAG_FIN + TCP_FLAG_SYN + TCP_FLAG_ACK)

Definition at line 15 of file fa_node.h.

Enumeration Type Documentation

anonymous enum
Enumerator
ACL_FA_CLEANER_RESCHEDULE 
ACL_FA_CLEANER_DELETE_BY_SW_IF_INDEX 

Definition at line 163 of file fa_node.h.

Enumerator
ACL_FA_ERROR_DROP 
ACL_FA_N_NEXT 

Definition at line 157 of file fa_node.h.

Function Documentation

void acl_fa_enable_disable ( u32  sw_if_index,
int  is_input,
int  enable_disable 
)

Definition at line 1665 of file fa_node.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

CT_ASSERT_EQUAL ( fa_l3_key_size_is_40  ,
offsetof(fa_5tuple_t, pkt)  ,
offsetof(clib_bihash_kv_40_8_t, value)   
)
CT_ASSERT_EQUAL ( fa_l4_key_t_is_8  ,
sizeof(fa_session_l4_key_t ,
sizeof(u64  
)
CT_ASSERT_EQUAL ( fa_packet_info_t_is_8  ,
sizeof(fa_packet_info_t ,
sizeof(u64  
)
CT_ASSERT_EQUAL ( fa_l3_kv_size_is_48  ,
sizeof(fa_5tuple_t ,
sizeof(clib_bihash_kv_40_8_t  
)
CT_ASSERT_EQUAL ( fa_session_t_size_is_128  ,
sizeof(fa_session_t ,
128   
)
CT_ASSERT_EQUAL ( fa_full_session_id_size_is_64  ,
sizeof(fa_full_session_id_t ,
sizeof(u64  
)
u8* format_acl_plugin_5tuple ( u8 s,
va_list *  args 
)

Definition at line 62 of file fa_node.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void show_fa_sessions_hash ( vlib_main_t vm,
u32  verbose 
)

Definition at line 1720 of file fa_node.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

enum { ... } acl_fa_cleaner_process_event_e