A benchmarking methodology for evaluating software switch performance for NFV

Interest in software networking has grown significantly since the introduction of Network Function Virtualization (NFV). Software switches are used in NFV to steer traffic between different virtualized network functions and physical Network Interface Cards (NICs). It is becoming more and more important to objectively evaluate and compare the performance of the multiple alternative implementations that have recently been proposed. A comprehensive performance analysis is still missing for two main reasons: (i) the amount of time required to configure and compare all such tools is enormous; (ii) it is very difficult to define a proper methodology to compare different solutions in a fair manner. In this paper we propose a methodology based on four simple yet representative test scenarios used to evaluate the performance of software switches. We apply this methodology to measure throughput and latency metrics for 6 state-of-the-art software switches namely, OVS-DPDK, snabb, BESS, FastClick, VPP and netmap VALE. Our work constitutes a first step to building a better understanding of design tradeoffs and identifying performance bottlenecks.

[1]  Martín Casado,et al.  The Design and Implementation of Open vSwitch , 2015, NSDI.

[2]  Scott Shenker,et al.  E2: a framework for NFV applications , 2015, SOSP.

[3]  Peng Wang,et al.  Benchmarking NFV Software Dataplanes , 2016, ArXiv.

[4]  Daniel Raho,et al.  SnabbSwitch user space virtual switch benchmark and performance optimization for NFV , 2015, 2015 IEEE Conference on Network Function Virtualization and Software Defined Network (NFV-SDN).

[5]  Roberto Bifulco,et al.  ClickOS and the Art of Network Function Virtualization , 2014, NSDI.

[6]  Tianzhu Zhang,et al.  FlowMon-DPDK: Parsimonious Per-Flow Software Monitoring at Line Rate , 2018, 2018 Network Traffic Measurement and Analysis Conference (TMA).

[7]  Sylvia Ratnasamy,et al.  SoftNIC: A Software NIC to Augment Hardware , 2015 .

[8]  Sylvia Ratnasamy,et al.  Evaluating Software Switches : Hard or Hopeless ? , 2018 .

[9]  Laurent Mathy,et al.  Fast userspace packet processing , 2015, 2015 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[10]  Ioannis Lambadaris,et al.  Characterizing the Performance of Concurrent Virtualized Network Functions with OVS-DPDK, FD.IO VPP and SR-IOV , 2018, ICPE.

[11]  Michio Honda,et al.  HyperNF: building a high performance, high utilization and fair NFV platform , 2017, SoCC.

[12]  Giuseppe Lettieri,et al.  VALE, a switched ethernet for virtual machines , 2012, CoNEXT '12.

[13]  Massimo Gallo,et al.  ClickNF: a Modular Stack for Custom Network Functions , 2018, USENIX Annual Technical Conference.

[14]  Daniel Raumer,et al.  Performance characteristics of virtual switching , 2014, 2014 IEEE 3rd International Conference on Cloud Networking (CloudNet).

[15]  Daniel Raumer,et al.  MoonGen: A Scriptable High-Speed Packet Generator , 2014, Internet Measurement Conference.

[16]  Giuseppe Lettieri,et al.  Flexible virtual machine networking using netmap passthrough , 2016, 2016 IEEE International Symposium on Local and Metropolitan Area Networks (LANMAN).

[17]  Giuseppe Lettieri,et al.  A Survey of Fast Packet I/O Technologies for Network Function Virtualization , 2017, ISC Workshops.

[18]  Leonardo Linguaglossa,et al.  High-speed data plane and network functions virtualization by vectorizing packet processing , 2019, Comput. Networks.

[19]  Bo Han,et al.  ParaBox: Exploiting Parallelism for Virtual Network Functions in Service Chaining , 2017, SOSR.