aboutsummaryrefslogtreecommitdiffstats
path: root/tools
AgeCommit message (Collapse)AuthorFilesLines
2015-12-14bugfix: Support paths with user's home shortcutMartin Klozik2-4/+5
VSPERF will explicitly expand any '~' to the absolute path to the user's home directory before call of subsystem.Popen method. Only calls, which process configuration values are modified. Change-Id: Ibd9399ae84bf4698c86bf8eff97ca6ce785fb3fb JIRA: VSPERF-45 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> Reviewed-by: Al Morton <acmorton@att.com>
2015-12-09testcase: scalability testcase enhancementsMartin Klozik3-35/+50
Streams used by scalability testcases can be simulated at different network layers by modification of destination MAC address (L2), destination IP address (L3) or destination UDP port (L4). It is possible to define number and type of the streams by testcase definition by options "MultiStream" and "Stream Type" or by CLI parameters "multistream" and "stream_type". CLI options override testcase definition. Number of streams, their types, used transport protocol and indication of pre-installed flows are written to both result CSV file and MD file with test report. Default transport protocol was changed to UDP because IxNetwork configuration script doesn't support TCP yet. Change-Id: I1ff9ab7756d38f65b1a7730397507c5a5ff5a3d1 JIRA: VSPERF-81 JIRA: VSPERF-82 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2015-12-08pkt_gen: rename throughput_tx_* to tx_rate_*Maryam Tahhan4-15/+15
Change throughput_tx_* references to tx_rate_* so the results won't be confusing as part of the opnfv test dashboard when they become publicly available. Change-Id: Ie8cfae99a75497f15eb09d097c72c8a35df3b5f9 JIRA: VSPERF-135 Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Ian Stokes <ian.stokes@intel.com> Reviewed-by: Al Morton <acmorton@att.com>
2015-12-08Results: Integrate with opnfv_test_dashboardRadek Zetik2-0/+124
All the test projects generate results in different format. The goal of a testing dashboard is to provide a consistent view of the different tests from the different projects. We need to enable the data collection for VSPERF, in other words VSPERF pushes data using a REST API. The feature is enabled by --opnfvpod parameter on vsperf command line. The value of the parameter sets POD name. Example: --opnfvpod <pod_name> or --opnfvpod=<pod_name> You need to specify installer name. It can be set in conf-file default value: OPNFV_INSTALLER = "Fuel" JIRA: VSPERF-112 Change-Id: I37255414eebcc2ff0c12109c508dcd984663a830 Signed-off-by: Radek Zetik <radekx.zetik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2015-12-02pkt_gen: add duration to all send functionsMaryam Tahhan7-41/+40
Allow a configurable duration for all send functions. JIRA: VSPERF-125 Change-Id: I7c6f5d136a7d7100e3990f7fdc00121b07081a80 Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Radek Zetik <radekx.zetik@intel.com>
2015-11-11pkt_gen: update testcenter implementationMaryam Tahhan2-418/+418
Update testcenter implementation to move settings to generic settings file and change windows line endings. JIRA: VSPERF-126 Change-Id: I156005f261bc0df6c3d8009db72ba2d5991c6166 Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com> Reviewed-by: Gene Snider <eugene.snider@huawei.com>
2015-10-29First phase of Spirent Traffic Gen integrationspirentbrian3-0/+600
Change-Id: Ib852c81fc8e09593411984bfb6f9bc5d5629f0c4
2015-10-23Simple performance Test for the PVP and PVVPMartin Klozik4-25/+20
Two sample contionous stream testcaes were introduced for PVP and PVVP scenarios. Required frame rate percentage can be specified either by tetcase configuration option "iLoad" or by command line option "iload". Command line option take precendece to testcase option. By default 100% linerate is used if not specified otherwise. Change-Id: I95f7ae6081377a4c99ce70fc7504b6b542f9260b JIRA: VSPERF-95 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Gene Snider <eugene.snider@huawei.com> Reviewed-by: Al Morton <acmorton@att.com>
2015-10-21Add Pylint to VSPERF commit gateMartin Klozik4-6/+7
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-25/+17
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 Klozik1-9/+9
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/+6
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-10-06Remove reported derived performance figuresRadek Zetik1-4/+5
Since vsperf (ixnet trafficgen) started using AggResults.csv to pull out traffic results after bi-dir support was added. Some of the derived results are wrong (derived meaning these are figures vsperf calculates from the info available in the raw ixnet results). JIRA: VSPERF-88 Change-Id: I79d88bfc7718bda675d2ba7e5148053405a94211 Signed-off-by: Radek Zetik <radekx.zetik@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2015-09-29Sysmetrics implementation updateMartin Klozik7-118/+216
New sysmetrics implementation is based on pidstat command line tool from sysstat package. Old non-functional implementation was removed. Reporting was refactored to generate report after each TC from values already available in memory. Following files were affected: modified: conf/01_testcases.conf modified: conf/02_vswitch.conf modified: conf/05_collector.conf deleted: core/collector_controller.py modified: core/component_factory.py modified: docs/NEWS.rst modified: packages.txt modified: requirements.txt modified: testcases/testcase.py modified: tools/collectors/collector/collector.py modified: tools/collectors/sysmetrics/__init__.py deleted: tools/collectors/sysmetrics/linuxmetrics.py new file: tools/collectors/sysmetrics/pidstat.py modified: tools/report/report.jinja modified: tools/report/report.py modified: tools/systeminfo.py modified: vsperf JIRA: VSPERF-67 Change-Id: I25a79f2afef405b9ac46ae85c18044af167a62a4 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: Al Morton <acmorton@att.com> Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com> Reviewed-by: Tv Rao <tv.rao@freescale.com>
2015-08-26bug_fix: process pkt_size/duration from cliMaryam Tahhan1-8/+8
Refactor rfc25444_duration to duration and update the --test-params help to show the type of parameters that can be set from the cli. Also configure pkt_sizes so that it can be modified from the CLI. Also fixes the tcl script to configure framesize properly (to the value selected and not the default 64b). JIRA: VSPERF-27 Change-Id: I76dcd824977a5f940cf7476090d2d2a3acca8160 Signed-off-by: Billy O'Mahony<billy.o.mahony@intel.com> Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Dino Madarang <dino.simeonx.madarang@intel.com>
2015-08-26Support of configurable background load and implementation of ↵Martin Klozik8-0/+276
LTD.CPU.RFC2544.0PacketLoss and LTD.Memory.RFC2544.0PacketLoss Every testcase can be configured to run background load on the DUT. Load is generated by chosen command line tool, which must be installed according to the installation.md. Currently 'stress' and 'stress-ng' tools are supported, but support for new tool can be easily added. Load can be configured by testcase configuration option 'load'. Details about supported load generator options can be found in conf/01_testcases.conf. JIRA: VSPERF-23 JIRA: VSPERF-24 Change-Id: I3e1aebc0d41357f5a2764015c41ffc7e50fdbf8b 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: Al Morton <acmorton@att.com>
2015-08-19Initial reporting implemenationMartin Klozik4-0/+413
Reporting from TOIT was merged and improved. Default template was modified to support any testcase and to show more details about system environment. Affected files: * docs/NEWS.md * testcases/testcase.py * tools/report/__init__.py * tools/report/report.jinja * tools/report/report.py * tools/systeminfo.py * vsperf JIRA: VSPERF-71 Change-Id: I4dc84ca69e5c292eae1f8dede1411c06ae3ef8af 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>
2015-08-13Add new testcase for LTD.Scalability.RFC2544.0PacketLossMartin Klozik4-33/+34
This test adds a multistream config item, taking the required number of flows to setup in the traffic, to the existing testcase and then running the standard 2544 Throughput test. The config is plumbed through from the 01_testcase.conf via ITraffic to the IxNet. 01_testcase.conf contains new parameter MultiStream for 2544 Throughput test. JIRA: VSPERF-19 Change-Id: I12e0e76a5f54dc13b854f3a65f3a4a0fe90ff885 Signed-off-by: Radek Zetik <radekx.zetik@intel.com> Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@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>
2015-08-06Vanilla OVS support implementationMichal Weglicki1-0/+97
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-08-04Add a simple performance test that sends a continuous streamRadek Zetik1-2/+2
Implement a simple performance test that sends a continuous stream of traffic to the vSwitch at line rate for 30 seconds and measures the throughput Note: there is issue with calculating of the Tx Fps and Mbps based on the results from the IxNetwork traffic generator. This issue will be fixed in a later patch. JIRA: VSPERF-27 Change-Id: Ic72225888735d33398a602462af159e901fb5957 Signed-off-by: Radek Zetik <radekx.zetik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2015-07-17Fix stability issues at the end of testcase run.Martin Klozik1-1/+4
Cleanup procedure is performed at the end of each testcase run. Procedure consists of termination of vswitch processes, removal of unneeded kernel drivers, unmount of hugepages, etc. There must be enough time for vswitch processes to terminate properly before OS resources are freed. Otherwise OS stability issues can be observed (e.g. server reboot). Process termination is implemented by sending signal SIGTERM to the process instead of previously used signal SIGINT. Change-Id: I7e8c7a86ae2a75f2a18db0d9340726fb649a685b JIRA: VSPERF-27 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: Eugene Snider <Eugene.Snider@huawei.com> Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com> Reviewed-by: Tv Rao <tv.rao@freescale.com>
2015-07-17Add new biDirectional parameter for particular testcaseRadek Zetik2-13/+21
This change introduces new parameter which sets the communication between ports either uni-directional or bi-directional. JIRA: VSPERF-27 Change-Id: I4eb06f5c91ef42147878cb68cbad24e69eb002c1 Signed-off-by: Radek Zetik <radekx.zetik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Meghan Halton <meghan.halton@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
2015-07-14Support of windows drive letter in path to result dir.Martin Klozik1-1/+1
Parsing of path with IxNetwork test results has been fixed to accept also windows drive letter. Change affects parsing of TRAFFICGEN_IXNET_TESTER_RESULT_DIR configuration parameter. Modified file: * tools/pkt_gen/ixnet/ixnet.py JIRA: VSPERF-27 Change-Id: I3dd6123e051952e6fd3f83cd9691341472d2960e 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: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Radek Zetik <radekx.zetik@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>
2015-07-07Port RFC2544.BackToBackFrames test to vsperfDino Simeon Madarang1-18/+10
Add RFC2544.BackToBackFrames test and fix pylint errors. Remove irrelevant values of back to back test results. JIRA: VSPERF-46 Change-Id: I7a0dfd9494b509c3be7bffc0678228838d3059a1 Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Meghan Halton <meghan.halton@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Radek Zetik <radekx.zetik@intel.com> Reviewed-by: Martin Klozik<martinx.klozik@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>
2015-06-08framework: Add reworked framework to repoBilly O'Mahony19-0/+10829
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/+1
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>