Open vSwitch for NFV
This project proposes:
The current release of OPNFV (Arno) enables continuous integration, automated deployment and testing of components from upstream projects such as Ceph, KVM, OpenDaylight, OpenStack and Open vSwitch. The combination of these provides an initial build of the NFV Infrastructure (NFVI) and Virtual Infrastructure Manager (VIM) components of the ETSI NFV architecture.
Open vSwitch is an open source virtual switch providing Virtual Networking services in the NFVI. It provides network connectivity from Virtual Machines (VMs) to the physical network and between Virtual Machines. The default deployment of Open vSwitch in OPNFV implements the software fast path as a Linux Kernel Module. This kernel module caches recently used flows in order to quickly forward subsequent packets in the same flow space. The kernel datapath, however, is not necessarily designed or targeted to meet the requirements for the NFVI, and we need to make collaborative efforts toward realizing NFV requirements. Although Open vSwitch gives adequate performance in many cloud and enterprise use cases, when used in Telco NFV use cases, the performance may not be sufficient in terms of throughput and latency, particularly for small packet sizes.
Technologies such as DPDK and ODP have shown that running packet processing workloads in userspace software can improve the performance in terms of throughput and latency. The advantage of this is apparent in recent work done on the Open vSwitch userspace forwarding plane which has shown 10x improvement in packet throughput with respect to the Open vSwitch kernel space dataplane. This is demonstrated via the OPNFV vsperf project.
This project intends to co-exist with the Kernel Space OVS deployment allowing the users of OPNFV to select which version of OVS to deploy in their environment. It will follow the relevant test procedures as specified in the test and integration projects in the category.
The Open vSwitch kernel datapath does not provide the highest available software performance using current technologies. The scope of this work is to enable the software-accelerated userspace datapath as a deployable component in the OPNFV build in order to improve the performance of the NFVI.
Test and Benchmarking
Integration will require that all relevant functional tests that pass in the OPNFV test infrastructure will also pass when the software-accelerated userspace Open vSwitch is deployed. The OPNFV vsperf project will report any performance differences between the two deployment options.
If any gap in functionality or performance is identified during the Test and Benchmarking phase, those features will be developed and upstreamed into the openvswitch.org project.
When the software-accelerated userspace datapath is available as a deployment option in OPNFV, it is envisaged that further development activities will be required such as:
This project plans to leverage existing test infrastructure
For any additional functionality required in Open vSwitch, the relevant Open vSwitch documentation will need to be updated (e.g. man pages, install guides, etc)
Relevant OPNFV release documentation will also need to be updated:
Name and affiliation of the project leader
Names and affiliations of the committers
Names and affiliations of any other contributors
Use the above information to create a key project facts section on your project page
Project Name: Project Name (repo name)
Jira Project Name: Same as Project name
Jira Project Prefix: [10 Characters max [A-Z] ]
mailing list tag [Should match Jira Project Prefix]
Link to TSC approval: Example http://meetbot.opnfv.org/meetings/opnfv-meeting/2015/opnfv-meeting.2015-03-03-15.01.html
Link to approval of additional submitters: Example http://meetbot.opnfv.org/meetings/opnfv-meeting/2015/opnfv-meeting.2015-03-03-15.01.html