aboutsummaryrefslogtreecommitdiffstats
path: root/tools
AgeCommit message (Collapse)AuthorFilesLines
2016-11-09cli: Modify configuration via CLIMartin Klozik1-7/+11
In the past, only a few configuration parameters could be modified via --test-params CLI argument and it was not easy to find out their complete list. This patch adds support for generic modification of any configuration parameter via CLI argument --test-params or by "Parameters" section of testcase definition. Thus it is possible to customize a vsperf configuration environment per testcase or for each vsperf execution. Old CLI parameters duration, pkt_sizes, rfc2544_tests and rfc2889_trials were renamed to TRAFFICGEN_DURATION, TRAFFICGEN_PKT_SIZES, TRAFFICGEN_RFC2544_TESTS and TRAFFICGEN_RFC2889_TRIALS to be consistent with other configuration parameters. JIRA: VSPERF-375 Change-Id: I50a1f4ff7250d754aa8af0295a9c7c1be8151175 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Bill Michalowski <bmichalo@redhat.com> Reviewed-by: Antonio Fischetti <antonio.fischetti@intel.com> Reviewed-by: <sridhar.rao@spirent.com>
2016-11-04bugfix: Trafficgen Ixia does not workMartin Klozik2-4/+10
IXIA traffic generator can be controlled by two different VSPERF's wrappers IxNet (preferred) and Ixia (legacy and outdated). It has been found, that Ixia wrapper can't be used because of missing "packetsize" traffic item. Also only IXIA OS 6.60 was supported and never IXIA OS versions were not working. Both limitations were fixed. Also reported results were fixed to show correct values for MBPS items. JIRA: VSPERF-417 Change-Id: I191aa9fee2683877ce373b6aa7cd1c72e9847568 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Bill Michalowski <bmichalo@redhat.com> Reviewed-by: Christo Kleu <christo.kleu@netronome.com>
2016-10-14licenses: Dedicated directory for non Apache filesMartin Klozik6-12514/+4
All files, which do not comply to Apache 2.0 license, are moved into dedicated 3rd_party directory. This will simplify license checks performed on vsperf code. It is not required to move l2fwd module from its current location. JIRA: VSPERF-413 Change-Id: I6b4bd6bb5542e6db9a7ef91ee3f5f2907f93e9b8 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: Bill Michalowski <bmichalo@redhat.com>
2016-10-13report: [fix] remove upper border of a process tableOtto Sabart1-1/+0
According to Markdown Tables extension specification, there should be no upper border in the table. See for example python implementation of Markdown Tables extension [0][1]. [0] https://pythonhosted.org/Markdown/extensions/tables.html [1] https://michelf.ca/projects/php-markdown/extra/#table JIRA: VSPERF-411 Change-Id: I2843dbeb4544a1d1fe0a5f1a6b1028ae788a28ee Signed-off-by: Otto Sabart <osabart@redhat.com>
2016-10-11vsperf: launch should not depend on current $PWDOtto Sabart2-2/+4
JIRA: VSPERF-392 Change-Id: I44866b7d3298617003b87b015eb08bf32c4014f7 Signed-off-by: Otto Sabart <osabart@redhat.com>
2016-10-05integration: Test vHost User numa awarenessMartin Klozik1-0/+90
Open vSwitch with DPDK can optimize memory usage in case of NUMA architecture to avoid unnecessary memory access across NUMA slots. In a nutshell, PMD threads serving virtual NICs are co-located at the same NUMA slot as QEMU instance, which is using these NICs. This patch adds new (functional) integration testcase, which verifies OVS vHost User numa awareness feature. Step driven test objects were updated to allow a call of OS utilies and evaluation of conditions. Also the documentation was updated with the list of supported test objects and their methods. JIRA: VSPERF-377 Change-Id: I184e71e066d27b5b9fc9e6a9f7e240e2d1b5a0fa Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Ciara Loftus <ciara.loftus@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Bill Michalowski <bmichalo@redhat.com> Reviewed-by: Antonio Fischetti <antonio.fischetti@intel.com>
2016-10-04Merge "pkt_gen: Spirent Testcenter RFC 2889 Support"Martin Klozik2-0/+390
2016-09-21pkt_gen: Spirent Testcenter RFC 2889 SupportSridhar K. N. Rao2-0/+390
The changes/additions, apart from spirent testcenter-specific, also includes to some files in conf (01_testcase and 03_traffic) and core (result- constants, traffic_controller and component_factory) folders. Currently, only RFC2889 Forwarding testcase is supported. Incorporated following review suggestions: 1. Log level fixes 2. Removing unused function in results_constants.py 3. Added documentation to docs/configguide/trafficgen.rst. Userguide will be updated once other RFC2889 tests are implemented. 4. string matching in component_factory. 5. Remove Trailing Whitespaces JIRA: VSPERF-286 Change-Id: I0195720ab2f8cf2c3a5aa490d66166bdca0afcb0 Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
2016-09-15paths: Support binary packagesMartin Klozik5-58/+227
Currently VSPERF supports OVS, DPDK and QEMU built from the source code only. In some cases it is required to support installation of these tools from binary packages available for given linux distribution. Thus VSPERF configuration and code was modified to suport both source and binary versions of tools. This can be configured perf tool, so various combinations of source and binary version are supported. Together with new configuration also a handling of kernel modules was modified to automatically detect and load module dependencies. JIRA: VSPERF-340 JIRA: VSPERF-339 Change-Id: I855cb438cbd8998bdc499613ea5e7de2526299d7 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: Bill Michalowski <bmichalo@redhat.com> Reviewed-by: Otto Sabart <osabart@redhat.com>
2016-09-07pkt_gen: MoonGen code clean upbmichalo1-64/+54
MoonGen code optimizations and general clean up. No functionality changes. JIRA: VSPERF-351 Change-Id: Ida16f16eb218eb6f0a1c90594c38511bfbb2cf97 Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-08-26pkt_gen: MoonGen Incorrect RX_MBPS Calculationbmichalo1-1/+1
Misplaced parenthesis regarding THROUGHPUT_RX_MBPS JIRA: VSPERF-381 Change-Id: Ie33cf6ca88164f0686a819715b5f9f7409072063 Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-08-18cuse: Remove vHost Cuse supportMartin Klozik2-28/+15
Support of vHost Cuse interface is not supported by OVS anymore, so it was removed also from VSPERF. Cuse can be used with older VSPERF release if needed. JIRA: VSPERF-376 Change-Id: Id786bddf5fa9dce5706a93de7b089707a60317cd 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: Bill Michalowski <bmichalo@redhat.com>
2016-08-12pkt_gen: Spirent changes to Harmonize test/trial terminologysridharkn1-7/+9
Added changes to make use of the tests parameter. The change is minor. Prior to this the value was taken from configuration file. With this change, the tests value is used as passed. JIRA: VSPERF-367 Change-Id: I9d1553d3b53dd19a79428ddaaacadb55fc27324f Signed-off-by: Sridhar Rao <sridhar.rao@spirent.com>
2016-08-11hugepage_fix: Fix free hugepage calcluationChristian Trautman1-1/+1
Fixes hugepage free calculation when hugepage size is not 1GB. Calculation previously assumed 1GB in size. This change allows for all sizes to be calculated properly. Change-Id: Ib05800f51992e9757c412a66296a47ad29e88a3b Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-08-10Merge "Xena_2544_tput_options: Add options for rfc 2544 testing"Maryam Tahhan2-0/+27
2016-08-10Merge "hugepages: change default num pages + deallocate"Maryam Tahhan1-13/+30
2016-08-09Xena_2544_tput_options: Add options for rfc 2544 testingChristian Trautman2-0/+27
Adds options to Xena for testing options when running RFC 2544 throughput testing. JIRA: VSPERF-369 Change-Id: I3145bd1a4d697d7b06cafda4f9d77cce859d1839 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-08-09Merge "pkt_gen: MoonGen should use class object for line rate calc"Maryam Tahhan1-1/+1
2016-08-09pkt_gen: MoonGen should use class object for line rate calcbmichalo1-1/+1
Instead of hard coding line speed numbers for rate calcuation, MoonGen should use its class object initialized at start time. JIRA: VSPERF-368 Change-Id: I68c688f8c244df16d98cfd15efabf491a317256b Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-08-09Merge "bugfix: Harmonize test/trial RFC2544 terminology"Maryam Tahhan10-70/+79
2016-08-09hugepages: change default num pages + deallocateMaryam Tahhan1-13/+30
Change the default number of allocated pages to the min 10GB. Deallocate hugepages if we allocated them on the fly. Change-Id: If9946cec423dd095c1ca1ab3bee3698e2f025047 Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
2016-08-09hugepage_detect: Change hugepage detection to check for free hugepagesChristian Trautman1-20/+55
Change hugepage detection to check if hugepages are configured. Also verifies enough free hugepages are available based on test configuration. Will result in an exception if not enough hugepages are found. This performs the check based on the guest memory configs as well as the dpdk socket configs. Adds some new methods to check for free hugepages based on all hugepages or for socket free hugepages. Adds new logging indicitaing needed and free hugepages as well as info level event if hugepages are not configured at recommended 1GB size. JIRA: VSPerf-255 Change-Id: I80d5605308861070c412568d8d40339f01b9718b Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-08-09Merge "namespace_bug: Initial creation of namespace fails"Maryam Tahhan1-2/+2
2016-08-08pkt_gen: MoonGen incorrectly calculates rx/tx % statisticsbmichalo1-7/+16
For MoonGen, the final results parameters: throughput_rx_percent, throughput_tx_percent were incorrectly calculated when converting MoonGen to VSPERF format. In particular, this would occur when more than one data stream (single channel unidirectional traffic) was used in the test. When calculating these percentages, only aggregate throughput values equaling unidirectional traffic were used (for example, for 64 byte frames bidirectional traffic should use 29.76 Mpps, not 14.88 Mpps) JIRA: VSPERF-341 Change-Id: Ie62bded7aea023c287697f18c4172b58c320e050 Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-08-08Merge "Xena: Modify aggregate_stats one port no stats when bi-direction"Maryam Tahhan1-2/+14
2016-08-06namespace_bug: Initial creation of namespace failsChristian Trautman1-2/+2
Initial creation of namespace fails because var/run/netns does not exist. JIRA: VSPERF-366 Change-Id: I02e5aef52e1675f303405b69c7461ca6482903af Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-08-05Merge "Hugepages: on the fly allocation."Maryam Tahhan1-1/+44
2016-08-05Merge "pkt_gen: MoonGen start rates not correct"Maryam Tahhan1-6/+21
2016-08-04bugfix: Harmonize test/trial RFC2544 terminologyMartin Klozik10-70/+79
VSPERF framework was updated to follow RFC2544 definition of 'test' and 'trial' terms. Test parameter 'rfc2544_trials' was replaced by new parameter 'rfc2544_tests'. Both code and documentation were updated to reflect these changes. JIRA: VSPERF-300 Change-Id: I144a28359fd06394f1f87ef324458bafd5aad45f 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-08-04Hugepages: on the fly allocation.Mars Toktonaliev1-1/+44
If no hugepages are available, try to allocate HUGEPAGE_RAM_ALLOCATION amount of RAM for hugepages. JIRA: VSPERF-290 Change-Id: I092b3831254579eeebbe45e85884828f9d749895 Signed-off-by: Mars Toktonaliev <mars.toktonaliev@nokia.com>
2016-08-03Xena: Modify aggregate_stats one port no stats when bi-directionliting1-2/+14
Xena exception when no stats collected on receive on one port during bi-directional traffic. Modify aggregate_stats in the XenaDriver.py, add judge whether the two port both has stats, if one port has no stats, the result use the port's value which has stats. JIRA: VSPERF-327 Change-Id: I18c349d609a2834907f0383dbfbebd5cd281f541 Signed-off-by: liting <tli@redhat.com>
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-03Merge "docs: Enhancement of IxNetwork configuration guide"Maryam Tahhan1-3/+1
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-27docs: Enhancement of IxNetwork configuration guideMartin Klozik1-3/+1
Configuration guide has been updated with description of IxNetwork specific configuration options. New section was added with description of test results sharing between IxNetwork and VSPERF. Additional changes: * wrong formatting inside installation.rst was fixed * description of IxNetwork configuration was updated inside ixnet.py JIRA: VSPERF-302 Change-Id: Ida0e086e69b82fd1f9821d16ea750b2dec1d5aa2 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-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