FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
lisp_gpe_fwd_entry.h File Reference

LISP-GPE definitions. More...

+ Include dependency graph for lisp_gpe_fwd_entry.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  lisp_fwd_path_t_
 A path on which to forward lisp traffic. More...
 
struct  lisp_gpe_fwd_entry_key_t_
 LISP-GPE fwd entry key. More...
 
struct  lisp_gpe_fwd_entry_t_
 A LISP Forwarding Entry. More...
 

Typedefs

typedef struct lisp_fwd_path_t_ lisp_fwd_path_t
 A path on which to forward lisp traffic. More...
 
typedef enum lisp_gpe_fwd_entry_type_t_ lisp_gpe_fwd_entry_type_t
 A Forwarding entry can be 'normal' or 'negative' Negative implies we deliberately want to add a FIB entry for an EID that results in 'special' behaviour determined by an 'action'. More...
 
typedef struct lisp_gpe_fwd_entry_key_t_ lisp_gpe_fwd_entry_key_t
 LISP-GPE fwd entry key. More...
 
typedef struct lisp_gpe_fwd_entry_t_ lisp_gpe_fwd_entry_t
 A LISP Forwarding Entry. More...
 

Enumerations

enum  lisp_gpe_fwd_entry_type_t_ { LISP_GPE_FWD_ENTRY_TYPE_NORMAL, LISP_GPE_FWD_ENTRY_TYPE_NEGATIVE }
 A Forwarding entry can be 'normal' or 'negative' Negative implies we deliberately want to add a FIB entry for an EID that results in 'special' behaviour determined by an 'action'. More...
 

Functions

int vnet_lisp_gpe_add_del_fwd_entry (vnet_lisp_gpe_add_del_fwd_entry_args_t *a, u32 *hw_if_indexp)
 Forwarding entry create/remove dispatcher. More...
 
void vnet_lisp_gpe_fwd_entry_flush (void)
 Flush all the forwrding entries. More...
 
u32 lisp_l2_fib_lookup (lisp_gpe_main_t *lgm, u16 bd_index, u8 src_mac[6], u8 dst_mac[6])
 Lookup L2 SD FIB entry. More...
 
const dpo_id_tlisp_nsh_fib_lookup (lisp_gpe_main_t *lgm, u32 spi_si)
 Lookup NSH SD FIB entry. More...
 
void vnet_lisp_gpe_del_fwd_counters (vnet_lisp_gpe_add_del_fwd_entry_args_t *a, u32 fwd_entry_index)
 
void vnet_lisp_gpe_add_fwd_counters (vnet_lisp_gpe_add_del_fwd_entry_args_t *a, u32 fwd_entry_index)
 
u32vnet_lisp_gpe_get_fwd_entry_vnis (void)
 
int vnet_lisp_gpe_get_fwd_stats (vnet_lisp_gpe_add_del_fwd_entry_args_t *a, vlib_counter_t *c)
 

Detailed Description

LISP-GPE definitions.

Definition in file lisp_gpe_fwd_entry.h.

Typedef Documentation

◆ lisp_fwd_path_t

A path on which to forward lisp traffic.

◆ lisp_gpe_fwd_entry_key_t

LISP-GPE fwd entry key.

◆ lisp_gpe_fwd_entry_t

A LISP Forwarding Entry.

A forwarding entry is from a locai EID to a remote EID over a set of rloc pairs

◆ lisp_gpe_fwd_entry_type_t

A Forwarding entry can be 'normal' or 'negative' Negative implies we deliberately want to add a FIB entry for an EID that results in 'special' behaviour determined by an 'action'.

@normal means send it down some tunnels.

Enumeration Type Documentation

◆ lisp_gpe_fwd_entry_type_t_

A Forwarding entry can be 'normal' or 'negative' Negative implies we deliberately want to add a FIB entry for an EID that results in 'special' behaviour determined by an 'action'.

@normal means send it down some tunnels.

Enumerator
LISP_GPE_FWD_ENTRY_TYPE_NORMAL 
LISP_GPE_FWD_ENTRY_TYPE_NEGATIVE 

Definition at line 53 of file lisp_gpe_fwd_entry.h.

Function Documentation

◆ lisp_l2_fib_lookup()

u32 lisp_l2_fib_lookup ( lisp_gpe_main_t lgm,
u16  bd_index,
u8  src_mac[6],
u8  dst_mac[6] 
)

Lookup L2 SD FIB entry.

Does a vni + dest + source lookup in the L2 LISP FIB. If the lookup fails it tries a second time with source set to 0 (i.e., a simple dest lookup).

Parameters
[in]lgmReference to lisp_gpe_main_t.
[in]bd_indexBridge domain index.
[in]src_macSource mac address.
[in]dst_macDestination mac address.
Returns
index of mapping matching the lookup key.

Definition at line 644 of file lisp_gpe_fwd_entry.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lisp_nsh_fib_lookup()

const dpo_id_t* lisp_nsh_fib_lookup ( lisp_gpe_main_t lgm,
u32  spi_si_net_order 
)

Lookup NSH SD FIB entry.

Does an SPI+SI lookup in the NSH LISP FIB.

Parameters
[in]lgmReference to lisp_gpe_main_t.
[in]spi_siSPI + SI.
Returns
next node index.

Definition at line 914 of file lisp_gpe_fwd_entry.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vnet_lisp_gpe_add_del_fwd_entry()

int vnet_lisp_gpe_add_del_fwd_entry ( vnet_lisp_gpe_add_del_fwd_entry_args_t a,
u32 hw_if_indexp 
)

Forwarding entry create/remove dispatcher.

Calls l2 or l3 forwarding entry add/del function based on input data.

Parameters
[in]aForwarding entry parameters.
[out]hw_if_indexpNOT USED
Returns
0 on success.

Definition at line 1248 of file lisp_gpe_fwd_entry.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vnet_lisp_gpe_add_fwd_counters()

void vnet_lisp_gpe_add_fwd_counters ( vnet_lisp_gpe_add_del_fwd_entry_args_t a,
u32  fwd_entry_index 
)

Definition at line 468 of file lisp_gpe_fwd_entry.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vnet_lisp_gpe_del_fwd_counters()

void vnet_lisp_gpe_del_fwd_counters ( vnet_lisp_gpe_add_del_fwd_entry_args_t a,
u32  fwd_entry_index 
)

Definition at line 1327 of file lisp_gpe_fwd_entry.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vnet_lisp_gpe_fwd_entry_flush()

void vnet_lisp_gpe_fwd_entry_flush ( void  )

Flush all the forwrding entries.

Definition at line 1354 of file lisp_gpe_fwd_entry.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vnet_lisp_gpe_get_fwd_entry_vnis()

u32* vnet_lisp_gpe_get_fwd_entry_vnis ( void  )

Definition at line 1518 of file lisp_gpe_fwd_entry.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vnet_lisp_gpe_get_fwd_stats()

int vnet_lisp_gpe_get_fwd_stats ( vnet_lisp_gpe_add_del_fwd_entry_args_t a,
vlib_counter_t c 
)

Definition at line 1563 of file lisp_gpe_fwd_entry.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function: