aboutsummaryrefslogtreecommitdiffstats
path: root/tools
AgeCommit message (Collapse)AuthorFilesLines
2016-08-03pkt_gen: MoonGen start rates not correctbmichalo1-6/+21
The VSPERF traffic profile for starting rate is in a percentage of line rate. MoonGen programs its starting rate as Mpps. Therefore the traffic profile for VSPERF needs to be converted to a MoonGen format. There was a hardcoding of 14.88 that was used for the starting frame rate for all frame sizes. This needs to be corrected to take into account all frame sizes. JIRA: VSPERF-350 Change-Id: Ied71668a560d7d2b03483f9a1192dd2fb4965996 Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-08-02Merge "pkt_gen: Remove commas from MoonGen results"Martin Klozik1-18/+18
2016-08-02Merge "xena_deadlock: Fix xena2544.exe deadlock"Maryam Tahhan1-41/+62
2016-08-01pkt_gen: Remove commas from MoonGen resultsbmichalo1-18/+18
Results from other traffic generators are reported as pure numbers, i.e. 2477356.0000. These values are consumed and processed by other scripts (e.g. CI or OPNFV results visualization), so we should keep it consistent among various traffic generators. JIRA: VSPERF-342 Change-Id: I305421287eb632707038f2c8bc594fcb255ec939 Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-08-01Merge "pkt_gen: MoonGen incorrectly inserting VLAN tag"Martin Klozik1-2/+3
2016-07-27pkt_gen: MoonGen incorrectly inserting VLAN tagbmichalo1-2/+3
MoonGen needs to take into account the VLAN tag 'enable' control knob defined within the VSPERF traffic profile and therefore only insert the VLAN tag when its 'True'. JIRA: VSPERF-329 Change-Id: Idbeed2f7e6411f0c28aa56a2d3e71bd7a79d975a Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-07-26dpdk: Support of DPDK16.07-rc5 and newerMartin Klozik2-10/+33
DPDK 16.07-rc5 has renamed script tools/dpdk_nic_bind.py to tools/dpdk-devbind.py. VSPERF was updated to use wildcard in the script name, which is backward compatible. Function get_version() from tools/systeminfo was updated to correctly parse version information for DPDK v16. Version name includes a minor version as defined inside rte_version.h. It means, that for tag v16.07-rc5 VSPERF will show v16.07.0-rc5 in the report. JIRA: VSPERF-333 Change-Id: I61a4ab2d90304fffdfc4d22a5cbf0cb7295402b3 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: <bmichalo@redhat.com>
2016-07-21xena_deadlock: Fix xena2544.exe deadlockChristian Trautman1-41/+62
Fix Xena2544.exe execution with mono where sometimes the Xena process says complete, but the mono process doesn't exit. Changes call of Xena2544.exe from communicate thread lock to a wait try/catch block and checks the log periodically to see if a deadlock has occured and if so, the mono pid is terminated to prevent deadlock. * Fix one small issue with typecasting to int, changed to float JIRA: VSPERF-319 Change-Id: Ie7a86a2b9ff9cdfacba5a912ad17df6cc0581702 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-07-20pkt_gen: Moongen class name not consistent with name in conf filesbmichalo1-24/+24
Need to change naming to 'Moongen' for consistent naming between conf files and class JIRA: VSPERF-323 Change-Id: Ic580b68323a759b3c2ef7ca3c07006243a3acf7d Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-07-08Merge "Spirent-TestCenter: Code Cleanup."sridharkn1-276/+136
2016-07-08Merge "Namespace_veth: Add funtionality for network namespace, veth ports"Christian Trautman2-0/+296
2016-07-07Namespace_veth: Add funtionality for network namespace, veth portsChristian Trautman2-0/+296
Adds functionality for network namespaces and veth/peer ports to connect the namespaces. The namespaces are tracked outside of default Linux namespaces to prevent possible disruption of work outside of VSPerf where a user may create a namespace and the cleanup code deletes it. The cleanup code only removes namespaces and veth ports created inside the testcase. JIRA: VSPERF-310 Change-Id: If8881cafb119f38f052403a1de497e9660187d2e Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-07-05Spirent-TestCenter: Code Cleanup.sridharkn1-276/+136
Removal of redunant code in testcenter.py. No logic Changes. Cosmetic changes - removing redundant code of 150+ lines. JIRA: VSPERF-308 Change-Id: I4766890cdc9f3d23103b2d2090285361ac4a5197 Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
2016-07-01Merge "Spirent Support for Continuous Traffic"Christian Trautman2-2/+129
2016-07-01Merge "pkt_gen: Adding MoonGen traffic generator"Christian Trautman2-0/+766
2016-06-30Xena: Modify the throughput result typecasts int issuetli1-4/+4
Modify the _create_throughput_result method typecasts int to typecasts to float JIRA: VSPERF-312 Change-Id: I45722251f3ca200373aa7b6958e62ea511c304f8 Signed-off-by: tli <tli@redhat.com>
2016-06-30Merge "xena_bug: Resolve baseconfig reporting option to work with new versions"Christian Trautman1-1/+1
2016-06-30pkt_gen: Adding MoonGen traffic generatorbmichalo2-0/+766
Adds support for the MoonGen packet generator. The following traffic types are included: * RFC 2544 Throughput: Synchronous Interface * RFC 2544 Back 2 Back: Synchronous Interface * Continous Flow: Synchronous Interface JIRA: VSPERF-168 Sample log of execution can be found as an attachment within JIRA VSPERF-168 Change-Id: I5bb84290945f4ba41bc962370e643bbbeff0e486 Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-06-29Merge "xena_burst: Add Xena Burst traffic"Christian Trautman1-15/+11
2016-06-29xena_bug: Resolve baseconfig reporting option to work with new versionsChristian Trautman1-1/+1
Fix baseconfig to work with new Xena2544.exe versions. Reporting option for latency/jitter collection has changed. Added note to trafficgen document reflecting recommended version to use for Xena2544.exe. JIRA: VSPERF-311 Change-Id: I1974ea3c9f9e4c0935fc8adead6ddd5a92a16a04 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-06-28Xena: Modify xena_json for back2back optionstli2-14/+50
Add method set_test_options_back2back in code to modify duration, iterations, and flowrate for back2back options in the json file. JIRA: VSPERF-305 Change-Id: I1337318e7519fbd7b5a71bb26a1c62fcd8c2b66c Signed-off-by: tli <tli@redhat.com>
2016-06-26xena_burst: Add Xena Burst trafficChristian Trautman1-15/+11
Add Xena burst traffic functionality. JIRA: VSPERF-263 Change-Id: I6336e5fcb33c0f66ee87f0f14f1b795937e3d00d Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-06-22Merge "xena_bug: Fix throughput stats with bi-directional traffic"Maryam Tahhan1-3/+5
2016-06-08Spirent Support for Continuous TrafficSridhar Rao2-2/+129
Adding changes for supporting continuous traffic for Spirent Testcenter The changes are as follows: 1. From send_cont_traffic invoke function in testcenter-rfc2544-rest.py 2. In testcenter-rfc2544-rest.py check for the traffic_custom 3. If the traffic_custom is 'cont' do additional configuration on traffic. JIRA: VSPERF-146 Change-Id: Ic963f9f0c2bd013f6e676c9d18b151ae67ff77af Signed-off-by: Sridhar Rao <sridhar.rao@spirent.com>
2016-06-07xena_cont: Add Xena continuous traffic functionalityChristian Trautman2-34/+1425
* Adds XenaDriver.py module to allow direct communication to Xena chassis through socket API and collect stats. * Adds implementation into xena.py for continuous traffic flow. JIRA: VSPERF-262 Change-Id: I6f975bc205e3c954215eb16466f11298e3fcdfaf Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-05-27xena_bug: Fix throughput stats with bi-directional trafficChristian Trautman1-3/+5
Fix xena throughput stats for bi directional traffic by taking the receive numbers from both ports instead of a single port. JIRA: VSPERF-303 Change-Id: I3898afe00f8c80f54e5b4c210831e1fc6cef3c20 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-05-23Merge "xena_multistream_fix: Fix multistream json config"Maryam Tahhan1-1/+1
2016-05-12run_task_fix: Fix run_task to provide all output from commandChristian Trautman1-7/+14
Fix run_task to correctly provide all output from command sent. Commands that produced longer output would not return all text. JIRA: VSPERF-296 Change-Id: I7e501690ffdb7c01f90d524ffbabe65500f62304 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-05-12xena_multistream_fix: Fix multistream json configChristian Trautman1-1/+1
Fix xena_json module to correctly assign hwmodifier for multistream. Append was incorrect application and list needs to be assigned directly. JIRA: VSPERF-293 Change-Id: I88d1930b88711af7c920b507a4db6c29cca83d8d Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-05-04pkt_gen: Reporting FPS and MBPS from Spirent Testcentersridharkn1-8/+28
Support for reporting FPS and MBPS (TX and RX) is added. JIRA: VSPERF-285 Change-Id: Ic4b6ca02368b1808f0f985e90099cdb0b41c2afa Signed-off-by: sridharkn <sridhar.rao@spirent.com>
2016-05-04Merge "bugfix: Fix creation of vsperfenv in Ubuntu"Maryam Tahhan1-1/+2
2016-05-04Merge "bidirectional value: Fix inconsistency for bidir param"Maryam Tahhan2-2/+2
2016-05-04bidirectional value: Fix inconsistency for bidir paramChristian Trautman2-2/+2
Fixes bi-directional param and enforces string type in testcase configuration. Modifies all instance where bi directional value is used to string. * Changes documentation to specify value type as needed * Changes traffic defaults to use string for bidir value * Fixes testcases configuration files to use bidir as str * Change testcase conf documentation to note enforcement of string type * Sets bidir to title format to keep consitency in traffic profile when passed to traffic generators * Fix pvp/pvvp check for bidir value * Raise exception if testcase configuration is not set as str for bidir value * Change Xena bi-dir check to string compare instead of typecasting to boolean to compare. JIRA: VSPERF-282 Change-Id: I7c91fcd7333a1d1e1371bfd31700c01d7da268b5 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-05-04bugfix: Fix creation of vsperfenv in UbuntuMartin Klozik1-1/+2
Wrong version of virtualenv was executed in Ubuntu specific script. So python modules could not be installed and vsperf was not working. Hugepages mount point is newly created inside sudo environment to avoid issues with permissions. Change-Id: I4f5afc22bceb2eebbf018c42f42b7074a93e2293 JIRA: VSPERF-292 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2016-05-04bugfix: Graceful shutdown of VM - improvementMartin Klozik2-8/+63
Cleanup phase of PVVP scenario sometimes causes server reboot. Following updates were made to prevent reboots: * better generic process termination procedure * ovsdb is terminated after vswitchd termination * vswitchd is terminated directly instead of parent sudo process * already running VNFs are terminated in case of failure during VNF start() Change-Id: Ic09d60d7bfdea01c84a2685ede3d0316f0d09be7 JIRA: VSPERF-271 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
2016-05-03Merge "integration: Support of PVP and PVVP integration TCs"Maryam Tahhan1-0/+43
2016-04-27integration: Support of PVP and PVVP integration TCsMartin Klozik1-0/+43
Integration TC support has been enhanced to support PVP and PVVP scenarios. Definition of integration testcases have been modified to use a sort of macros for repetitive parts. Additional improvements were introduced: * instances of testcases are created only for testcases selected for execution * new TC definition options allow to define test specific vswitch, VNF, traffic generator and test options * tests filter applied on pattern specified by --tests allows to define negative filter only; In that case list of all tests is used as base for negative filter. * traffic values defined within teststep passed to send_traffic is merged with default values; This is essential for execution of TCs with linux_bridge or SRIOV support. It also simplifies integration TC definition * typos removed Change-Id: Icb734a7afd7e5154f27a8ff25615a39e01f58c27 JIRA: VSPERF-213 JIRA: VSPERF-216 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-25xena_port_ip: Add port ip assignment for Xena traffic generatorChristian Trautman2-4/+78
Adds port ip set options as part of conf files. Allows for IPv4 address assignment. Adds ipv6 options for later implementation when available in framework. * Adds Xena to documentation area where available traffic gens are listed. JIRA: VSPERF-273 Change-Id: Ia4129222ea95f1d399d5cc0c589c9a99d7b1b81a Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-04-20xena_version: Add versioning info for report file from XenaChristian Trautman2-1/+9
Adds Xena version info to report files. Works by pulling the version info from the result file and adding it to the settings dictionary. JIRA: VSPERF-274 Change-Id: I2b7db30e5a621f32a7eaacfe48ab1bca498e4287 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-04-19xena: Back 2 Back implementationChristian Trautman2-36/+56
Allows for execution of back 2 back tests by enabling back to back test scenario in json file when executing Xena2544.exe. Return results are the number of frames. Results for test execution can be found in the coresponding JIRA ticket. - Disabled throughput by default in json file. - Modified test params in baseconfig file for b2b test - Modified create_result method to use data in resulting xml file over using inspect strategy to detect test type - Added line to Xena installation guide for issue that was found locally after installation JIRA: VSPERF-264 Change-Id: I0ecd6e1ce750613c53fe308aea3f5a55cca69c20 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
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>