FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
replicate_t_ Struct Reference

The FIB DPO provieds;. More...

+ Collaboration diagram for replicate_t_:

Public Member Functions

 CLIB_CACHE_LINE_ALIGN_MARK (cacheline0)
 required for pool_get_aligned. More...
 

Data Fields

u16 rep_n_buckets
 number of buckets in the replicate. More...
 
dpo_proto_t rep_proto
 The protocol of packets that traverse this REP. More...
 
replicate_flags_t rep_flags
 Flags specifying the replicate properties/behaviour. 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 63 of file replicate_dpo.h.

Member Function Documentation

◆ CLIB_CACHE_LINE_ALIGN_MARK()

replicate_t_::CLIB_CACHE_LINE_ALIGN_MARK ( cacheline0  )

required for pool_get_aligned.

memebers used in the switch path come first!

Field Documentation

◆ rep_buckets

dpo_id_t* replicate_t_::rep_buckets

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

Definition at line 98 of file replicate_dpo.h.

◆ rep_buckets_inline

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 106 of file replicate_dpo.h.

◆ rep_flags

replicate_flags_t replicate_t_::rep_flags

Flags specifying the replicate properties/behaviour.

Definition at line 85 of file replicate_dpo.h.

◆ rep_locks

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 93 of file replicate_dpo.h.

◆ rep_n_buckets

u16 replicate_t_::rep_n_buckets

number of buckets in the replicate.

Definition at line 73 of file replicate_dpo.h.

◆ rep_proto

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 80 of file replicate_dpo.h.


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