VSperf Confirms 6WIND Virtual Accelerator™ Beats OVS-DPDK Performance

Virtualization is everywhere and virtual switches are the cornerstone to connect Virtual Machines (VMs) to virtual or physical networks.

As the network load for Virtual Network Functions (VNFs) increases, the virtual switch becomes the bottleneck for the entire Network Function Virtualization Infrastructure (NFVI), leaving high performance VNFs stuck in the mud.

In order to mitigate this risk and offer near bare-metal performance for VNFs running in VMs, operators can be tempted to bypass the virtual switch and offer direct host PCI access to the VNFs using techniques such as SR-IOV and PCI Passthrough. This approach increases performance but reduces virtualization flexibility.

To keep virtualization flexibility with performance, we will compare the following two software approaches that accelerate the Linux virtual switch, called Open vSwitch (OVS), provided by openvswitch.org.

  • 6WIND Virtual Accelerator: a fully supported, DPDK-based software data plane available since 2013.
  • OVS-DPDK: An accelerated data plane based on DPDK available since 2016.

While both share the same objective to accelerate OVS, 6WIND Virtual Accelerator also provides additional features, which I summarize following the test results below.

Getting started, on any given day, a familiar conversation between 6WIND and our customers is:

     Customer: “How do you compare in term of performance with regards to OVS-DPDK?”

     6WIND: “Better!”

     Customer: “How much better?”

     6WIND: “Hmmm…”

It’s not an easy answer as it is difficult to compare 6WIND Virtual Accelerator performance numbers produced in our lab to OVS-DPDK numbers available on the Internet; platforms are different, configurations are different, traffic generators are different and software generations are different.

To tackle this problem, 6WIND identified OPNFV’s project, VSperf, which is an open source automated test-framework that allows us to compare virtual switch data plane performance in an “apples-to-apples” fashion.

Our comparative tests with VSperf addressed all these requirements:

  • Same hardware while using identical hardware resources
  • Same virtual switch configuration
  • Same traffic generator
  • Comparable software generation

So we started VSperf Virtual Accelerator integration to get a fair, reproducible apples-to-apples comparison.

Device Under Test (DUT):

  • Linux: Ubuntu 16.04: 4.4.0-109-generic #132-Ubuntu with boot option default_hugepagesz=1G hugepagesz=1G hugepages=10
  • Processor: Intel(R) Xeon(R) Platinum 8170 CPU @ 2.10GHz
  • NICs: Intel Corporation Ethernet 10G 2P X520 Adapter
  • 6WIND Virtual Accelerator: 1.7.0 (April 2018 release)
  • OVS-DPDK OVS 2.9 (1d7f018) + DPDK 17.11

Traffic Generator (TGEN):

  • Linux: Ubuntu 16.04: 4.4.0-109-generic #132-Ubuntu
  • Processor: Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz
  • NICs: Intel Corporation Ethernet 10G 2P X520 Adapter
  • Trex version 2.36

All tests results are for 64 byte packets using 1 core and 2 cores respectively (hyperthreading enabled).

 

1) Physical to Physical

This first test scenario is to validate the virtual switch raw performance. You will note it’s not a realistic use case as no VNF is running.

 

Performance is shown in Mpps according to the number of flows using 1 core (hyperthreading enabled).

OVS-DPDK’s cache implementation keeps a steady performance with up to 1024 flows but performance decreases by 40% with more than 1024 flows.

6WIND Virtual Accelerator performance is 66% higher with one flow configured and we maintain 80% performance improvement using 204800 flows.

 

2) Physical to VM to Physical

This second scenario uses testpmd, a DPDK example application that does pure packet forwarding, as the VNF. The objective is to make sure the VNF is not limiting the virtual switch performance. In a real scenario the VNF could be a load balancer, a firewall, an IPsec gateway or any VNF forwarding traffic.

6WIND Virtual Accelerator outperforms OVS-DPDK by 21% in this scenario.

 

3) Physical to VM to VM to Physical

This third scenario uses two VNFs connected through the virtual switch of the same host. This happens in service chaining scenarios where the traffic is processed by different VNFs implementing different network functions.

6WIND Virtual Accelerator outperforms OVS-DPDK by 32% in this scenario. Virtual Accelerator also scales almost linearly with the number of cores while OVS-DPDK cannot scale with additional cores.

 

4) 6WIND Virtual Accelerator Key Differentiators: Features and Performance

Today we’ve shown that Virtual Accelerator delivers leading performance for DPDK-based virtual networking software. But there are feature advantages to make your life easier as well:

  • Linux compatibility for easy integration with Linux applications and tools beyond OVS-DPDK, which is limited to OVS-only offload
  • Full-featured Layer 2/3 networking and switching including Flow-based (OpenFlow) virtual switching and packet processing
  • Complete management tools, troubleshooting and monitoring using YANG-based telemetry (https://github.com/6WIND/supervision-grafana)
  • Acceleration of VNFs using a unique NFV boost mode and Layer 2-4 offload integration for the high performance needs of IT-based VMs
  • Dataplane acceleration for SDN Controllers including Nokia Nuage, OpenDaylight and Calico.

6WIND Virtual Accelerator combines professional DPDK software expertise, the industry’s highest performance, Linux compatibility, a rich networking feature set, management and support.

Contact us today at www.6wind.com for a full copy of the performance report and to evaluate 6WIND Virtual Accelerator for your virtual networking platform.


Damien Routier is the Support Team Manager at 6WIND.