DPDK usage discussions
 help / color / mirror / Atom feed
* Split traffic between the Linux stack and DPDK application
@ 2024-01-29 16:09 Pavel Vazharov
  2024-01-29 17:21 ` Stephen Hemminger
  0 siblings, 1 reply; 2+ messages in thread
From: Pavel Vazharov @ 2024-01-29 16:09 UTC (permalink / raw)
  To: users

[-- Attachment #1: Type: text/plain, Size: 612 bytes --]

Hi there,

A DPDK can run on top of XDP sockets and use custom XDP program to split
the traffic between the Linux stack and the DPDK application. This way
still allows zero copy between the kernel and the DPDK application.
Is there another zero-copy way to achieve redirecting some part of the
traffic to the Linux kernel and another to a DPDK application?
For example, AFAIK I can run the DPDK application and redirect packets from
inside to the Linux stack via the DPDK KNI functionality but it'll be much
slower because it'll require packets copying and context switch (if I'm not
mistaken).

Regards,
Pavel.

[-- Attachment #2: Type: text/html, Size: 715 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Split traffic between the Linux stack and DPDK application
  2024-01-29 16:09 Split traffic between the Linux stack and DPDK application Pavel Vazharov
@ 2024-01-29 17:21 ` Stephen Hemminger
  0 siblings, 0 replies; 2+ messages in thread
From: Stephen Hemminger @ 2024-01-29 17:21 UTC (permalink / raw)
  To: Pavel Vazharov; +Cc: users

On Mon, 29 Jan 2024 18:09:28 +0200
Pavel Vazharov <freakpv@gmail.com> wrote:

> Hi there,
> 
> A DPDK can run on top of XDP sockets and use custom XDP program to split
> the traffic between the Linux stack and the DPDK application. This way
> still allows zero copy between the kernel and the DPDK application.
> Is there another zero-copy way to achieve redirecting some part of the
> traffic to the Linux kernel and another to a DPDK application?
> For example, AFAIK I can run the DPDK application and redirect packets from
> inside to the Linux stack via the DPDK KNI functionality but it'll be much
> slower because it'll require packets copying and context switch (if I'm not
> mistaken).
> 
> Regards,
> Pavel.

There is no generic solution. It is possible with some hardware drivers
like Mlx. Intel was working on bifurication as well but seems to have abandoned it.

KNI is no longer part of DPDK, and it did a copy (hidden in kernel).
The problem with zero copy from kernel point of view is how to deal with packet
lifetime.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-01-29 17:21 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-29 16:09 Split traffic between the Linux stack and DPDK application Pavel Vazharov
2024-01-29 17:21 ` Stephen Hemminger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).