Hello all,

Is there any alternative to memif, that would allow packets from VPP to be
passed to another DPDK application process without any memcpy?

The DPDK supports multi-process where the primary process and secondary
processes can share the same mempool/bufpool (disabling ASLR is required).

Since VPP includes/ DPDK and launches as primary DPDK process (in
eal-init), would it not be possible to put the vlib_buffer packets on a
rte_ring which would allow the secondary DPDK processes to read/write the
packet/vlib_buffer payload (assuming vlib header is untouched).

I know this topic has been addressed or discussed in the past. I believe
there are use-cases where there are two datapath containers one running VPP
and the other a "trusted" datapath engine (DPDK or non-DPDK) and requires a
high performance zero copy packet or memory interface between them. The
memif performs memcpy on tx and rx to vlib buffer. Is there any way we can
avoid such memcpy and share packets between two datapath
containers/processes.

DPDK supports external buffer/memory management and I believe VPP uses its
own buffer/memory management and does not use DPDK default huge-pages
mempool. Could you clarify. Can VPP/VLIB support external buffer
management? E.g. exporting BSD mbufs to VLIB buffer and then to DPDK mbuf.

Could VPP buffer management and memif experts (Damjan, Neale, Dave B,
Benoit et al) and anybody else could provide some guidance in this regard?
Do you foresee the need for a high-performance zero copy alternative to
memif when the processes are trusted and can share memory? If so, what
directions can one proceed?

Really appreciate your help.

Thank you very much

- Pranab K Das
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#21426): https://lists.fd.io/g/vpp-dev/message/21426
Mute This Topic: https://lists.fd.io/mt/91252298/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