aboutsummaryrefslogtreecommitdiffstats
path: root/vswitches
AgeCommit message (Collapse)AuthorFilesLines
2016-02-03Add OVS tunnel encapsulation performance testDino Simeon Madarang3-13/+114
Measure OVS DPDK and native VXLAN/GRE/GENEVE encapsulation performance. This patch creates a new deployment scenario, Overlay_P2P. The DUT is configured as a TEP (Tunnel Endpoint) which performs encapsulation of frames and sends traffic to the 2nd traffic generator port. The traffic generator in this case receives an encapsulated frame. No decapsulation is performed in this testcase. Introduce a vsperf param, --run-integration, to filter tests to integration tests. When running integration tests, variables defined in the directory conf/integration/*conf as well as the conf/*.conf are available. This test case requires DPDK 2.1.0 and OVS master - 6bb4a18 or newer. Change-Id: Ide2f418909d647119388df9b30d0d0a3656b4e53 JIRA: VSPERF-180 Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com>
2016-01-21testcase: scalability - configurable installation of flows to the vswitchMartin Klozik3-5/+12
Stream specific flows can be pre-installed into the vswitch based on the value of testcase specific configuration option "Pre-installed Flows". In case, it is set to 'Yes', then specific flow for each stream will be inserted into the switch. Otherwise only generic flows will be installed. Default value of "Pre-installed Flows" is set to 'No'. Its value can be overridden by CLI parameter pre-installed_flows. This configuration parameter is an enhancement of "MultiSream" feature and it is ignored if "MultiStream" is disabled. Python module 'netaddr' is required by this implementation and it has been added to requirements.txt file. Change-Id: I8a17577a702bf2be2753134eb203b936a87fc2e5 JIRA: VSPERF-83 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-01-12vswitches: Remove datapath after stopping OVSDino Simeon Madarang1-1/+4
Remove the datapath that OVS creates, ovs-system, (can be viewed by ip link) after running OVS vanilla tests. Change-Id: I087c7b3f5afa546258227939ffcb38f0192f0d98 JIRA: VSPERF-175 Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2015-11-03bugfix of Vanilla OVS testing scenariosMartin Klozik1-1/+0
Automatic selection of OVS and DPDK directories must be performed before initialization of modules is called. Otherwise modules will use wrong values with unpredictable results. Default directory values have been changed to point to sources build by make. Clean&sweep of directory usage was performed. Configuration file for pylint has been renamed to follow pylint naming convention. Change-Id: I42c89f8890c021f0062b478a856ae0113f1245fb JIRA: VSPERF-121 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com> Reviewed-by: Gene Snider <eugene.snider@huawei.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Tv Rao <tv.rao@freescale.com>
2015-10-28Stop OVS from generating misleading add-br errorsDino Simeon Madarang3-7/+13
Create bridge and set datapath_type in 1 transaction to prevent OVS from generating misleading error messages which jenkins considers as build errors. Update vswitch interface to include optional parameters. Change-Id: I668f474ea909b284f3726807aab42d52ae2fb504 JIRA: VSPERF-122 Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Gene Snider <eugene.snider@huawei.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Radek Zetik <radekx.zetik@intel.com>
2015-10-21Add Pylint to VSPERF commit gateMartin Klozik1-1/+1
Initial pylint config file has been created to follow current code structure and design. A few issues have been fixed, so currently 56 of 67 files have rating 10/10. There are still issues to be fixed, mainly TODOs/FIXMEs and missing impelentation of abstract class members. Change-Id: Icf5b12c2150258f8ac657f8d50b47a697d1660a0 JIRA: VSPERF-91 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com> Reviewed-by: Gene Snider <eugene.snider@huawei.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Tv Rao <tv.rao@freescale.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2015-10-20Implement support of 'insmod' and 'modprobe' commands into ModuleManagerMartin Klozik1-2/+2
Module manager has been enhanced to support both 'insmod' and 'modprobe' commands for kernel module insertion. In case, that .ko suffix is detected then insmod will be used otherwise modprobe will be called. This allows user to specify full path to each module. For example vanilla ovs module can be defined as "OVS_DIR_VANILLA + 'datapath/linux/openvswitch.ko'" to load kernel module matching OVS vanilla source tree version. Change-Id: Ib8d16eca84449ad34d6b307ab836f58d2f0d341b JIRA: VSPERF-116 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2015-10-12Enable PVP and PVVP deployments for Vanilla OVSMartin Klozik3-2/+64
Support for PVP and PVVP scenerios using Vanilla OVS was added. VMs are configured to forward traffic between virtual interfaces by standard linux capabilities. Traffic generator script was updated to accept MAC and IP address configuration to allow VM forwarding configuration. VSPERF-66, VSPERF-70 Change-Id: Ia70ab6be547b39928a1eae319faba779d4e29284 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com> Reviewed-by: Gene Snider <eugene.snider@huawei.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Tv Rao <tv.rao@freescale.com>
2015-10-07Enable PVVP deployment for DPDK Vhost User and Vhost CuseMartin Klozik1-3/+3
Generic PVVP deployment support has been added. Two new testcase scenarios for throughput and back2back tests with PVVP deployment were added. Original implementation of PVP has been refactored Following files were affected: modified: conf/01_testcases.conf modified: conf/02_vswitch.conf modified: conf/04_vnf.conf modified: core/__init__.py modified: core/component_factory.py modified: core/loader/loader_servant.py modified: core/vnf_controller.py deleted: core/vnf_controller_p2p.py deleted: core/vnf_controller_pvp.py modified: core/vswitch_controller_p2p.py modified: core/vswitch_controller_pvp.py new file: core/vswitch_controller_pvvp.py modified: docs/to-be-reorganized/NEWS.rst modified: docs/to-be-reorganized/quickstart.rst modified: src/dpdk/dpdk.py modified: src/ovs/ofctl.py modified: testcases/testcase.py modified: tools/tasks.py new file: vnfs/qemu/qemu.py new file: vnfs/qemu/qemu_dpdk.py modified: vnfs/qemu/qemu_dpdk_vhost_cuse.py modified: vnfs/qemu/qemu_dpdk_vhost_user.py modified: vnfs/vnf/vnf.py modified: vswitches/ovs_dpdk_vhost.py Change-Id: Ib6869a29337a184cb58c57fd96bba1183aba00ab JIRA: VSPERF-68, VSPERF-69 Signed-off-by: Martin Klozik (martinx.klozik@intel.com) Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2015-09-01vswitches: Fix error in loading eventfd moduleDino Simeon Madarang1-4/+5
Load eventfd only when vhost-cuse is specified as the guest access method. This commit also includes quickstart update for executing PVP tests. JIRA: VSPERF-59 Change-Id: I41f116ab1c42f704026567a269922c07994b15a5 Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com> Reviewed-by: Tv Rao <tv.rao@freescale.com> Reviewed-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2015-08-25Merge "vswitches: Affinitize vswitch threads for OVS-DPDK"Maryam Tahhan1-1/+10
2015-08-25vswitches: Affinitize vswitch threads for OVS-DPDKDino Simeon Madarang1-1/+10
JIRA: VSPERF-64 Change-Id: I7cefd05479da6fe17357da4da558f466175dd6fc Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com>
2015-08-25vnfs: Enable PVP using vhost-cuseDino Simeon Madarang1-3/+18
Enable PVP testing using vhost-cuse as guest access method Recent changes: * Move NEWS.md changes to NEWS.rst * Update comment to vhost-cuse * Restore config back to checkout state after make * Merge OPNFV 1092 updates * Add PVP-vhost-cuse to NEWS.md * Add comment/example to GUEST_CORE_BINDING * Move hardcoded values to conf/04_vnfs.conf * Set default VNF to QemuDpdkVhostCuse * Compile eventfd_link if VHOST_USER=n * Use MAC and PCI address from conf * Use vhost method in conf to properly set interface type JIRA: VSPERF-59 Change-Id: Ib1159e216f3e25b9971c0935969680582683916b Signed-off-by: Madarang, Dino Simeon <dino.simeonx.madarang@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2015-08-18vnfs: Enable PVP using vhost-userDino Simeon Madarang1-6/+8
Enable booting of a VM with DPDK and run testpmd for PVP testing. * Added throughput and back2back tests with pvp deployment scenario in 01_testcases.conf * PVP requires DPDK 2.0 with VHOST_USER enabled and QEMU 2.2.0 * Tested on CentOS7 and Fedora 20 * Fix conflict with change 1078 Recent Changes: * Fix merge conflict (testcase.py and testcases.conf) * Remove QEMU_DIR. User must set QEMU_BIN * Set bidir traffic to True * Add flow for bi-directional traffic * Use working OVS_TAG ad2e649834be20dd01b1632799fe778106a96a2d * Merge change 1096 (src: Add QEMU makefile) * Set virtio-net-pci csum=off and other variables to off * Move hardcoded values to conf/* JIRA: VSPERF-56 Change-Id: I4ad184531064855493483d9833a7722c9f7d3576 Signed-off-by: Madarang, Dino Simeon <dino.simeonx.madarang@intel.com> Signed-off-by: Meghan Halton <meghan.halton@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
2015-08-06Vanilla OVS support implementationMichal Weglicki2-1/+134
JIRA: VSPERF-57 This patch implements Vanilla OVS support.It contains: * New IVswitch implementation: OvsVanilla, * New configuration contants, * New mandatory configuration variable: VSWITCH_VANILLA_PHY_PORT_NAMES for Vanilla OVS has been added, * Virtual ports are not yet implemented, * Some kernel modules wrapping methods has been moved from dpdk.py to tools. * Fixed bug where ovsdb hasn't been killed at the end of test case run on some platforms. Change-Id: I21a0d84dbc4004aae564d5547387a2563f2d1e5b Signed-off-by: Michal Weglicki <michalx.weglicki@intel.com> Reviewed-by: Eugene Snider <Eugene.Snider@huawei.com> Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com> Reviewed-by: Tv Rao <tv.rao@freescale.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2015-06-08framework: Add reworked framework to repoBilly O'Mahony4-0/+317
This commit adds the vSwitch Integration Test Framework whose design, based off TOIT, is outlined in the HLD previously made availiable to the community for review. The design of this framework allows developers to add different implementations of components, specifically vSwitches, Traffic Generators, Metrics Collectors and VNFs, easily. The goal of this design is that all testcases should run regardless of what is "under the hood". This commit adds support for running the framework for a phy to phy RFC2544 testcase only. More testcases will be added by the community. vSwitches supported at this time: * Intel DPDK (r) accelerated OpenvSwitch Traffic Generators supported at this time: * IxNet - IxNetwork Implementation * Ixia - IxExplorer Implementation * Dummy - Manual Implementation Metrics Collectors supported at this time: * Linux Metrics No VNFs are supported at this time but the framework outlines how they should be integrated and provides APIs for them to adhere to. JIRA: VSPERF-27 Change-Id: I312e1a1199487ffee8f824be06cd97d4f793eee0 Signed-off-by: Stephen Finucane <Stephen.Finucane@intel.com> Signed-off-by: Meghan Halton <Meghan.Halton@intel.com> Signed-off-by: Christopher Nolan <Christopher.Nolan@intel.com> Signed-off-by: Maryam Tahhan <Maryam.Tahhan@intel.com> Signed-off-by: Ciara Loftus <Ciara.Loftus@intel.com> Signed-off-by: Mark Kavanagh <Mark.B.Kavanagh@intel.com> Signed-off-by: Cian Ferriter <Cian.Ferriter@intel.com> Signed-off-by: Timo Puha <TimoX.Puha@intel.com> Signed-off-by: Billy O'Mahony <billy.o.mahony@intel.com> Signed-off-by: Michal Weglicki <MichalX.Weglicki@intel.com> Signed-off-by: Rory Sexton <Rory.Sexton@intel.com> Signed-off-by: Ian Stokes <Ian.Stokes@intel.com> Signed-off-by: Kevin Traynor <Kevin.Traynor@intel.com> Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Eugene Snider <Eugene.Snider@huawei.com> Reviewed-by: Aihua Li <aihua.li@huawei.com>
2015-02-04Added baseline project directory layoutAihua Li1-0/+6
Change-Id: I4295fa3cb02b13677662d407dc8f81a16f60110c Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Stephen Finucane <stephen.finucane@intel.com> Reviewed-by: Bin Hu <bh526r@att.com> JIRA: VSPERF-15 Signed-off-by: Aihua Li <aihua.li@huawei.com>