FD.io VPP  v19.08.3-2-gbabecb413
Vector Packet Processing
gre_tunnel_t Struct Reference

A representation of a GRE tunnel. More...

+ Collaboration diagram for gre_tunnel_t:

Public Member Functions

 CLIB_CACHE_LINE_ALIGN_MARK (cacheline0)
 Required for pool_get_aligned. More...
 

Data Fields

gre_tunnel_key_tkey
 The hash table's key stored in separate memory since the tunnel_t memory can realloc. More...
 
ip46_address_t tunnel_src
 The tunnel's source/local address. More...
 
fib_prefix_t tunnel_dst
 The tunnel's destination/remote address. More...
 
u32 outer_fib_index
 The FIB in which the src.dst address are present. More...
 
u32 hw_if_index
 
u32 sw_if_index
 
gre_tunnel_type_t type
 
adj_index_t l2_adj_index
 an L2 tunnel always rquires an L2 midchain. More...
 
u16 session_id
 ERSPAN type 2 session ID, least significant 10 bits of u16. More...
 
gre_sn_tgre_sn
 GRE header sequence number (SN) used for ERSPAN type 2 header, must be bumped automically to be thread safe. More...
 
u32 dev_instance
 
u32 user_instance
 

Detailed Description

A representation of a GRE tunnel.

Definition at line 176 of file gre.h.

Member Function Documentation

◆ CLIB_CACHE_LINE_ALIGN_MARK()

gre_tunnel_t::CLIB_CACHE_LINE_ALIGN_MARK ( cacheline0  )

Required for pool_get_aligned.

Field Documentation

◆ dev_instance

u32 gre_tunnel_t::dev_instance

Definition at line 224 of file gre.h.

◆ gre_sn

gre_sn_t* gre_tunnel_t::gre_sn

GRE header sequence number (SN) used for ERSPAN type 2 header, must be bumped automically to be thread safe.

As multiple GRE tunnels are created for the same fib-idx/DIP/SIP with different ERSPAN session number, they all share the same SN which is kept per FIB/DIP/SIP, as specified by RFC2890.

Definition at line 221 of file gre.h.

◆ hw_if_index

u32 gre_tunnel_t::hw_if_index

Definition at line 201 of file gre.h.

◆ key

gre_tunnel_key_t* gre_tunnel_t::key

The hash table's key stored in separate memory since the tunnel_t memory can realloc.

Definition at line 187 of file gre.h.

◆ l2_adj_index

adj_index_t gre_tunnel_t::l2_adj_index

an L2 tunnel always rquires an L2 midchain.

cache here for DP.

Definition at line 208 of file gre.h.

◆ outer_fib_index

u32 gre_tunnel_t::outer_fib_index

The FIB in which the src.dst address are present.

Definition at line 200 of file gre.h.

◆ session_id

u16 gre_tunnel_t::session_id

ERSPAN type 2 session ID, least significant 10 bits of u16.

Definition at line 213 of file gre.h.

◆ sw_if_index

u32 gre_tunnel_t::sw_if_index

Definition at line 202 of file gre.h.

◆ tunnel_dst

fib_prefix_t gre_tunnel_t::tunnel_dst

The tunnel's destination/remote address.

Definition at line 196 of file gre.h.

◆ tunnel_src

ip46_address_t gre_tunnel_t::tunnel_src

The tunnel's source/local address.

Definition at line 192 of file gre.h.

◆ type

gre_tunnel_type_t gre_tunnel_t::type

Definition at line 203 of file gre.h.

◆ user_instance

u32 gre_tunnel_t::user_instance

Definition at line 225 of file gre.h.


The documentation for this struct was generated from the following file: