> <snip> > > > > > > > > > > > On Tue, 27 Apr 2021 10:50:20 +0100 > > > > Ferruh Yigit <ferruh.yi...@intel.com> wrote: > > > > > > > > > Agree that it may help testing to have l3fwd support on the testpmd. > > > > > > > > > > Two concerns, > > > > > 1) Testpmd already too complex. > > > > > 2) Code duplication. > > > > > > > > > > For 1), if the l3fwd can be implemented in testpmd as new, > > > > > independent forwarding mode, without touching rest of the testpmd, > > > > > I think it can be > > > > OK. > > > > > > > > > > Not sure how to address 2), also lets say we want to add new > > > > > feature to l3fwd, where it should go, to the sample or to the testpmd? > > > > > > > > The original purpose of l3fwd seems to be getting lost here. > > > > It was intended as an example, not a complete test or real life > > > > application. > > > The issue is, this app has become an industry standard for performance > > comparison between platforms (whether we like it or not). > > > But, it > > > does not have a whole lot of debugging capabilities. > > > > Ok, could you list what exactly you think is missed? > > If we are talking about extra stats, then I still think it is probably > > easier to add > > it into l3fwd, then pull whole l3fwd code into test-pmd. > In stats it is missing hardware, software stats, burst stats. > From run time configuration capability, it is missing burst size, rx/tx queue > depth, number of queues we can assign to a core.
AFAIK l3fwd is quite flexible in rx queues to cores assignments, so not sure what else do you have in mind here. About other things - in general I am ok for adding these extra functionality into l3fwd. I don't see any major issues here. I think it will be less effort then pulling l3fwd into test-pmd. > > > > > > I think adding a L3fwd mode to testpmd will be helpful to keep the > > > sample application simpler. > > > > Hmm, not sure how these 2 things are linked... > > Why let say adding fib-fwd into test-pmd will help to decrease l3fwd code > > complexity? > From my perspective, L3fwd example application should showcase how to use > DPDK, various packet processing models in DPDK. Anyone > new to DPDK should be able to take this code and start creating their > application. > However, this application has LPM, Exact match and FIB. I am not sure how > Exact Match and FIB modes help the user. About exact match - routing decisions are not always made on des tip address. Sometimes you need to look at whole addrs+proto+ports tuple. Exact match provides example for such case. I also think it would be really good to add ACL mode into l3fwd too (merge l3fwd and l3fd-acl apps into one). > I suggest removing LPM from L3fwd example application as FIB is added (or > vice versa). AFAIK, as a stretch goal LPM library has to be replaced with FIB one. Recently FIB was added into l3fwd, so I suppose deprecating and removing LPM mode here is natural next step (if there would be no performance impact off-course). CC-ing to Vladimir (FIB maintainer) and Conor to learn their opinions.