Open vSwitch is a production quality, multilayer virtual switch.
In this talk we discuss the integration of the DPDK dataplane into Open vSwitch. We examine the performance improvements when using the DPDK dataplane in Open vSwitch and the challenges of using an alternative dataplane from the Linux kernel.
Currently DPDK presents the best alternative high speed software data
path for support of high speed interfaces in OVS. We have seen DPDK/OVS
provide throughput that can compete with hardware switching fabrics at
close to 40Gb line rates. However, DPDK presents challenges when
compared with the Linux kernel datapath. DPDK lacks refinements
available from over 20 years of development of Linux kernel networking
and devices. Different semantics in DPDK for provisioning interfaces,
the user experience in that they need architecture knowledge for optimum
performance, and a challenging debugging environment are a few of these
challenges.
For those less familiar, we will begin our talk with a discussion of how
DPDK integrates with OVS by way of the netdev API. We will cover how to
use, deploy and debug OVS with DPDK. We will cover issues of achieving high
performance in real-world scenarios such as host-guest, and guest to guest.
Finally, we talk about the future of supporting ever higher demands for
fast packet switching in OVS and the role of DPDK and other paradigms
for acceleration.