FD.io VPP  v17.04.2-2-ga8f93f8
Vector Packet Processing
ioam_export.h File Reference
+ Include dependency graph for ioam_export.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ioam_export_buffer
 
struct  ioam_export_main_t
 
struct  ipfix_data_packet_t
 
struct  ip4_ipfix_data_packet_t
 

Macros

#define DEFAULT_EXPORT_SIZE   (3 * CLIB_CACHE_LINE_BYTES)
 
#define DEFAULT_EXPORT_RECORDS   7
 
#define IPFIX_IOAM_EXPORT_ID   272
 
#define IPFIX_VXLAN_IOAM_EXPORT_ID   273
 
#define EXPORT_TIMEOUT   (20.0)
 
#define THREAD_PERIOD   (30.0)
 
#define ioam_export_node_common(EM, VM, N, F, HTYPE, L, V, NEXT, FIXUP_FUNC)
 

Typedefs

typedef struct ioam_export_buffer ioam_export_buffer_t
 

Functions

static void ioam_export_set_next_node (ioam_export_main_t *em, u8 *next_node_name)
 
static void ioam_export_reset_next_node (ioam_export_main_t *em)
 
static ioam_export_buffer_tioam_export_get_my_buffer (ioam_export_main_t *em, u32 thread_id)
 
static int ioam_export_buffer_add_header (ioam_export_main_t *em, vlib_buffer_t *b0)
 
static int ioam_export_init_buffer (ioam_export_main_t *em, vlib_main_t *vm, ioam_export_buffer_t *eb)
 
static void ioam_export_thread_buffer_free (ioam_export_main_t *em)
 
static int ioam_export_thread_buffer_init (ioam_export_main_t *em, vlib_main_t *vm)
 
static void ioam_export_header_cleanup (ioam_export_main_t *em, ip4_address_t *collector_address, ip4_address_t *src_address)
 
static int ioam_export_header_create (ioam_export_main_t *em, ip4_address_t *collector_address, ip4_address_t *src_address)
 
static int ioam_export_send_buffer (ioam_export_main_t *em, vlib_main_t *vm, ioam_export_buffer_t *eb)
 
static uword ioam_export_process_common (ioam_export_main_t *em, vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f, u32 index)
 

Macro Definition Documentation

#define DEFAULT_EXPORT_RECORDS   7

Definition at line 85 of file ioam_export.h.

#define DEFAULT_EXPORT_SIZE   (3 * CLIB_CACHE_LINE_BYTES)

Definition at line 80 of file ioam_export.h.

#define EXPORT_TIMEOUT   (20.0)

Definition at line 355 of file ioam_export.h.

#define ioam_export_node_common (   EM,
  VM,
  N,
  F,
  HTYPE,
  L,
  V,
  NEXT,
  FIXUP_FUNC 
)

Definition at line 469 of file ioam_export.h.

#define IPFIX_IOAM_EXPORT_ID   272

Definition at line 202 of file ioam_export.h.

#define IPFIX_VXLAN_IOAM_EXPORT_ID   273

Definition at line 203 of file ioam_export.h.

#define THREAD_PERIOD   (30.0)

Definition at line 356 of file ioam_export.h.

Typedef Documentation

Function Documentation

static int ioam_export_buffer_add_header ( ioam_export_main_t em,
vlib_buffer_t b0 
)
inlinestatic

Definition at line 116 of file ioam_export.h.

+ Here is the caller graph for this function:

static ioam_export_buffer_t* ioam_export_get_my_buffer ( ioam_export_main_t em,
u32  thread_id 
)
inlinestatic

Definition at line 106 of file ioam_export.h.

static void ioam_export_header_cleanup ( ioam_export_main_t em,
ip4_address_t collector_address,
ip4_address_t src_address 
)
inlinestatic

Definition at line 222 of file ioam_export.h.

+ Here is the caller graph for this function:

static int ioam_export_header_create ( ioam_export_main_t em,
ip4_address_t collector_address,
ip4_address_t src_address 
)
inlinestatic

Definition at line 231 of file ioam_export.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int ioam_export_init_buffer ( ioam_export_main_t em,
vlib_main_t vm,
ioam_export_buffer_t eb 
)
inlinestatic

Definition at line 126 of file ioam_export.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static uword ioam_export_process_common ( ioam_export_main_t em,
vlib_main_t vm,
vlib_node_runtime_t rt,
vlib_frame_t f,
u32  index 
)
inlinestatic

Definition at line 358 of file ioam_export.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void ioam_export_reset_next_node ( ioam_export_main_t em)
inlinestatic

Definition at line 97 of file ioam_export.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int ioam_export_send_buffer ( ioam_export_main_t em,
vlib_main_t vm,
ioam_export_buffer_t eb 
)
inlinestatic

Definition at line 294 of file ioam_export.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void ioam_export_set_next_node ( ioam_export_main_t em,
u8 next_node_name 
)
inlinestatic

Definition at line 88 of file ioam_export.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void ioam_export_thread_buffer_free ( ioam_export_main_t em)
inlinestatic

Definition at line 146 of file ioam_export.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int ioam_export_thread_buffer_init ( ioam_export_main_t em,
vlib_main_t vm 
)
inlinestatic

Definition at line 168 of file ioam_export.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function: