fib: default flow hash config for each DPO protocol type
Type: fix Fixes: 59fa121f Change-Id: I9eb4fe1612734e54932228527c37bf33b705dbdb Signed-off-by: Neale Ranns <nranns@cisco.com>
This commit is contained in:
@ -172,6 +172,11 @@ I: mpls
|
||||
M: Neale Ranns <nranns@cisco.com>
|
||||
F: src/vnet/mpls/
|
||||
|
||||
VNET BIER
|
||||
I: bier
|
||||
M: Neale Ranns <nranns@cisco.com>
|
||||
F: src/vnet/bier/
|
||||
|
||||
VNET Session Layer
|
||||
I: session
|
||||
M: Florin Coras <fcoras@cisco.com>
|
||||
|
@ -22,6 +22,7 @@
|
||||
#include <vnet/adj/adj_internal.h>
|
||||
#include <vnet/fib/fib_urpf_list.h>
|
||||
#include <vnet/bier/bier_fwd.h>
|
||||
#include <vnet/fib/mpls_fib.h>
|
||||
|
||||
/*
|
||||
* distribution error tolerance for load-balancing
|
||||
@ -188,6 +189,27 @@ format_load_balance_dpo (u8 * s, va_list * args)
|
||||
return (load_balance_format(lbi, LOAD_BALANCE_FORMAT_DETAIL, indent, s));
|
||||
}
|
||||
|
||||
flow_hash_config_t
|
||||
load_balance_get_default_flow_hash (dpo_proto_t lb_proto)
|
||||
{
|
||||
switch (lb_proto)
|
||||
{
|
||||
case DPO_PROTO_IP4:
|
||||
case DPO_PROTO_IP6:
|
||||
return (IP_FLOW_HASH_DEFAULT);
|
||||
|
||||
case DPO_PROTO_MPLS:
|
||||
return (MPLS_FLOW_HASH_DEFAULT);
|
||||
|
||||
case DPO_PROTO_ETHERNET:
|
||||
case DPO_PROTO_BIER:
|
||||
case DPO_PROTO_NSH:
|
||||
break;
|
||||
}
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
||||
static load_balance_t *
|
||||
load_balance_create_i (u32 num_buckets,
|
||||
dpo_proto_t lb_proto,
|
||||
|
@ -188,6 +188,7 @@ typedef enum load_balance_format_flags_t_ {
|
||||
extern index_t load_balance_create(u32 num_buckets,
|
||||
dpo_proto_t lb_proto,
|
||||
flow_hash_config_t fhc);
|
||||
extern flow_hash_config_t load_balance_get_default_flow_hash(dpo_proto_t lb_proto);
|
||||
extern void load_balance_multipath_update(
|
||||
const dpo_id_t *dpo,
|
||||
const load_balance_path_t * raw_next_hops,
|
||||
|
@ -394,8 +394,7 @@ fib_path_list_mk_lb (fib_path_list_t *path_list,
|
||||
dproto,
|
||||
load_balance_create(vec_len(nhs),
|
||||
dproto,
|
||||
fib_table_get_default_flow_hash_config(
|
||||
dpo_proto_to_fib(dproto))));
|
||||
load_balance_get_default_flow_hash(dproto)));
|
||||
load_balance_multipath_update(dpo, nhs,
|
||||
fib_path_list_fwd_flags_2_load_balance(flags));
|
||||
|
||||
|
Reference in New Issue
Block a user