Vladimir Medvedkin, Mar 22, 2026 at 16:42: > This series adds multi-VRF support to both IPv4 and IPv6 FIB paths by > allowing a single FIB instance to host multiple isolated routing domains. > > Currently FIB instance represents one routing instance. For workloads that > need multiple VRFs, the only option is to create multiple FIB objects. In a > burst oriented datapath, packets in the same batch can belong to different > VRFs, so > the application either does per-packet lookup in different FIB instances or > regroups packets by VRF before lookup. Both approaches are expensive. > > To remove that cost, this series keeps all VRFs inside one FIB instance and > extends lookup input with per-packet VRF IDs. > > The design follows the existing fast-path structure for both families. IPv4 > and > IPv6 use multi-ary trees with a 2^24 associativity on a first level (tbl24). > The > first-level table scales per configured VRF. This increases memory usage, but > keeps performance and lookup complexity on par with non-VRF implementation. > > Vladimir Medvedkin (4): > fib: add multi-VRF support > fib: add VRF functional and unit tests > fib6: add multi-VRF support > fib6: add VRF functional and unit tests
Hey Vladimir, Thanks for the series, this is an interesting approach. Does this allow sharing the tbl8 arrays amongst VRFs?

