<div class='slidealt'>Experience kvm <a title='virtualization for embedded heterogeneous arm core platforms' href='/en/products'>virtualization extensions</a></div> <div class='slidealt'>Benefit from custom <a title='kvm on arm services full virtualization' href='/en/services'>virtualization services</a></div> <div class='slidealt'>KVM on ARMv7 and ARMv8 <a title='kvm-on-arm open source smu extensions' href='/en/solutions/guides/vfio-on-arm/'>IOMMU full virtualization</a></div> <div class='slidealt'>Virtualization research projects <a title='ARM multicore kvm open source' href='/en/research'>in cloud and embedded systems</a></div> <div class='slidealt'>Virtualization solutions for heterogeneous <a title='ARMv7-ARMv8 virtualization open source solutions' href='/en/solutions'>ARM multicore systems</a></div>

Virtual Open Systems Scientific Publications

A novel pflua-based OpenFlow implementation for VOSYSwitch

A novel pflua-based OpenFlow implementation for VOSYSwitch


The Third IEEE International Conference on Fog and Mobile Edge Computing (FMEC 2018), Barcelona, Spain.


Software Switch, OpenFlow, pflua, LuaJIT, software switch benchmark, VOSYSwitch, OVS-DPDK.


J.Fanguede, M.Paolino, D.Dimitrov and D.Raho.


This work has received funding from the European Union's Horizon 2020 research and innovation program, 5GCity, under grant agreement No 761508. The work presented in this paper reflects only authors' view and the European Commission is not responsible for any use that may be made of the information it contains.


Software Defined Network (SDN) along with Network Function Virtualization (NFV) paradigms are emerging as a viable alternative to traditional network architecture. The Fog and Mobile Edge computing network and the Internet of Things infrastructure are adopting these concepts as well. In this context, virtual and SDN-enabled switches are crucial. This paper presents the novel OpenFlow software implementation of VOSYSwitch, the high performance virtual switch solution developed by Virtual Open Systems. Written in Lua, such OpenFlow implementation takes advantage of the library pflua and of the LuaJIT just-in-time trace compiler to translate OpenFlow flows into Lua code via the PCAP Filter language. As a consequence, the code executed to perform the flow matching and actions is generated on demand and tailored to the flow entries of the forwarding tables of the dataplane. Benchmarking activities, whose results are included in this paper, have been performed to compare this new OpenFlow switch implementation with the de-facto standard OpenFlow switch solution OVS-DPDK. The results show that VOSYSwitch OpenFlow implementation is superior to OVS-DPDK for environments with simple flow configurations and low number of entries, typical of Edge Computing.


Virtual switch solutions with configurable data-plane are one of the key component of Software Defined Networking (SDN) [1] and Network Function Virtualization (NFV) [2]. These concepts are also emerging in Edge and Fog Computing [3][4] and Internet of Things (IoT) applications, where they bring a much more flexible network architecture [5]. One of the most common way to control an SDN-enabled switch is the OpenFlow [6] protocol, which enables the possibility to add, update, remove and monitor the switch forwarding flow tables and their flow rules. Thus, OpenFlow-enabled virtual switches are becoming central elements of modern network architecture, including edge infrastructures.

In this paper we present the novel OpenFlow implementation added to VOSYSwitch [7], the Virtual Open Systems virtual switch solution based on the open-source framework Snabb [8][9]. Such OpenFlow implementation (based on specification version v1.3 [10]) has the distinctive particularity to translate the OpenFlow flow entries dynamically in Lua language via the PCAP Filter language [11] (also used in the popular tcpdump tool).

For such translation, it leverages on the fast Lua network packet filtering library pflua [12], which is able to compile PCAP filters, and on the just-in-time trace compiler LuaJIT [13]. It is worth mentioning, that this translation concept can be applied to other network standards equivalent to OpenFlow, such as P4 [14]. Additionally a set of benchmark is included to showcase the performance reached by this OpenFlow implementation.

The remaining part of the paper is organized as follows: Related works are presented in Section II and in Section III the VOSYSwitch OpenFlow bridge architecture and implementation is described. Section IV provides performance results and analysis while Section V concludes the paper.

Contributed slides presentation

The slides presented at this conference are made publicly available.

Access the full content of this publication

Login or register to access full information