Dear A,

Actually VPP is small application which consumes different libraries like
vppinfra, vlib and vnet. So it is possible to write another one which uses same 
and such thing was already done in the past.

I.e. for complete different use case than networking, you can simply use vlib 
to leverage
VPP graph scheduler, thread and buffer management without using networking code 
from vnet.


> On 7 Apr 2018, at 21:47, A. Ilchinger <> wrote:
> Hello,
> I was looking into using VPP as the base framework for our network
> processing tools, starting with a simple load distribution tool which
> reads from a NIC and distributes flows to a set of consumers.
> From its description, VPP sounds like a great tool to achieve this,
> meeting the high performance requirements we have and being easily
> extensible for custom tasks. However, I find the documentation severly
> lacking. I failed to find a starting point to experiment with VPP for
> our use cases.
> I see three options:
> 1) Write a set of plugins which all run in the original vpp application.
> 2) Write a standalone application which uses the message passin API to
> call into the original vpp application.
> 3) Write a standalone application which uses the vpp library.
> Personally I'd prefer 3) because it gives us the most flexibility while
> leveraging already existing high-quality code. It is important for me
> to reuse as much as possible without having to maintain a fork.
> Especially the processing of the various network packet layers
> (ethernet, ip, mpls, ...) is just tedious and it would be more than
> welcome if a library could take over this work.
> However, the problem I see with 3) is that the general architecture
> like batch-processing and the node graph has to be rewritten.
> So what would your advice be, how should I approach this task and where
> would I find more information. Just point me at raw code if neccessary.
> Kind regards

Reply via email to