![]() |
FD.io VPP
v17.04-9-g99c0734
Vector Packet Processing
|
Functions for decapsulating VXLAN GPE tunnels. More...
Go to the source code of this file.
Data Structures | |
struct | vxlan_gpe_rx_trace_t |
Struct for VXLAN GPE decap packet tracing. More... | |
Macros | |
#define | vxlan_gpe_error(n, s) s, |
Functions | |
static u8 * | format_vxlan_gpe_rx_trace (u8 *s, va_list *args) |
Tracing function for VXLAN GPE packet decapsulation. More... | |
static u8 * | format_vxlan_gpe_with_length (u8 *s, va_list *args) |
Tracing function for VXLAN GPE packet decapsulation including length. More... | |
static uword | vxlan_gpe_input (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame, u8 is_ip4) |
Common processing for IPv4 and IPv6 VXLAN GPE decap dispatch functions. More... | |
static uword | vxlan4_gpe_input (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
Graph processing dispatch function for IPv4 VXLAN GPE. More... | |
void | vxlan_gpe_register_decap_protocol (u8 protocol_id, uword next_node_index) |
void | vxlan_gpe_unregister_decap_protocol (u8 protocol_id, uword next_node_index) |
static uword | vxlan6_gpe_input (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
Graph processing dispatch function for IPv6 VXLAN GPE. More... | |
VLIB_NODE_FUNCTION_MULTIARCH (vxlan4_gpe_input_node, vxlan4_gpe_input) | |
VLIB_NODE_FUNCTION_MULTIARCH (vxlan6_gpe_input_node, vxlan6_gpe_input) | |
Variables | |
vlib_node_registration_t | vxlan_gpe_input_node |
static char * | vxlan_gpe_error_strings [] |
VXLAN GPE error strings. More... | |
vlib_node_registration_t | vxlan4_gpe_input_node |
(constructor) VLIB_REGISTER_NODE (vxlan4_gpe_input_node) More... | |
vlib_node_registration_t | vxlan6_gpe_input_node |
(constructor) VLIB_REGISTER_NODE (vxlan6_gpe_input_node) More... | |
Functions for decapsulating VXLAN GPE tunnels.
Definition in file decap.c.
#define vxlan_gpe_error | ( | n, | |
s | |||
) | s, |
VLIB_NODE_FUNCTION_MULTIARCH | ( | vxlan4_gpe_input_node | , |
vxlan4_gpe_input | |||
) |
VLIB_NODE_FUNCTION_MULTIARCH | ( | vxlan6_gpe_input_node | , |
vxlan6_gpe_input | |||
) |
|
static |
Graph processing dispatch function for IPv4 VXLAN GPE.
vxlan4-gpe-input
*vm | |
*node | |
*from_frame |
Definition at line 637 of file decap.c.
|
static |
Graph processing dispatch function for IPv6 VXLAN GPE.
vxlan6-gpe-input
*vm | |
*node | |
*from_frame |
Definition at line 673 of file decap.c.
|
inlinestatic |
Common processing for IPv4 and IPv6 VXLAN GPE decap dispatch functions.
It is worth noting that other than trivial UDP forwarding (transit), VXLAN GPE tunnels are "terminate local". This means that there is no "TX" interface for this decap case, so that field in the buffer_metadata can be "used for something else". The something else in this case is, for the IPv4/IPv6 inner-packet type case, the FIB index used to look up the inner-packet's adjacency.
vnet_buffer(b0)->sw_if_index[VLIB_TX] = t0->decap_fib_index;
*vm | |
*node | |
*from_frame | |
is_ip4 |
ip[46] lookup in the configured FIB
Definition at line 105 of file decap.c.
vlib_node_registration_t vxlan4_gpe_input_node |
(constructor) VLIB_REGISTER_NODE (vxlan4_gpe_input_node)
vlib_node_registration_t vxlan6_gpe_input_node |
(constructor) VLIB_REGISTER_NODE (vxlan6_gpe_input_node)
|
static |
vlib_node_registration_t vxlan_gpe_input_node |