FD.io VPP  v16.09
Vector Packet Processing
ip6_hop_by_hop_packet.h File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ip6_hop_by_hop_header_t
 
struct  ip6_hop_by_hop_option_t
 
struct  ioam_trace_if_ts_app_t
 
struct  ioam_trace_if_t
 
struct  ioam_trace_ts_t
 
struct  ioam_trace_app_t
 
struct  ioam_trace_ts_app_t
 

Macros

#define HBH_OPTION_TYPE_SKIP_UNKNOWN   (0x00)
 
#define HBH_OPTION_TYPE_DISCARD_UNKNOWN   (0x40)
 
#define HBH_OPTION_TYPE_DISCARD_UNKNOWN_ICMP   (0x80)
 
#define HBH_OPTION_TYPE_DISCARD_UNKNOWN_ICMP_NOT_MCAST   (0xc0)
 
#define HBH_OPTION_TYPE_HIGH_ORDER_BITS   (0xc0)
 
#define HBH_OPTION_TYPE_DATA_CHANGE_ENROUTE   (1<<5)
 
#define HBH_OPTION_TYPE_IOAM_TRACE_DATA_LIST   59 /* Third highest bit set (change en-route) */
 
#define HBH_OPTION_TYPE_IOAM_PROOF_OF_TRANSIT   60 /* Third highest bit set (change en-route) */
 
#define HBH_OPTION_TYPE_IOAM_EDGE_TO_EDGE   29
 
#define BIT_TTL_NODEID   (1<<0)
 
#define BIT_ING_INTERFACE   (1<<1)
 
#define BIT_EGR_INTERFACE   (1<<2)
 
#define BIT_TIMESTAMP   (1<<3)
 
#define BIT_APPDATA   (1<<4)
 
#define TRACE_TYPE_MASK   0x1F /* Mask of all above bits */
 
#define TRACE_TYPE_IF_TS_APP   0x1f
 
#define TRACE_TYPE_IF   0x03
 
#define TRACE_TYPE_TS   0x09
 
#define TRACE_TYPE_APP   0x11
 
#define TRACE_TYPE_TS_APP   0x19
 

Functions

typedef CLIB_PACKED (struct{ip6_hop_by_hop_option_t hdr;u8 ioam_trace_type;u8 data_list_elts_left;u32 elts[0];}) ioam_trace_option_t
 
typedef CLIB_PACKED (struct{ip6_hop_by_hop_option_t hdr;u8 e2e_type;u8 reserved;u32 e2e_data;}) ioam_e2e_option_t
 

Macro Definition Documentation

#define BIT_APPDATA   (1<<4)

Definition at line 60 of file ip6_hop_by_hop_packet.h.

#define BIT_EGR_INTERFACE   (1<<2)

Definition at line 58 of file ip6_hop_by_hop_packet.h.

#define BIT_ING_INTERFACE   (1<<1)

Definition at line 57 of file ip6_hop_by_hop_packet.h.

#define BIT_TIMESTAMP   (1<<3)

Definition at line 59 of file ip6_hop_by_hop_packet.h.

#define BIT_TTL_NODEID   (1<<0)

Definition at line 56 of file ip6_hop_by_hop_packet.h.

#define HBH_OPTION_TYPE_DATA_CHANGE_ENROUTE   (1<<5)

Definition at line 35 of file ip6_hop_by_hop_packet.h.

#define HBH_OPTION_TYPE_DISCARD_UNKNOWN   (0x40)

Definition at line 31 of file ip6_hop_by_hop_packet.h.

#define HBH_OPTION_TYPE_DISCARD_UNKNOWN_ICMP   (0x80)

Definition at line 32 of file ip6_hop_by_hop_packet.h.

#define HBH_OPTION_TYPE_DISCARD_UNKNOWN_ICMP_NOT_MCAST   (0xc0)

Definition at line 33 of file ip6_hop_by_hop_packet.h.

#define HBH_OPTION_TYPE_HIGH_ORDER_BITS   (0xc0)

Definition at line 34 of file ip6_hop_by_hop_packet.h.

#define HBH_OPTION_TYPE_IOAM_EDGE_TO_EDGE   29

Definition at line 44 of file ip6_hop_by_hop_packet.h.

#define HBH_OPTION_TYPE_IOAM_PROOF_OF_TRANSIT   60 /* Third highest bit set (change en-route) */

Definition at line 43 of file ip6_hop_by_hop_packet.h.

#define HBH_OPTION_TYPE_IOAM_TRACE_DATA_LIST   59 /* Third highest bit set (change en-route) */

Definition at line 42 of file ip6_hop_by_hop_packet.h.

#define HBH_OPTION_TYPE_SKIP_UNKNOWN   (0x00)

Definition at line 30 of file ip6_hop_by_hop_packet.h.

#define TRACE_TYPE_APP   0x11

Definition at line 139 of file ip6_hop_by_hop_packet.h.

#define TRACE_TYPE_IF   0x03

Definition at line 100 of file ip6_hop_by_hop_packet.h.

#define TRACE_TYPE_IF_TS_APP   0x1f

Definition at line 79 of file ip6_hop_by_hop_packet.h.

#define TRACE_TYPE_MASK   0x1F /* Mask of all above bits */

Definition at line 61 of file ip6_hop_by_hop_packet.h.

#define TRACE_TYPE_TS   0x09

Definition at line 119 of file ip6_hop_by_hop_packet.h.

#define TRACE_TYPE_TS_APP   0x19

Definition at line 159 of file ip6_hop_by_hop_packet.h.

Function Documentation

typedef CLIB_PACKED ( struct{ip6_hop_by_hop_option_t hdr;u8 ioam_trace_type;u8 data_list_elts_left;u32 elts[0];}  )
typedef CLIB_PACKED ( struct{ip6_hop_by_hop_option_t hdr;u8 e2e_type;u8 reserved;u32 e2e_data;}  )