|
FD.io VPP
v21.06-3-gbb25fbf28
Vector Packet Processing
|
Go to the documentation of this file.
15 #ifndef included_vnet_geneve_h
16 #define included_vnet_geneve_h
37 #define SUPPORT_OPTIONS_HEADER 0
44 }) ip4_geneve_header_t;
51 }) ip6_geneve_header_t;
68 }) geneve4_tunnel_key_t;
78 }) geneve6_tunnel_key_t;
101 #if SUPPORT_OPTIONS_HEADER==1
145 #define foreach_geneve_input_next \
146 _(DROP, "error-drop") \
147 _(L2_INPUT, "l2-input")
151 #define _(s,n) GENEVE_INPUT_NEXT_##s,
159 #define geneve_error(n,s) GENEVE_ERROR_##n,
190 #ifdef CLIB_HAVE_VEC512
191 vtep4_cache_t vtep4_u512;
u32 * tunnel_index_by_sw_if_index
typedef CLIB_PACKED(struct { ip4_header_t ip4;udp_header_t udp;geneve_header_t geneve;}) ip4_geneve_header_t
uword * geneve4_tunnel_by_key
fib_node_t node
Linkage into the FIB object graph.
#define CLIB_CACHE_LINE_ALIGN_MARK(mark)
geneve_main_t geneve_main
vlib_node_registration_t geneve4_encap_node
(constructor) VLIB_REGISTER_NODE (geneve4_encap_node)
u8 * format_geneve_encap_trace(u8 *s, va_list *args)
#define foreach_geneve_input_next
u32 fib_node_index_t
A typedef of a node index.
void vnet_int_geneve_bypass_mode(u32 sw_if_index, u8 is_ip6, u8 is_enable)
vlib_node_registration_t geneve6_encap_node
(constructor) VLIB_REGISTER_NODE (geneve6_encap_node)
struct _vlib_node_registration vlib_node_registration_t
vlib_node_registration_t geneve4_input_node
(constructor) VLIB_REGISTER_NODE (geneve4_input_node)
uword * geneve6_tunnel_by_key
fib_node_index_t fib_entry_index
geneve_tunnel_t * tunnels
int vnet_geneve_add_del_tunnel(vnet_geneve_add_del_tunnel_args_t *a, u32 *sw_if_indexp)
An node in the FIB graph.
u32 adj_index_t
An index for adjacencies.
The identity of a DPO is a combination of its type and its instance number/index of objects of that t...
vl_api_interface_index_t sw_if_index
u32 sibling_index
The tunnel is a child of the FIB entry for its desintion.
adj_index_t mcast_adj_index
vlib_node_registration_t geneve6_input_node
(constructor) VLIB_REGISTER_NODE (geneve6_input_node)