On Mon, 30 Jul 2018 19:19:25 +0300 Ori Kam <or...@mellanox.com> wrote:
> Currenlty the encap/decap actions only support encapsulation > of VXLAN and NVGRE L2 packets. > There is a need to add more L2 tunnels and also L3 tunnels. > > One issue with the current approch is the duplication of code. > For example the code for handling NVGRE and VXLAN are exactly the same, > and each new tunnel will have the same exact structure. > > Last issue with the current approach is the use of rte_items. > The most significant issue with that is that the PMD needs to convert > the items and this hurts the insertion rate. Other issue is that > the rte_item has 3 members while we only need the spec (last and mask > are useless). I know that the extra member have only small memory > impact but considering that we can have millions of rules, this became > more important consideration, and it is bad practice to add a variable > that is never used. > > My suggestion is to create 2 commands, one for encapsulation of L2 > packets and one for encapsulation of L3 tunnels. > The parameters for those functions will be a uint8_t buffer with > a length parameter. > > The current approach is not implemented yet in drivers yet, and > is marked as experimental, so it should be removed. > > Any comments will be hugely appreciated. > > Signed-off-by: Ori Kam <or...@mellanox.com> What about binary and source compatibilities with older release?