I'd be a bit tempted not to use the frame mechanism this way. A bitmap (of 
active queues) plus a set of clib_fifos would allow arbitrary queue depth, 
processing priority, etc. Push one vector element to the (single) next-node to 
schedule it. Ignore the element, its only function is to schedule the successor 
node. Look at the bitmap and process the queues.

All sorts of variations on this theme are possible.

D. 

-----Original Message-----
From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> On Behalf Of G. Paul Ziemba
Sent: Thursday, March 21, 2019 2:35 PM
To: vpp-dev@lists.fd.io
Subject: [vpp-dev] N-queue node input

Hi, I'm new to VPP. Have read the documentation on vlib graph node dispatching 
and related areas, as well as looked at vlib/node.[ch] and vlib/node_funcs.h.

I'm developing a new feature arc which will include classifying received 
packets into N streams such that each stream is queued independently for a 
single function at the next node. That is, the next node will process frames 
that are batches of a single stream at a time, and queue depth can be managed 
per-stream.

It seems this might be accomplished by registering N nodes (dynamically) at 
run-time, each node having the same .function and other fields but unique .name 
fields (e.g., "name01", "name02", ..., "nameNN"): I think this will set up 
distinct input frame queues for each such node.

Is there a better way to accomplish this N-queue pattern? 

thanks!
--
G. Paul Ziemba
FreeBSD unix:
11:36AM  up 144 days, 20:40, 15 users, load averages: 0.09, 0.25, 0.27
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#12608): https://lists.fd.io/g/vpp-dev/message/12608
Mute This Topic: https://lists.fd.io/mt/30699236/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to