FD.io VPP  v18.01-8-g0eacf49
Vector Packet Processing
replicate_t_ Struct Reference

The FIB DPO provieds;. More...

+ Collaboration diagram for replicate_t_:

Data Fields

u16 rep_n_buckets
 number of buckets in the load-balance. More...
 
dpo_proto_t rep_proto
 The protocol of packets that traverse this REP. More...
 
u32 rep_locks
 The number of locks, which is approximately the number of users, of this load-balance. More...
 
dpo_id_trep_buckets
 Vector of buckets containing the next DPOs, sized as repo_num. More...
 
dpo_id_t rep_buckets_inline [REP_NUM_INLINE_BUCKETS]
 The rest of the cache line is used for buckets. More...
 

Detailed Description

The FIB DPO provieds;.

  • load-balancing over the next DPOs in the chain/graph
  • per-route counters

Definition at line 54 of file replicate_dpo.h.

Field Documentation

dpo_id_t* replicate_t_::rep_buckets

Vector of buckets containing the next DPOs, sized as repo_num.

Definition at line 78 of file replicate_dpo.h.

dpo_id_t replicate_t_::rep_buckets_inline[REP_NUM_INLINE_BUCKETS]

The rest of the cache line is used for buckets.

In the common case where there there are less than 4 buckets, then the buckets are on the same cachlie and we save ourselves a pointer dereferance in the data-path.

Definition at line 86 of file replicate_dpo.h.

u32 replicate_t_::rep_locks

The number of locks, which is approximately the number of users, of this load-balance.

Load-balance objects of via-entries are heavily shared by recursives, so the lock count is a u32.

Definition at line 73 of file replicate_dpo.h.

u16 replicate_t_::rep_n_buckets

number of buckets in the load-balance.

always a power of 2.

Definition at line 58 of file replicate_dpo.h.

dpo_proto_t replicate_t_::rep_proto

The protocol of packets that traverse this REP.

need in combination with the flow hash config to determine how to hash. u8.

Definition at line 65 of file replicate_dpo.h.


The documentation for this struct was generated from the following file: