Evaluation of Forwarding Efficiency in NFV-Nodes Toward Predictable Service Chain Performance

The concept of network functions virtualization (NFV) has been embodied in commercial networks over the past years. Software-based virtual network functions have forwarding performance concerns in general, and various acceleration technologies have been developed so far, such as DPDK and vhost-user. Existence of several alternatives requires network engineers or operators to select appropriate technologies; however, no pragmatic criterion exists for constructing high-performance NFV-nodes. From their points of view, a lack of common benchmark and understanding of performance characteristics makes it difficult to predict hop-by-hop performance in a service chain, which results in prevention of NFV deployment in mission-critical networks. In this paper, we clarify performance characteristics of packet forwarding in NFV nodes focusing on three types of acceleration technologies; packet I/O architecture, virtual network I/O, and forwarding engine in a practical stage. We examined three packet I/O architectures (NAPI, netmap, and DPDK), three virtual I/O mechanisms (vhost-net, vhost-user, and SR-IOV), and four practical forwarding programs (Open vSwitch, OVS-DPDK, xDPd-DPDK, and Lagopus) with three referential programs (Linux Bridge, VALE, and L2FWD-DPDK). The experiment was conducted on a 40 GbE environment and we examined two device-under-test machines having different CPU performance. We argue performance characteristics of each technology and give quantitative analyses of the result. The key findings are: 1) CPU core speed has impact on both throughput and latency/jitter; 2) DPDK can allow performance prediction; 3) vhost-user is appropriate for real environment; and 4) OVS-DPDK provides a good combination of performance and functionality.

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

[2]  Lixin Gao,et al.  Europa: Efficient User Mode Packet Forwarding in Network Virtualization , 2010, INM/WREN.

[3]  K. K. Ramakrishnan,et al.  NetVM: High Performance and Flexible Networking Using Virtualization on Commodity Platforms , 2014, IEEE Transactions on Network and Service Management.

[4]  EDDIE KOHLER,et al.  The click modular router , 2000, TOCS.

[5]  Daniel Raumer,et al.  Performance benchmarking of a software-based LTE SGW , 2015, 2015 11th International Conference on Network and Service Management (CNSM).

[6]  Michio Honda,et al.  mSwitch: a highly-scalable, modular software switch , 2015, SOSR.

[7]  Yingwei Luo,et al.  Evaluating and Optimizing I/O Virtualization in Kernel-based Virtual Machine (KVM) , 2010, NPC.

[8]  Georgios Xilouris,et al.  Enhancing VNF performance by exploiting SR-IOV and DPDK packet processing acceleration , 2015, 2015 IEEE Conference on Network Function Virtualization and Software Defined Network (NFV-SDN).

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

[10]  F. Risso,et al.  Assessing the Performance of Virtualization Technologies for NFV: A Preliminary Benchmarking , 2015, 2015 Fourth European Workshop on Software Defined Networks.

[11]  Daniel Raumer,et al.  Assessing Soft- and Hardware Bottlenecks in PC-based Packet Forwarding Systems , 2015 .

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

[13]  KyoungSoo Park,et al.  PacketShader: Massively Parallel Packet Processing with GPUs to Accelerate Software Routers , 2010, NSDI 2010.

[14]  Daniel Raumer,et al.  Performance Exploration of Software-based Packet Processing Systems , 2015 .

[15]  Naoaki Yamanaka,et al.  A high-performance OpenFlow software switch , 2016, 2016 IEEE 17th International Conference on High Performance Switching and Routing (HPSR).

[16]  Daniel Raumer,et al.  Comparison of frameworks for high-performance packet IO , 2015, 2015 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[17]  Sangjin Han,et al.  PacketShader: a GPU-accelerated software router , 2010, SIGCOMM '10.

[18]  Nick McKeown,et al.  OpenFlow: enabling innovation in campus networks , 2008, CCRV.

[19]  Scott O. Bradner,et al.  Benchmarking Methodology for Network Interconnect Devices , 1996, RFC.

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

[21]  Daniel Raumer,et al.  Validated Model-Based Performance Prediction of Multi-Core Software Routers , 2014, PIK Prax. Informationsverarbeitung Kommun..

[22]  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).

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

[24]  Hiroki Nakayama,et al.  A Host-Based Performance Comparison of 40G NFV Environments Focusing on Packet Processing Architectures and Virtual Switches , 2016, 2016 Fifth European Workshop on Software-Defined Networks (EWSDN).

[25]  Luigi Rizzo,et al.  Transparent acceleration of software packet forwarding using netmap , 2012, 2012 Proceedings IEEE INFOCOM.

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

[27]  Luigi Iannone,et al.  Software Switch Performance Factors in Network Virtualization Environment , 2014, 2014 IEEE 22nd International Conference on Network Protocols.