Hi Vladimir, > -----Original Message----- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Medvedkin, > Vladimir > > Hi Brørup, > > On 12/09/2019 08:37, Morten Brørup wrote: > >> -----Original Message----- > >> From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Vladimir > Medvedkin > >> > >> This is heavily reworked version of previous RIB library series: > >> https://mails.dpdk.org/archives/dev/2018-April/099492.html > >>
[snip] > >> Second library is FIB that is Forwarding Information Base. It > >> represents > >> dataplane related struct and algorithms for longest prefix match. > >> Internally it consists of two parts - RIB (control plane ops) and > >> implementation for the dataplane tasks. > >> Initial version provides two implementations for both ipv4 and ipv6: > >> dummy (uses RIB as a dataplane) and DIR24_8 (same as current LPM) > >> Due to proposed design it allows to extend FIB with new algorithms > in > >> future > >> (for example DXR, poptrie, etc). > > The feedback following here is meant as a comment, not an objection. > Feel free to ignore! > > > > This FIB library is designed for IP based forwarding only. > > > > How about forwarding based on other criteria? > > E.g. the FIB in a standard Ethernet switch is based on VLAN+MAC. > > > > Such a FIB would probably require a different library, based on a > hash structure, and would also require a compare-and-set function > callable from the data plane in order to provide wire speed learning. > > > > So I suggest that the documentation highlights that this FIB library > is for IP based forwarding. Optionally also reconsider the name of the > library and its functions, structures etc.. > > Thanks for the feedback. > > Yes, at the moment FIB has only longest prefix match algorithms. > However, it is possible to add different exact match algorithms for > VLAN+MAC/MPLS/etc processing. > > It is always hard to find proper name for library/function/variable, so > if you think that fib name is not relevant feel free to suggest better > :) > You can use ip_/ipv4_/ipv6_ somewhere in the common prefix, like the ip_frag library, and unlike many other libraries. :-) And again: Feel free to ignore! > > -- > Regards, > Vladimir > Med venlig hilsen / kind regards - Morten Brørup