aboutsummaryrefslogtreecommitdiffstats
path: root/tools
AgeCommit message (Collapse)AuthorFilesLines
2016-04-14sriov: Support of SRIOV and Qemu PCI passthroughMartin Klozik3-3/+270
Generic support of SRIOV has been added. Virtual interfaces can be used in multiplei scenarios instead of physical NICs. Virtual functions can be directly accessed from VM by PCI passthrough method. Another option is to use VFs with vSwtich to evaluate impact on performance. Additonal modifications: * Automatic detection of NIC details has been added to simplify configuration. * Obsoleted configuration options have been removed. * Logging usage within vsperf script was fixed. * Vsperf main was refactored and final cleanup function added. * Configurable forwarding mode of TestPMD executed inside VM. JIRA: VSPERF-198 Change-Id: I4a0d5d262b245d433b12419de79399fb5825a623 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-04-12pkt_gen: Testcenter traffic generation using STC-REST API -Import Issue.sridharkn1-2/+3
The import of stcrestclient in moved down to avoid execution errors. Change-Id: Ib9b64f62400c20a031f0ffcd3410582741cf1644 JIRA: VSPERF-237
2016-04-08xena: Throughput method implementation for Xena NetworksChristian Trautman4-0/+1279
Add files for Xena Networks 2544 throughput implementation. This allows for Xena to execute tput tests from VSPerf. For information on how this works please see the JIRA ticket. Modify traffic gen guide on install instructions for Xena. Add in scapy to requirements file. Modify conf file for Xena chassis connection information. * Added license info to __init__.py / baseconfig.x2544 * Set initial rate to 10% line rate for tput testing * Modified default mac address xena_json->set_header_layer2 from aa:aa:aa:aa:aa:aa to cc:cc:cc:cc:cc:cc * Removed obsolete multistream params * Added traffic params to 03_traffic.conf * Comments to explain try/catch for latency values * Removed unused import * Rebased to fix merge conflict * Added Xena to available traffic gen list in conf files JIRA: VSPERF-261 Change-Id: I3c4b4a332fd532e10b6096e9ed97a4a39d410839 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-04-07pkt_gen: Adding Support of testcenter traffic generation using STC REST API.sridharkn2-28/+713
Stcrestclient package based script is added. Support for RFC22544 backtoback, latency, frameloss are also added, along with the throughput. Comments Addressed: 1. Parameter name consistency. Ex: use duration (refer dummy.py). 2. Moved 'only the necessary contents of README to configguide/trafficgen.rst. 3. Removed README file 4. Commit message format (pkt_gen: and linewrap) 5. Merged 4 scripts (throughput/backtoback/latency/frameloss) that were rest-based into one single script. Name: testcenter-rfc2544-test.py 6. Changed year to 2016 7. Moved imports to the top (testcenter-rfc2544-rest.py) 8. Changed prints to Log (testcenter-rfc2544-rest.py) 9. Reporting the frame loss percentage. 10. Calls to frameloss and latency are not added as the 'caller' class TrafficControllerRFC2544 is only calling backtoback and throughput. 11. Changed Exception, e to Exception as e for python 3 compatibility 12. Remaining prints to debug and logger.error for errors. 13. Moved Session creation under try block. 14. Removed deadcode 15. Fixed missing docstring 16. Generic to specific Exception. 17. if-if to if-elif 18. Debug level logging only under verbose flag. 19. Fixed Arguments mismatch. 20. Ordering of the imports Note: The testcenter-rfc2544-rest.py is spawned as a separate process, and need not be wrapped in a class. JIRA: VSPERF-237 Change-Id: I05d2b24fca1da4ba67bc4d79206c5d755ebf8f20 Signed-off-by: sridharkn <sridhar.rao@spirent.com>
2016-03-21bugfix: Fix errors related to removal of kernel modulesMartin Klozik1-91/+86
Internal module manager is responsible for removal of all vsperf specific kernel modules. Order of modules has been changed to respect possible dependencies among modules. Manager has been improved to detect modules automatically loaded by modprobe to solve dependecies. These modules are automatically removed. Code of module manager has been refactored. Change-Id: I4484f3bea7d9900db688f96edd5c3c6d4a304742 JIRA: VSPERF-259 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-03-21integration: Support of integration testcasesMartin Klozik1-4/+14
Generic support for integration testcases with first set of tests for vswitch testing. New test option "TestSteps" has been introduced to define test step by step directly in configuration file. In case that this concept will be accepted, there are plenty of possibilities for future improvements. For example: * use it also for performance tests without explicit call of validation methods * introduce step macros for repetitive scenarios, so new tests can be easily written * further generalization, which would go beyond usage of controllers and will operate directly with vswitch, vnf and trafficgen objects Change-Id: Ifad166c8ef9cfbda6694682fe6b3421e0e97bbf2 JIRA: VSPERF-212 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-03-16tunneling: Vanilla OVS decapsulation testsDino Simeon Madarang2-1/+6
Add Vanilla OVS VXLAN/GRE/GENEVE decapsulation tests Recent changes: * Line wrap * Fix GENEVE IP settings * Add GRE and GENEVE steps to integration.rst * Add DUT_NIC1_MAC and DUT_NIC2_MAC * Remove unnecessary call to vswitch.set_tunnel_arp * Move optional VXLAN/GRE/GENEVE decap settings to a different section * Add tunnel type to report files md and rst * Fix typo error: l4 to L4 in conf/integration/03_traffic.conf Change-Id: I8a43521668d5870ec893aed1df49467f0a84a07d JIRA: VSPERF-180 Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-03-12bugfix: Eliminate error and warning messagesMartin Klozik2-3/+3
Several issues have been fixed to decrease a number of warning and error messages written to the standard output. Error and warning messages causes false build failure report by Jenkins, in case that internal parsing of job output is enabled. Fixed issues: * qemu makefile updated * shared directories between host and guests are forcibly deleted before vsperf execution * nonstop_tsc cpu flag is exported from host to the guest * vloop-vnf help has been updated and changelog added * TCL scripts updated to print info instead of warning * vloop-vnf image updated to avoid snmpd related warnings Change-Id: Id9ca014bae8fa34772b67d1ebab3431682682931 JIRA: VSPERF-206 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2016-03-11bugfix: Cleanup of traffic gen api and default traffic valuesMartin Klozik5-34/+32
Both documentation and traffic generator API are updated to match current code logic. Additional default values are added into TRAFFIC_DEFAULTS dictionary. Constructor of TestCase class uses default values from TRAFFIC_DEFAULTS instead of magic numbers. Change-Id: Id2f4983945e4b123adddbc9a2a832f4a735b27f6 JIRA: VSPERF-253 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com>
2016-03-08dpdk: enable vfio_pci supportMaryam Tahhan1-10/+71
Enable vfio_pci support for DPDK in the case where the end user doesn't want to use igb_uio. Changes: * Use generic functions to strip the path and .ko extension from the module to be inserted/removed. * Removed debug line in Modules_Manager. * Removed commented code. * Fixed all pylint issues. JIRA: VSPERF-249 Change-Id: I69c9077735879bcbf7ce5c970c1ec53c219e9f90 Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com>
2016-02-23Results: Report percentage frameloss from DummyMaryam Tahhan1-30/+29
This patch adds the frameloss % result reporting to the dummy traffic gen and fixes incorrect calculations in the past for mbps that don't convert packet sizes to bits. JIRA: VSPERF-201 Change-Id: Ic4fc64a981ecbed0ab956f1cb94c7d76e7868def Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Al Morton <acmorton@att.com>
2016-02-23CI: Generate test report and push logs and report to the artifactoryMartin Klozik1-4/+0
Script for CI job execution automatically generates final test report, collects log files and pushes these results into artifactory. Support for branch specific configuration file has been added. Change-Id: Ifdf13b1c4c389f8d20dbc8e0ed99f43273e0820b JIRA: VSPERF-181 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2016-02-21pktgen: docstring fixChristian Trautman1-1/+1
Fixed docstring to correctly reflect python output from using merge_spec function. JIRA: VSPERF-210 Change-Id: Ie3bf2a3d148aa9823bafafe8c61c4c94f00ccc87 Signed-off-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2016-02-17VSPERF: Report percentage frameloss from IXIA/IXNETRadek Zetik2-0/+8
The patch introduces frame_loss_percent result value. The implementation is done for Ixia and IxNet traffic generators. The value is visible in list of result values at the end of the test, in csv, rst and md files. JIRA: VSPERF-201 Change-Id: I9b6795d427b199cb62ed66b7a137e412e36dc757 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> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Tv Rao <tv.rao@freescale.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
2016-02-11bugfix: Blank lines are required to join RST templatesMartin Klozik1-0/+4
Blank lines are required to correctly join multiple RST templates. Otherwise their text will be merged into one paragraph and formatting tags will be ignored. Change-Id: I6885019f7af2fd2201b9f30496d78200a0432e8e JIRA: VSPERF-181 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: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-02-05docs: fix link to the page with test resultsMartin Klozik2-2/+2
Test report publishes link to the page with test results. Link has been fixed to point to the correct page. Change-Id: I12f2959dffdc081dda9ef15333f9ea937b56eb35 JIRA: VSPERF-181 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: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-02-05docs: adding license to all rst files.Maryam Tahhan1-0/+4
Add Creative Commons Creative Commons license to all documentation in vsperf. JIRA: VSPERF-239 Change-Id: I88721205a36078f6e0d4a4c5dd842907729d2b6b Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@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>
2016-02-03pkt_gen: Add support for generating GENEVE framesDino Simeon Madarang2-2/+134
Add option to generate GENEVE frames for decapsulation tests. IxNet 7.3X does not have a native support of GENEVE protocol. The template, GeneveIxNetTemplate.xml_ClearText.xml, should be imported into IxNET for this testcase to work. Recent changes: * Updated dependency * Updated userguide * Move inner frame variables & srcport/dstport to L4 Change-Id: I90f5fb256b51ae44bc1bc7983c599c9dbbffea08 JIRA: VSPERF-192 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: Mark D. Gray <mark.d.gray@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-02-03pkt_gen: Add IxNet support for GRE framesDino Simeon Madarang1-111/+365
Add option to generate GRE frames for testing GRE decapsulation tests. Recent changes: * Fix merge conflict * Updated userguides * Complete set of fields and working decap * Move GRE ixnet calls to if statement to reuse inner frame settings Change-Id: I0cf9243953a72a464ae4701a858e76aecbdb8528 JIRA: VSPERF-191 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: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-02-03Add simple VxLAN decapsulation performance testDino Simeon Madarang6-15/+3296
Measure OVS DPDK VXLAN decapsulation performance. The DUT is configured as a VTEP (VXLAN Tunnel Endpoint) which performs decapsulation of frames and sends traffic to the 2nd traffic generator port. This test is unidirectional. Recent changes: * Userguide update * Move src/dstport from L2 to L4 (conf, TCL) * Fix 'TestCase' object has no attribute '_tunnel_operation' error when running non overlay tests * Fix merge conflict * Move doc to docs/userguide/integration.rst * Add setting of DUT_NIC1_MAC and setting of other variables to docs/userguide/integration.rst Change-Id: Ia44f8888ef727831543c80f5c98c866686c5c92c JIRA: VSPERF-190 Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com> Signed-off-by: Robert Wojciechowicz <robertx.wojciechowicz@intel.com> Signed-off-by: Timo Puha <timox.puha@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@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
2016-01-28docs: Add a note on pidstat and unknown results.Maryam Tahhan1-2/+8
Add a Note on why %CPU and %USER > 100%, as well as a note regarding the "unkown" results. Change-Id: I7e173c91a549932301645c9344648c9b73da4a70 Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
2016-01-28docs: Final report conclusions and recommendationsMaryam Tahhan2-4/+9
Remove TODO sections from the Release B report. Change-Id: I4520c23ad9cbb980c9f1c1ee14cc7e91060933a4 Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
2016-01-28bugfix: do not report DPDK version for vanilla OVS vswitchMartin Klozik3-1/+7
DPDK version check has been removed in case that OVS does not use DPDK. Change-Id: I78560a72e4fde3d7113165d88eb81d80f6399af8 JIRA: VSPERF-209 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
2016-01-25report: create test report for all executed TCsMartin Klozik3-109/+98
Every testcase generates report with its results into separate file. It is required to merge all partial reports into final overall report for whole set of TCs executed by VSPERF. Hugepages are mounted also for TestPMD packet forwarder. Change-Id: Iaa1ab4e08d1637106da804e06b7f30100d609cd6 JIRA: VSPERF-181 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2016-01-22report: add rst template for results reportingMartin Klozik4-21/+224
Add a template that can be used for reporting vsperf release B results. This patch also fixes the line length issues in the markdown template. Change-Id: Id03f5c7eb84536697deca73d3fb397629b647a85 JIRA: VSPERF-181 Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com> Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
2016-01-21bugfix: mount hugepages for PVP and PVVP scenariosMartin Klozik1-0/+102
Hugepages are used by both DPDK and Qemu. However they were mounted only in case, that OVS with DPDK support was detected. Thus code has been modified to mount hugepages in case that either DPDK usage or QEMU usage is detected. Change-Id: I662a6f0918b7b8d4fc38c2ce3d0d82bba0b8b2b0 JIRA: VSPERF-170 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-21Add testpmd as vswitch classRobert Wojciechowicz3-0/+159
The purpose of using testpmd instead of OVS is to get the baseline of the DUT when performing hardware offloading operations. There are supported different checksum calculation and txq flags settings. Change-Id: I93c9b45dcb31eaa1f610b7e061f3dd5936b0e6ec JIRA: VSPERF-193 Signed-off-by: Robert Wojciechowicz <robertx.wojciechowicz@intel.com> Reviewed-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>
2016-01-19reporting: add vswitch, vnf and trafficgen version into the reportMartin Klozik3-36/+149
Final test report MD file should contain information about version of vswitch, vnf, VM loopback forwarding application and traffic generator used during the test. In case that component is cloned from GIT repository, then hash of its recent commit should be part of the report too. Change-Id: I4eb398bc95bc5030d0852d08bcf9febbf17640d4 JIRA: VSPERF-172 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Radek Zetik <radekx.zetik@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com> Reviewed-by: Tv Rao <tv.rao@freescale.com>
2015-12-16Back2Back: update default paramsMaryam Tahhan2-6/+9
Update the default duration of a back to back test to be 2 seconds which is the minimum recommended by RFC2544, and update the Trials to be 50, which is also the default value specified by the RFC. This patch also fixes the tcl script to allow for the minimum framesize to be sent from the traffic gen. JIRA: Change-Id: I801196c1998ec2bffbeab69a3a290d6ef6feb1c3 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>
2015-12-14Results: Integrate with opnfv_test_dashboardRadek Zetik1-2/+20
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" Additionally, there are two parameters with default values: OPNFV_URL = "http://213.77.62.197" Defines address of opnfv releng database server PACKAGE_LIST = "src/package-list.mk" OVS and DPDK tags are read from this file and values are used for creation of 'version' filed. The patch requires 'requests' module. The requirements.txt is updated. JIRA: VSPERF-112 Change-Id: I49f6f5058b1bce8a257669efa8229ff31879481d 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-14bugfix: Fix failure caused by unset localeMartin Klozik4-8/+10
In case, that VSPERF detects missing locale settings, it will set language and encodding settings to default values specified by configuration parameter DEFAULT_LOCALE. Localized external commands with output parsed by VSPERF are executed with modified locale to ensure correct VSPERF function. Locale settings for such commands is specified by configuration parameter DEFAULT_CMD_LOCALE. Change-Id: If5c15115b778ce90046e390f10438b780f82695b JIRA: VSPERF-132 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Brian Castelli <brian.castelli@spirent.com> Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com> Reviewed-by: Tv Rao <tv.rao@freescale.com>
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>