Go to the source code of this file.
|
static index_t | bier_table_get_index (const bier_table_t *bt) |
|
int | bier_table_is_main (const bier_table_t *bt) |
|
static u32 | bier_table_mk_key (const bier_table_id_t *id) |
|
static void | bier_table_init (bier_table_t *bt, const bier_table_id_t *id, mpls_label_t ll) |
|
static void | bier_table_rm_bift (bier_table_t *bt) |
|
static void | bier_table_mk_bift (bier_table_t *bt) |
|
static void | bier_table_rm_lfib (bier_table_t *bt) |
|
static void | bier_table_destroy (bier_table_t *bt) |
|
static void | bier_table_lock_i (bier_table_t *bt) |
|
static void | bier_table_unlock_i (bier_table_t *bt) |
|
void | bier_table_unlock (const bier_table_id_t *bti) |
|
static void | bier_table_mk_lfib (bier_table_t *bt) |
|
static bier_table_t * | bier_table_find (const bier_table_id_t *bti) |
|
static bier_table_t * | bier_table_mk_ecmp (index_t bti) |
|
static index_t | bier_table_create (const bier_table_id_t *btid, mpls_label_t local_label) |
|
index_t | bier_table_lock (const bier_table_id_t *btid) |
|
index_t | bier_table_add_or_lock (const bier_table_id_t *btid, mpls_label_t local_label) |
|
index_t | bier_table_ecmp_create_and_lock (const bier_table_id_t *btid) |
|
void | bier_table_ecmp_unlock (index_t bti) |
|
static void | bier_table_dpo_lock (dpo_id_t *dpo) |
|
static void | bier_table_dpo_unlock (dpo_id_t *dpo) |
|
static void | bier_table_dpo_mem_show (void) |
|
static u8 * | format_bier_table_dpo (u8 *s, va_list *ap) |
|
static clib_error_t * | bier_table_module_init (vlib_main_t *vm) |
|
const bier_table_id_t * | bier_table_get_id (index_t bti) |
|
static void | bier_table_insert (bier_table_t *bt, bier_bp_t bp, index_t bei) |
|
static void | bier_table_remove (bier_table_t *bt, bier_bp_t bp) |
|
void | bier_table_route_add (const bier_table_id_t *btid, bier_bp_t bp, fib_route_path_t *brps) |
|
void | bier_table_route_remove (const bier_table_id_t *btid, bier_bp_t bp, fib_route_path_t *brps) |
|
void | bier_table_contribute_forwarding (index_t bti, dpo_id_t *dpo) |
|
static fib_path_list_walk_rc_t | bier_table_ecmp_walk_path_list (fib_node_index_t pl_index, fib_node_index_t path_index, void *arg) |
|
void | bier_table_ecmp_walk (index_t bti, bier_table_ecmp_walk_fn_t fn, void *ctx) |
|
void | bier_table_ecmp_set_fmask (index_t bti, bier_bp_t bp, index_t bfmi) |
|
u8 * | format_bier_table_entry (u8 *s, va_list *ap) |
|
u8 * | format_bier_table (u8 *s, va_list *ap) |
|
void | bier_table_show_all (vlib_main_t *vm, bier_show_flags_t flags) |
|
void | bier_tables_walk (bier_tables_walk_fn_t fn, void *ctx) |
|
void | bier_table_walk (const bier_table_id_t *bti, bier_table_walk_fn_t fn, void *ctx) |
|
#define BIER_N_ECMP_TABLES 16 |
The magic number of BIER ECMP tables to create.
The load-balance distribution algorithm will use a power of 2 for the number of buckets, which constrains the choice.
Definition at line 44 of file bier_table.c.
static void bier_table_dpo_lock |
( |
dpo_id_t * |
dpo | ) |
|
|
static |
static void bier_table_dpo_mem_show |
( |
void |
| ) |
|
|
static |
static void bier_table_dpo_unlock |
( |
dpo_id_t * |
dpo | ) |
|
|
static |
void bier_table_ecmp_unlock |
( |
index_t |
bti | ) |
|
u8* format_bier_table |
( |
u8 * |
s, |
|
|
va_list * |
ap |
|
) |
| |
static u8* format_bier_table_dpo |
( |
u8 * |
s, |
|
|
va_list * |
ap |
|
) |
| |
|
static |
u8* format_bier_table_entry |
( |
u8 * |
s, |
|
|
va_list * |
ap |
|
) |
| |
Initial value:= {
}
static void bier_table_dpo_unlock(dpo_id_t *dpo)
static void bier_table_dpo_lock(dpo_id_t *dpo)
static u8 * format_bier_table_dpo(u8 *s, va_list *ap)
static void bier_table_dpo_mem_show(void)
Definition at line 496 of file bier_table.c.
const char* const bier_table_mpls_nodes[] |
|
static |
Initial value:=
{
}
static const char *const bier_table_mpls_nodes[]
Definition at line 508 of file bier_table.c.
Memory pool of all the allocated tables.
Definition at line 32 of file bier_table.c.
uword* bier_tables_by_key |
|
static |
DB store of all BIER tables index by SD/set/hdr-len.
Definition at line 37 of file bier_table.c.