FD.io VPP  v18.04-17-g3a0d853
Vector Packet Processing
lisp_gpe_sub_interface.h File Reference

LISP sub-interfaces. More...

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

Go to the source code of this file.

Data Structures

struct  lisp_gpe_sub_interface_key_t_
 A Key for lookup in the L£ sub-interface DB. More...
 
struct  lisp_gpe_sub_interface_t_
 A LISP L3 sub-interface. More...
 

Typedefs

typedef struct lisp_gpe_sub_interface_key_t_ lisp_gpe_sub_interface_key_t
 A Key for lookup in the L£ sub-interface DB. More...
 
typedef struct lisp_gpe_sub_interface_t_ lisp_gpe_sub_interface_t
 A LISP L3 sub-interface. More...
 

Functions

index_t lisp_gpe_sub_interface_find_or_create_and_lock (const ip_address_t *lrloc, u32 eid_table_id, u32 vni)
 
u8format_lisp_gpe_sub_interface (u8 *s, va_list *ap)
 
void lisp_gpe_sub_interface_unlock (index_t itf)
 
const lisp_gpe_sub_interface_tlisp_gpe_sub_interface_get (index_t itf)
 
static u32 lisp_gpe_sub_interface_find_ip6 (const ip6_address_t *addr, u32 vni)
 Get a VNET L3 interface matching the local-RLOC and VNI Called from the data-plane. More...
 
static index_t lisp_gpe_sub_interface_find_ip4 (const ip4_address_t *addr, u32 vni)
 Get a VNET L3 interface matching the local-RLOC and VNI Called from the data-plane. More...
 

Variables

uwordlisp_gpe_sub_interfaces_sw_if_index
 A DB of all L3 sub-interfaces. More...
 

Detailed Description

LISP sub-interfaces.

Definition in file lisp_gpe_sub_interface.h.

Typedef Documentation

A Key for lookup in the L£ sub-interface DB.

A LISP L3 sub-interface.

A LISP sub-interface is a multi-access interface, whose local address is a single local-RLOC. Adjacencies that form on this sub-interface, represent remote RLOCs. This is analogous to an ethernet interface. As with all interface types it can only be present in one VRF, hence a LISP sub-interface is per-local-rloc and per-VNI.

Function Documentation

u8* format_lisp_gpe_sub_interface ( u8 s,
va_list *  ap 
)

Definition at line 221 of file lisp_gpe_sub_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static index_t lisp_gpe_sub_interface_find_ip4 ( const ip4_address_t addr,
u32  vni 
)
inlinestatic

Get a VNET L3 interface matching the local-RLOC and VNI Called from the data-plane.

Definition at line 132 of file lisp_gpe_sub_interface.h.

static u32 lisp_gpe_sub_interface_find_ip6 ( const ip6_address_t addr,
u32  vni 
)
inlinestatic

Get a VNET L3 interface matching the local-RLOC and VNI Called from the data-plane.

Definition at line 108 of file lisp_gpe_sub_interface.h.

index_t lisp_gpe_sub_interface_find_or_create_and_lock ( const ip_address_t *  lrloc,
u32  eid_table_id,
u32  vni 
)

Definition at line 122 of file lisp_gpe_sub_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const lisp_gpe_sub_interface_t* lisp_gpe_sub_interface_get ( index_t  itf)

Definition at line 215 of file lisp_gpe_sub_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void lisp_gpe_sub_interface_unlock ( index_t  itf)

Definition at line 189 of file lisp_gpe_sub_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

uword* lisp_gpe_sub_interfaces_sw_if_index

A DB of all L3 sub-interfaces.

The key is:{VNI,l-RLOC}

A DB of all L3 sub-interfaces.

The key is:{VNI,l-RLOC} Used in the data-plane for interface lookup on decap.

Definition at line 39 of file lisp_gpe_sub_interface.c.