|
FD.io VPP
v21.06-3-gbb25fbf28
Vector Packet Processing
|
Go to the documentation of this file.
186 .path =
"qos egress map",
187 .short_help =
"qos egress map id %d [delete] {[SOURCE][INPUT]=OUTPUT}",
196 u32 indent = va_arg (*args,
u32);
279 .path =
"show qos egress map",
280 .short_help =
"show qos egress map id %d",
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.
For a given output source a table maps each value of every input source.
uword unformat_qos_source(unformat_input_t *input, va_list *args)
#define clib_memcpy(d, s, n)
#define pool_elt_at_index(p, i)
Returns pointer to element at given index.
#define pool_get_aligned(P, E, A)
Allocate an object E from a pool P with alignment A.
#define clib_error_return(e, args...)
index_t qos_egress_map_find(qos_egress_map_id_t mid)
Get the VPP QoS map index from the user's map-ID.
#define pool_put(P, E)
Free an object E in pool P.
vlib_main_t * vm
X-connect all packets from the HOST to the PHY.
qos_bits_t qem_output[QOS_N_SOURCES][256]
The array of output mapped values; output = eq_qos[input-source][input-value].
#define hash_set(h, key, value)
u8 * format_qos_egress_map(u8 *s, va_list *args)
u8 qos_bits_t
Type, er, safety for us water based entities.
u8 * format_qos_source(u8 *s, va_list *args)
format/unformat QoS source types
u32 index_t
A Data-Path Object is an object that represents actions that are applied to packets are they are swit...
static clib_error_t * qos_egress_map_update_cli(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static vlib_cli_command_t qos_egress_map_show_command
(constructor) VLIB_CLI_COMMAND (qos_egress_map_show_command)
#define hash_foreach(key_var, value_var, h, body)
vl_api_qos_source_t input_source
#define VLIB_CLI_COMMAND(x,...)
qos_egress_map_t * qem_pool
Pool from which to allocate table.
#define CLIB_CACHE_LINE_BYTES
void vlib_cli_output(vlib_main_t *vm, char *fmt,...)
static qos_egress_map_t * qos_egress_map_find_or_create(qos_egress_map_id_t mid)
enum qos_source_t_ qos_source_t
QoS types.
void qos_egress_map_walk(qos_egress_map_walk_cb_t fn, void *c)
description fragment has unexpected format
void qos_egress_map_update(qos_egress_map_id_t mid, qos_source_t input_source, qos_bits_t *values)
Add a qos-egress map to an interface.
#define FOR_EACH_QOS_SOURCE(_src)
void qos_egress_map_delete(qos_egress_map_id_t mid)
qos_egress_map_id_t qos_egress_map_get_id(index_t qemi)
#define hash_unset(h, key)
clib_memset(h->entries, 0, sizeof(h->entries[0]) *entries)
static clib_error_t * qos_egress_map_show(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
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 CO...
static vlib_cli_command_t qos_egress_map_update_command
(constructor) VLIB_CLI_COMMAND (qos_egress_map_update_command)
#define INDEX_INVALID
Invalid index - used when no index is known blazoned capitals INVALID speak volumes where ~0 does not...
uword * qem_db
DB to map user table-IDs to internal table indicies.
qos_egress_map_t * qos_egress_map_find_i(qos_egress_map_id_t mid)