|  | FD.io VPP
    v21.01.1
    Vector Packet Processing | 
 Include dependency graph for load_balance.c:
 Include dependency graph for load_balance.c:Go to the source code of this file.
| Data Structures | |
| struct | load_balance_trace_t_ | 
| Macros | |
| #define | LB_DBG(_lb, _fmt, _args...) | 
| Typedefs | |
| typedef struct load_balance_trace_t_ | load_balance_trace_t | 
| Variables | |
| const f64 | multipath_next_hop_error_tolerance = 0.1 | 
| static const char * | load_balance_attr_names [] = LOAD_BALANCE_ATTR_NAMES | 
| vlib_log_class_t | load_balance_logger | 
| the logger  More... | |
| load_balance_t * | load_balance_pool | 
| Pool of all DPOs.  More... | |
| load_balance_main_t | load_balance_main | 
| The one instance of load-balance main.  More... | |
| static const dpo_vft_t | lb_vft | 
| static const char *const | load_balance_ip4_nodes [] | 
| The per-protocol VLIB graph nodes that are assigned to a load-balance object.  More... | |
| static const char *const | load_balance_ip6_nodes [] | 
| static const char *const | load_balance_mpls_nodes [] | 
| static const char *const | load_balance_l2_nodes [] | 
| static const char *const | load_balance_nsh_nodes [] | 
| static const char *const | load_balance_bier_nodes [] | 
| static const char *const *const | load_balance_nodes [DPO_PROTO_NUM] | 
| static vlib_cli_command_t | load_balance_show_command | 
| (constructor) VLIB_CLI_COMMAND (load_balance_show_command)  More... | |
| vlib_node_registration_t | l2_load_balance_node | 
| (constructor) VLIB_REGISTER_NODE (l2_load_balance_node)  More... | |
| vlib_node_registration_t | nsh_load_balance_node | 
| (constructor) VLIB_REGISTER_NODE (nsh_load_balance_node)  More... | |
| vlib_node_registration_t | bier_load_balance_node | 
| (constructor) VLIB_REGISTER_NODE (bier_load_balance_node)  More... | |
| #define LB_DBG | ( | _lb, | |
| _fmt, | |||
| _args... | |||
| ) | 
Definition at line 40 of file load_balance.c.
| typedef struct load_balance_trace_t_ load_balance_trace_t | 
| 
 | static | 
Definition at line 1297 of file load_balance.c.
Definition at line 1181 of file load_balance.c.
Definition at line 200 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:Definition at line 1271 of file load_balance.c.
| 
 | inlinestatic | 
Definition at line 1051 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| u32 ip_multipath_normalize_next_hops | ( | const load_balance_path_t * | raw_next_hops, | 
| load_balance_path_t ** | normalized_next_hops, | ||
| u32 * | sum_weight_in, | ||
| f64 | multipath_next_hop_error_tolerance | ||
| ) | 
| 
 | inlinestatic | 
Definition at line 1068 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
| 
 | static | 
Definition at line 94 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| index_t load_balance_create | ( | u32 | n_buckets, | 
| dpo_proto_t | lb_proto, | ||
| flow_hash_config_t | fhc | ||
| ) | 
Definition at line 264 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 239 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 872 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 602 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 531 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 555 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 140 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:Definition at line 364 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inlinestatic | 
| flow_hash_config_t load_balance_get_default_flow_hash | ( | dpo_proto_t | lb_proto | ) | 
| 
 | inlinestatic | 
| f64 load_balance_get_multipath_tolerance | ( | void | ) | 
Definition at line 69 of file load_balance.c.
| 
 | inlinestatic | 
Definition at line 1100 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| int load_balance_is_drop | ( | const dpo_id_t * | dpo | ) | 
Definition at line 297 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
| 
 | static | 
| void load_balance_module_init | ( | void | ) | 
Definition at line 980 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
Definition at line 505 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| void load_balance_multipath_update | ( | const dpo_id_t * | dpo, | 
| const load_balance_path_t * | raw_nhs, | ||
| load_balance_flags_t | flags | ||
| ) | 
Definition at line 627 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:Definition at line 314 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:Definition at line 281 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inlinestatic | 
Definition at line 272 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| void load_balance_set_fib_entry_flags | ( | index_t | lbi, | 
| fib_entry_flag_t | flags | ||
| ) | 
Definition at line 324 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inlinestatic | 
Definition at line 335 of file load_balance.c.
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | static | 
| 
 | static | 
| 
 | static | 
Definition at line 375 of file load_balance.c.
| 
 | static | 
| vlib_node_registration_t bier_load_balance_node | 
(constructor) VLIB_REGISTER_NODE (bier_load_balance_node)
Definition at line 1318 of file load_balance.c.
| vlib_node_registration_t l2_load_balance_node | 
(constructor) VLIB_REGISTER_NODE (l2_load_balance_node)
Definition at line 1194 of file load_balance.c.
| 
 | static | 
Definition at line 921 of file load_balance.c.
| 
 | static | 
Definition at line 33 of file load_balance.c.
| 
 | static | 
Definition at line 964 of file load_balance.c.
| 
 | static | 
The per-protocol VLIB graph nodes that are assigned to a load-balance object.
this means that these graph nodes are ones from which a load-balance is the parent object in the DPO-graph.
We do not list all the load-balance nodes, such as the *-lookup. instead we are relying on the correct use of the .sibling_of field when setting up these sibling nodes.
Definition at line 939 of file load_balance.c.
| 
 | static | 
Definition at line 944 of file load_balance.c.
| 
 | static | 
Definition at line 954 of file load_balance.c.
| vlib_log_class_t load_balance_logger | 
the logger
Definition at line 38 of file load_balance.c.
| load_balance_main_t load_balance_main | 
The one instance of load-balance main.
Definition at line 57 of file load_balance.c.
| 
 | static | 
Definition at line 949 of file load_balance.c.
| 
 | static | 
Definition at line 969 of file load_balance.c.
| 
 | static | 
Definition at line 959 of file load_balance.c.
| load_balance_t* load_balance_pool | 
Pool of all DPOs.
The encapsulation breakages are for fast DP access.
It's not static so the DP can have fast access
Definition at line 52 of file load_balance.c.
| 
 | static | 
(constructor) VLIB_CLI_COMMAND (load_balance_show_command)
Definition at line 1043 of file load_balance.c.
| const f64 multipath_next_hop_error_tolerance = 0.1 | 
Definition at line 31 of file load_balance.c.
| vlib_node_registration_t nsh_load_balance_node | 
(constructor) VLIB_REGISTER_NODE (nsh_load_balance_node)
Definition at line 1284 of file load_balance.c.