FD.io VPP  v21.01.1
Vector Packet Processing
qos_egress_map.h File Reference
+ Include dependency graph for qos_egress_map.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  qos_egress_map_t_
 For a given output source a table maps each value of every input source. More...
 

Typedefs

typedef u32 qos_egress_map_id_t
 A QOS egress map translates from the COS bits stored in the packet's meta-data into a per-protocol COS value. More...
 
typedef struct qos_egress_map_t_ qos_egress_map_t
 For a given output source a table maps each value of every input source. More...
 
typedef walk_rc_t(* qos_egress_map_walk_cb_t) (qos_egress_map_id_t id, const qos_egress_map_t *m, void *c)
 Walk each of the configured maps. More...
 

Functions

u8format_qos_egress_map (u8 *s, va_list *args)
 
void qos_egress_map_update (qos_egress_map_id_t tid, qos_source_t input_source, qos_bits_t *values)
 Add a qos-egress map to an interface. More...
 
void qos_egress_map_delete (qos_egress_map_id_t tid)
 
index_t qos_egress_map_find (qos_egress_map_id_t tid)
 Get the VPP QoS map index from the user's map-ID. More...
 
qos_egress_map_id_t qos_egress_map_get_id (index_t qemi)
 
void qos_egress_map_walk (qos_egress_map_walk_cb_t fn, void *c)
 

Variables

qos_egress_map_tqem_pool
 Data-plane functions. More...
 

Typedef Documentation

◆ qos_egress_map_id_t

A QOS egress map translates from the COS bits stored in the packet's meta-data into a per-protocol COS value.

An attempt at type safety

Definition at line 32 of file qos_egress_map.h.

◆ qos_egress_map_t

For a given output source a table maps each value of every input source.

◆ qos_egress_map_walk_cb_t

typedef walk_rc_t(* qos_egress_map_walk_cb_t) (qos_egress_map_id_t id, const qos_egress_map_t *m, void *c)

Walk each of the configured maps.

Definition at line 74 of file qos_egress_map.h.

Function Documentation

◆ format_qos_egress_map()

u8* format_qos_egress_map ( u8 s,
va_list *  args 
)

Definition at line 193 of file qos_egress_map.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ qos_egress_map_delete()

void qos_egress_map_delete ( qos_egress_map_id_t  tid)

Definition at line 113 of file qos_egress_map.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ qos_egress_map_find()

index_t qos_egress_map_find ( qos_egress_map_id_t  tid)

Get the VPP QoS map index from the user's map-ID.

Definition at line 32 of file qos_egress_map.c.

+ Here is the caller graph for this function:

◆ qos_egress_map_get_id()

qos_egress_map_id_t qos_egress_map_get_id ( index_t  qemi)

Definition at line 45 of file qos_egress_map.c.

+ Here is the caller graph for this function:

◆ qos_egress_map_update()

void qos_egress_map_update ( qos_egress_map_id_t  tid,
qos_source_t  input_source,
qos_bits_t values 
)

Add a qos-egress map to an interface.

If sw_if_index = ~0 then the configuration is for the 'default' table. If the table is ~0, this is a removal. the egress mapping is applied. For example, is output is MPLS then the QoS markings will occur for MPLS packets.

Definition at line 101 of file qos_egress_map.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ qos_egress_map_walk()

void qos_egress_map_walk ( qos_egress_map_walk_cb_t  fn,
void *  c 
)

Definition at line 127 of file qos_egress_map.c.

+ Here is the caller graph for this function:

Variable Documentation

◆ qem_pool

qos_egress_map_t* qem_pool

Data-plane functions.

Pool from which to allocate map

Data-plane functions.

Definition at line 24 of file qos_egress_map.c.