> From: Thomas Monjalon [mailto:tho...@monjalon.net] > Sent: Saturday, April 4, 2020 9:58 PM > > 04/04/2020 20:30, Andrzej Ostruszka [C]: > > Thomas, > > > > I have replied to the other mail, here I just want to confirm, that > I'm > > fine with the proposed "general messaging" which other libraries (IF > > Proxy including) could utilize. > > > > See also below. > > > > On 4/3/20 7:19 PM, Thomas Monjalon wrote: > > > 02/04/2020 15:48, Andrzej Ostruszka [C]: > > >> On 3/26/20 6:42 PM, Andrzej Ostruszka wrote: > > [...] > > >> Would that be easier/better to register queue together with a > bitmask of > > >> event types that given queue is accepting? Than during setup > phase > > >> application would select just one queue to handle "global" events > and > > >> the logic of event handling for lcores should be simplier. > > >> > > >> Let me know what you think. > > > > > > I think we want to avoid complicate design. > > > So let's choose between callback and message queue. > > > I vote for message queue because it can handle any situation, > > > and it allows to control the context of the event processing. > > > The other reason is that I believe we need message queueing for > > > other purposes in DPDK (ex: multi-process, telemetry). > > > > > > You start thinking about complex message management. > > > And I start thinking about other usages of message queueing. > > > So I think it is the right time to introduce a generic messaging in > DPDK. > > > Note: the IPC rte_mp should be built on top of such generic > messaging. > > > > Do you have also inter-lcore communication in mind here? Or just > > "external" world to "some DPDK controller/dispatcher" and how that is > > passed to other cores is an application writer problem. > > I was thinking at communication with: > - DPDK event from random context > - secondary process > - external application > - remote application > > In all cases, I thought the message receiver would be the master core.
That would also be my assumption. > But you are probably right that targeting a specific core may be > interesting. > > > > If you agree, we can start a new email thread to better discuss > > > the generic messaging sub-system. > > > > Yes, lets talk about that. > > Let's start with the requirements (as above). > I'll write such email soon. > > > > > I describe here the 3 properties I have in mind: > > > > > > 1/ Message policy > > > One very important rule in DPDK is to let the control to the > application. > > > So the messaging policy must be managed by the application via DPDK > API. > > > > > > 2/ Message queue > > > It seems we should rely on ZeroMQ. Here is why: > > > http://zguide.zeromq.org/page:all#Why-We-Needed-ZeroMQ > > > > > > 3/ Message format > > > I am not sure whether we can manage with "simple strings", TLV, > > > or should we use something more complex like protobuf? > > >