Arnd Bergmann arnd@arndb.de writes:
On Thu, Nov 18, 2021 at 4:05 PM Alex Bennée alex.bennee@linaro.org wrote:
2.6 Open vSwitch routing (Xen) ──────────────────────────────
Here the packets are switched into paravirtualized Xen interfaces by the Dom0 kernel. I'm a little unsure as to what Open vSwitch uses to route stuff and if it's the same as the existing eBPF stuff.
OpenvSwitch and eBPF are different ways of achieving similar goals: with eBPF, a user application can provide a hardcoded fast path for packet manipulation that gets compiled into binary Linux kernel code using a jit, while openvswitch provides a standard way to describe forwarding rules, which can implemented in different ways, including a linux kernel module, or a DPDK application. In the Xen context I think this always implies using the linux kernel module to integrate with the xenback driver. As far as I understand this means you are not using XDP or eBPF in Dom0.
So many ways to route packets in the kernel!
Practically though should we measure the current "native xen" approach or do we want to look at extending the eBPF routing to be able to deliver packets to the Xen PV drivers? My hunch would be as this project is a measuring project we should look at the current approach as it can then inform our next steps.
Arnd