User Tools

Site Tools


open_vswitch_for_nfv

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
open_vswitch_for_nfv [2015/07/02 09:40]
Mark D. Gray
open_vswitch_for_nfv [2016/03/04 11:41]
Simona Coppola [Proposed Release Schedule:]
Line 1: Line 1:
-OPNFV Project ​Proposal Template +==== Project ​Name====
-Draft version1.0 (June 16, 2015)+
  
-Project Name: +  * Proposed name for the project: ​''​Open vSwitch for NFV''​ 
-Proposed name for the project: ​project-name +  ​* ​Proposed name for the repository: ​''​ovs_dev_nfv''​ 
-Proposed name for the repository: ​N/A +  ​* ​Project ​Categories: Collaborative Development 
-Project ​Category +==== Project description: ​==== 
-o Collaborative Development + 
-Project description:​ +This project proposes:\\ 
-This project proposes: +  ​* ​Modifying the OPNFV build to include a deployment option for the software-accelerated ​userspace Open vSwitch build. This change will significantly ​improve ​the performance of the NFVI for network I/O. 
-Modifying the OPNFV build to include a deployment option for the userspace Open vSwitch build. This change will significantly ​increase ​the performance of the NFVI for network I/O.  +  ​* ​Future work that will encompass collaborative development within the Open vSwitch project to improve ​the performance of the software-accelerated ​userspace Open vSwitch and increasing its suitability for Telco NFV deployments. 
-Future work that will encompass collaborative development within the Open vSwitch project to increase ​the performance of the userspace Open vSwitch and increasing its suitability for Telco NFV deployments. + 
-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. +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 ​enabling ​NFV features. 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. +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.  +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 test procedures as specified in the test and integration projects in the category. + 
-Scope: +{{ ::​ovs4nfv.png |}} 
-Problem Statement + 
-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 userspace datapath as a deployable component in the OPNFV build in order to improve the performance of the NFVI. +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. 
-Test and Benchmarking + 
-Integration will require that all relevant functional tests that pass in the OPNFV test infrastructure will also pass when userspace Open vSwitch is deployed. +==== Scope: ​==== 
-The OPNFV vsperf project will report any performance differences between the two deployment options + 
-Feature Development+__Problem Statement__\\ 
 +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. 
 + 
 +__Feature Development__\\
 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. 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.
-Future Work 
-When the userspace datapath is available as a deployment option in OPNFV, it is envisaged that further development activities will be required: 
-1. Features and bugfixes may be required for continued support of the Open vSwitch userspace datapath as a deployable build option within the OPNFV build. 
-2. As NFVI Networking performance requirements become apparent, from OPNFV Yardstick or OPNFV Vsperf for example, this project will collate these requirements in order to drive performance enhancements into the Open vSwitch userspace datapath. 
-3. Further NFVI Networking functional requirements may become apparent requiring enhancements to be made to the Open vSwitch userspace datapath. 
-Testability:​ ''​(optional,​ Project Categories: Integration & Testing)''​ 
-• This project plans to leverage existing test infrastructure 
-o All relevant test cases that successfully complete when OPNFV is deployed using the Open vSwitch kernel space datapath will be required to complete with the userspace datapath. 
-Documentation:​ ''​(optional,​ Project Categories: Documention)''​ 
-• 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: 
-o User Guide 
-o Function Test Guide 
-o Automated deployment guide 
-o OPNFV Release Notes 
-o OPNFV Installation Guide 
-Dependencies:​ 
-• There are currently no similar projects underway in OPNFV or in an upstream project. 
-• There are a number of related projects that deal with requirements (OPNFV Yardstick) and benchmarking (OPNFV Vsperf). 
-• The relevant upstream project that will need to be influenced here is openvswitch.org. 
-• In terms of HW dependencies,​ the aim is to use OPNFV Pharos compatible infrastructure. 
-Committers and Contributors:​ 
-• Name and affiliation of the project leader: 
-• Names and affiliations of the committers 
-• Names and affiliations of other contributors 
-Planned deliverables 
-• Modifications to the OPNFV genesis repository. 
-• Packaged version of the Open vSwitch userspace datapath binary for deployment on Pharos-compliant systems. 
-• Code delivered to the upstream openvswitch.org project enabling functionality required to enable Open vSwitch userspace datapath in OPNFV. 
-• Test report showing compliance with OPNFV test infrastructure 
-Proposed Release Schedule: 
-• Target intersection of integration of the userspace datapath with OPNFV B Release. ​ 
-• Future development work to improve the performance of the userspace datapath will be targeted for later releases. 
  
 +__Future Work__\\
 +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:
 +  - Features and bugfixes may be required for continued support of the Open vSwitch software-accelerated userspace datapath as a deployable build option within the OPNFV build.
 +  - As NFVI Networking performance requirements become apparent, from OPNFV Yardstick or OPNFV Vsperf for example, this project will collate these requirements in order to drive performance enhancements into the Open vSwitch software-accelerated userspace datapath.
 +  - Further NFVI Networking functional requirements may become apparent requiring enhancements to be made to the Open vSwitch software-accelerated userspace datapath.
 +  - May involve changes to upstream components to facilitate deployment of accelerated user space data path infrastructure in the switch interfaces, data paths and bridges as part of NFVI such as OVSDB and OVN.
 +
 +==== Testability: ​ ====
 +
 +This project plans to leverage existing test infrastructure
 +  * All relevant test cases that successfully complete when OPNFV is deployed using the Open vSwitch kernel space datapath will be required to complete with the software-accelerated userspace datapath.
 +
 +==== Documentation:​ ====
 +
 +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:
 +  * User Guide
 +  * Function Test Guide
 +  * Automated deployment guide
 +  * OPNFV Release Notes
 +  * OPNFV Installation Guide
 +
 +==== Dependencies:​ ====
 +
 +  * There are currently no similar projects underway in OPNFV or in an upstream project.
 +  * There are a number of related projects that deal with requirements (OPNFV Yardstick) and benchmarking (OPNFV Vsperf).
 +  * The relevant upstream project that will need to be influenced here is openvswitch.org.
 +  * In terms of HW dependencies,​ the aim is to use OPNFV Pharos compatible infrastructure.
 +
 +==== Committers and Contributors:​ ====
 +__Name and affiliation of the project leader__
 +  * Mark Gray <​mark.d.gray@intel.com>​
 +__Names and affiliations of the committers__
 +  * Mark Gray <​mark.d.gray@intel.com>​
 +  * Joseph Gasparakis <​joseph.gasparakis@intel.com>​
 +  * Billy O Mahony <​billy.o.mahony@intel.com>​
 +  * Hongbo Tianhongbo <​hongbo.tianhongbo@huawei.com>​
 +  * Tom Herbert <​therbert@redhat.com>​
 +__Names and affiliations of any other contributors__
 +  * Mike Lynch <​Michael.a.lynch@intel.com>​
 +  * Robin Giller <​robin.giller@intel.com>​
 +==== Planned deliverables ====
 +
 +  * Modifications to the OPNFV genesis repository.
 +  * Packaged version of the Open vSwitch software-accelerated userspace datapath binary for deployment on Pharos-compliant systems.
 +  * ** Code delivered into the upstream openvswitch.org** project enabling functionality required to enable the Open vSwitch software-accelerated userspace datapath in OPNFV.
 +  * Test report showing compliance with OPNFV test infrastructure
 +
 +==== Proposed Release Schedule: ====
 +  * Target intersection of integration of the software-accelerated userspace datapath with OPNFV B Release. ​
 +  * Future development work to improve the performance of the software-accelerated userspace datapath will be targeted for later releases.
 +
 +==== Release C Planning: ====
 +
 +  * [[Release C_Planning:​Priority list|Release C Project proposal List]]
 +
 +----
 +
 +Use the above information to create a key project facts section on your project page
 +===== Key Project Facts =====
 +
 +** Project Name: ** Project Name (repo name) \\
 +** Repo name: ** \\
 +** Project Category: ** \\
 +** Lifecycle State: ** \\
 +** Primary Contact: ** \\
 +** Project Lead: ** \\
 +** Jira Project Name: ** Same as Project name \\
 +** Jira Project Prefix: ** [10 Characters max [A-Z] ] \\
 +** mailing list tag ** [Should match Jira Project Prefix] \\
 +** Committers: ** \\
 +foo@bar.com \\
 +baz@qux.com \\
 +** 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 \\
open_vswitch_for_nfv.txt · Last modified: 2016/03/04 11:41 by Simona Coppola