FD.io VPP
v17.01.1-3-gc6833f8
Vector Packet Processing
|
Common utility functions for LISP-GPE interfaces. More...
Go to the source code of this file.
Data Structures | |
struct | lisp_gpe_tx_trace_t |
struct | l2_lisp_gpe_tx_trace_t |
Macros | |
#define | foreach_lisp_gpe_tx_next |
#define | is_v4_packet(_h) ((*(u8*) _h) & 0xF0) == 0x40 |
Enumerations | |
enum | lisp_gpe_tx_next_t { LISP_GPE_TX_N_NEXT } |
Variables | |
static uword | l2_arc_to_lb |
The VLIB node arc/edge from the interface's TX node, to the L2 load-balanceing node. More... | |
static vlib_cli_command_t | add_del_lisp_gpe_iface_command |
(constructor) VLIB_CLI_COMMAND (add_del_lisp_gpe_iface_command) More... | |
Common utility functions for LISP-GPE interfaces.
Definition in file interface.c.
#define foreach_lisp_gpe_tx_next |
Definition at line 44 of file interface.c.
#define is_v4_packet | ( | _h | ) | ((*(u8*) _h) & 0xF0) == 0x40 |
Definition at line 73 of file interface.c.
enum lisp_gpe_tx_next_t |
Enumerator | |
---|---|
LISP_GPE_TX_N_NEXT |
Definition at line 49 of file interface.c.
Definition at line 208 of file interface.c.
Definition at line 171 of file interface.c.
Definition at line 63 of file interface.c.
|
static |
LISP-GPE interface TX (encap) function for L2 overlays.
l2_lisp_gpe_interface_tx
The L2 LISP-GPE interface TX (encap) function.
Uses bridge domain index, source and destination ethernet addresses to lookup tunnel. If the tunnel is multihomed a flow has is used to determine the sub-tunnel and therefore the rewrite string to be used to encapsulate the packets.
[in] | vm | vlib_main_t corresponding to the current thread. |
[in] | node | vlib_node_runtime_t data for this node. |
[in] | frame | vlib_frame_t whose contents should be dispatched. |
Definition at line 236 of file interface.c.
|
static |
u32 lisp_gpe_add_l2_iface | ( | lisp_gpe_main_t * | lgm, |
u32 | vni, | ||
u32 | bd_id | ||
) |
Add/del LISP-GPE L2 interface.
Creates LISP-GPE interface, sets it in L2 mode in the appropriate bridge domain, sets egress arcs and enables it.
[in] | lgm | Reference to lisp_gpe_main_t. |
[in] | a | Parameters to create interface. |
Definition at line 543 of file interface.c.
u32 lisp_gpe_add_l3_iface | ( | lisp_gpe_main_t * | lgm, |
u32 | vni, | ||
u32 | table_id | ||
) |
Add/del LISP-GPE L3 interface.
Creates LISP-GPE interface, sets ingress arcs from lisp_gpeX_lookup, installs default routes that attract all traffic with no more specific routes to lgpe-ipx-lookup, set egress arcs to ipx-lookup, sets the interface in the right vrf and enables it.
[in] | lgm | Reference to lisp_gpe_main_t. |
[in] | a | Parameters to create interface. |
Definition at line 466 of file interface.c.
|
static |
Definition at line 310 of file interface.c.
void lisp_gpe_del_l2_iface | ( | lisp_gpe_main_t * | lgm, |
u32 | vni, | ||
u32 | bd_id | ||
) |
Add/del LISP-GPE L2 interface.
Add/del LISP-GPE interface.
Creates LISP-GPE interface, sets it in L2 mode in the appropriate bridge domain, sets egress arcs and enables it.
[in] | lgm | Reference to lisp_gpe_main_t. |
[in] | a | Parameters to create interface. |
Definition at line 600 of file interface.c.
void lisp_gpe_del_l3_iface | ( | lisp_gpe_main_t * | lgm, |
u32 | vni, | ||
u32 | table_id | ||
) |
Definition at line 506 of file interface.c.
Definition at line 395 of file interface.c.
|
static |
LISP-GPE interface TX (encap) function.
lisp_gpe_interface_tx
The LISP-GPE interface TX (encap) function.
Looks up the associated tunnel based on the adjacency hit in the SD FIB and if the tunnel is multihomed it uses the flow hash to determine sub-tunnel, and rewrite string, to be used to encapsulate the packet.
[in] | vm | vlib_main_t corresponding to the current thread. |
[in] | node | vlib_node_runtime_t data for this node. |
[in] | frame | vlib_frame_t whose contents should be dispatched. |
Definition at line 92 of file interface.c.
|
static |
Definition at line 368 of file interface.c.
|
static |
Definition at line 429 of file interface.c.
|
static |
Definition at line 411 of file interface.c.
VNET_DEVICE_CLASS | ( | lisp_gpe_device_class | ) |
VNET_DEVICE_CLASS | ( | l2_lisp_gpe_device_class | , |
static | |||
) |
VNET_HW_INTERFACE_CLASS | ( | lisp_gpe_hw_class | ) |
|
static |
(constructor) VLIB_CLI_COMMAND (add_del_lisp_gpe_iface_command)
Definition at line 696 of file interface.c.
|
static |
The VLIB node arc/edge from the interface's TX node, to the L2 load-balanceing node.
Which is where all packets go
Definition at line 42 of file interface.c.