FD.io VPP  v17.07.01-10-g3be13f0
Vector Packet Processing
sticky_hash.c File Reference
+ Include dependency graph for sticky_hash.c:

Go to the source code of this file.

Data Structures

struct  sticky_hash_session_t
 
struct  sticky_hash_main_t
 
struct  sticky_hash_miss_trace_t
 

Macros

#define foreach_sticky_hash_miss_error   _(MISSES, "forward flow classify misses")
 

Enumerations

enum  sticky_hash_miss_next_t { STICKY_HASH_MISS_NEXT_IP4_INPUT, STICKY_HASH_MISS_N_NEXT }
 

Functions

static u8format_sticky_hash_miss_trace (u8 *s, va_list *args)
 
typedef CLIB_PACKED (struct{ethernet_header_t eh;ip4_header_t ip;})
 
static uword sticky_hash_miss_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
clib_error_tsticky_hash_miss_init (vlib_main_t *vm)
 
static int ip4_sticky_hash_enable_disable (sticky_hash_main_t *mp, u32 fwd_sw_if_index, u8 *fwd_mask, u32 rev_sw_if_index, u8 *rev_mask, u32 nbuckets, int enable_disable)
 
static clib_error_tip4_sticky_hash_init_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
u8format_sticky_hash_session (u8 *s, va_list *args)
 
static clib_error_tshow_ip4_sticky_hash_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 

Variables

 sticky_hash_miss_error_t
 
static char * sticky_hash_miss_error_strings []
 
vlib_node_registration_t sticky_hash_miss_node
 (constructor) VLIB_REGISTER_NODE (sticky_hash_miss_node) More...
 
static vlib_cli_command_t sticky_hash_init_command
 (constructor) VLIB_CLI_COMMAND (sticky_hash_init_command) More...
 
static vlib_cli_command_t show_sticky_hash_command
 (constructor) VLIB_CLI_COMMAND (show_sticky_hash_command) More...
 

Macro Definition Documentation

#define foreach_sticky_hash_miss_error   _(MISSES, "forward flow classify misses")

Enumeration Type Documentation

Enumerator
STICKY_HASH_MISS_NEXT_IP4_INPUT 
STICKY_HASH_MISS_N_NEXT 

Definition at line 116 of file sticky_hash.c.

Function Documentation

typedef CLIB_PACKED ( struct{ethernet_header_t eh;ip4_header_t ip;}  )

Definition at line 75 of file sticky_hash.c.

static u8* format_sticky_hash_miss_trace ( u8 s,
va_list *  args 
)
static

Definition at line 65 of file sticky_hash.c.

+ Here is the call graph for this function:

u8* format_sticky_hash_session ( u8 s,
va_list *  args 
)

Definition at line 455 of file sticky_hash.c.

+ Here is the call graph for this function:

static int ip4_sticky_hash_enable_disable ( sticky_hash_main_t mp,
u32  fwd_sw_if_index,
u8 fwd_mask,
u32  rev_sw_if_index,
u8 rev_mask,
u32  nbuckets,
int  enable_disable 
)
static

Definition at line 282 of file sticky_hash.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* ip4_sticky_hash_init_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 367 of file sticky_hash.c.

+ Here is the call graph for this function:

static clib_error_t* show_ip4_sticky_hash_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 505 of file sticky_hash.c.

+ Here is the call graph for this function:

clib_error_t* sticky_hash_miss_init ( vlib_main_t vm)

Definition at line 267 of file sticky_hash.c.

+ Here is the call graph for this function:

static uword sticky_hash_miss_node_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)
static

Definition at line 123 of file sticky_hash.c.

+ Here is the call graph for this function:

Variable Documentation

vlib_cli_command_t show_sticky_hash_command
static
Initial value:
= {
.path = "show sticky classify",
.short_help = "Display sticky classifier tables",
}
static clib_error_t * show_ip4_sticky_hash_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: sticky_hash.c:505

(constructor) VLIB_CLI_COMMAND (show_sticky_hash_command)

Definition at line 567 of file sticky_hash.c.

vlib_cli_command_t sticky_hash_init_command
static
Initial value:
= {
.path = "ip sticky classify",
.short_help = "ip sticky classify fwd <intfc> rev <intfc> "
"[nbuckets <nn>][disable]",
}
static clib_error_t * ip4_sticky_hash_init_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: sticky_hash.c:367

(constructor) VLIB_CLI_COMMAND (sticky_hash_init_command)

Definition at line 445 of file sticky_hash.c.

char* sticky_hash_miss_error_strings[]
static
Initial value:
= {
#define _(sym,string)
}
#define foreach_sticky_hash_miss_error

Definition at line 95 of file sticky_hash.c.

sticky_hash_miss_error_t

Definition at line 93 of file sticky_hash.c.

vlib_node_registration_t sticky_hash_miss_node
Initial value:
= {
.name = "sticky-hash-miss",
.vector_size = sizeof (u32),
.n_next_nodes = STICKY_HASH_MISS_N_NEXT,
.next_nodes = {
},
}
static u8 * format_sticky_hash_miss_trace(u8 *s, va_list *args)
Definition: sticky_hash.c:65
static char * sticky_hash_miss_error_strings[]
Definition: sticky_hash.c:95
#define ARRAY_LEN(x)
Definition: clib.h:59
unsigned int u32
Definition: types.h:88
static uword sticky_hash_miss_node_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: sticky_hash.c:123

(constructor) VLIB_REGISTER_NODE (sticky_hash_miss_node)

Definition at line 247 of file sticky_hash.c.