Age | Commit message (Collapse) | Author | Files | Lines |
|
This patch provides a fix to parameter ordering for imix and live
results. 2 line changes.
JIRA: VSPERF-598
Change-Id: I329b67114d780e0bcc73b128aeafe6e0f25b0621
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
|
|
This patch adds live-results reporting from STC traffic generator.
STC reports per-port stream results every second. The results are
written to two different files in results folder.
Added configuration filename for stc-liveresults
JIRA: VSPERF-598
Change-Id: I37de6b5f544355e9e0dd42936328551b59afe065
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
This patch add live-results from T-Rex TGen.
T-Rex, when live-results enabled, will dump per-second flow-stats
into the results-folder.
Fixed few pylint issues.
JIRA: VSPERF-524
Change-Id: I0caee49c5b34582bbcefbe217028e9e50d40da71
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
This patch adds Imix-Genome support to STC.
1. Imix, of type genome, is included in traffic configuration.
2. The genome is converted to appropriated weights and pkt-sizes.
3. Throughput test is run with imix-configuration.
4. genome configuration is added to results.
5. Added Reporting of Average-Frame-Size - if IMIX is configured.
6. Updated genome comments
7. Clarified the reference to RFC 6985.
JIRA: VSPERF-521
Change-Id: I813efb66338ee1d1320a01ce5e0834180461120c
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
The patch adds support to provide Latency histogram from Spirent traffic
generator.
1. 03_traffic.conf: Enable histogram, and set type (default)
2. testcenter.py: If histogram enabled, call the script with right flag.
3. testcenter-rfc2544-rest.py: configure and write histogram to a
separte file in the default results folder.
4. Fix PyLint Errors
5. Adding a patch to test the 'build-error-fix'. Increased the
MAX_MEMSEG of in DPDK-config to 1024
6. Adding MAX_MEMSEG configuration at common_base didn't work.
7. Included packet sizes in the output.
8. Included description under spirent TGen
9. Removed MAX_MEMSEG configuration.
Change-Id: I7787c1768d7ac650f0ce581f17ec78df7a964e31
JIRA: VSPERF-522
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
Adds calculations to deal with values greater than 64k by doing
a square root of the multistream value and using two mods
to create the closet possible value that will work within the
current implementation of multistream in VSPerf.
JIRA: VSPERF-575
Change-Id: I9dab4bbac094a394a11ed74fe2cd88fbe7079fc7
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
A support for proper reporting of "Burst" traffic type was added.
Several bugs were fixed:
* RFC2544 Throughput - end of search condition was moved to avoid
situation, that another iteration is executed but its results
dropped
* RFC2544 Throughput - pause after each iteration was added to ensure
that all frames are cleared from buffers; It improves stability
of results. Also "received" values are no longer higher then
"sent" values.
* VSPERF will report also the number of sent and received frames
* VSPERF will correctly process send and received values - they
were switched on several places
JIRA: VSPERF-149
JIRA: VSPERF-562
Change-Id: I8a5caa6385a1ef86aa4bf4511d2753100ed0ab14
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Richard Elias <richardx.elias@intel.com>
|
|
|
|
|
|
Remove unnecessary scapy import, which is causing pylint error
with recent pylint version.
JIRA: VSPERF-566
Change-Id: I082de0e93242486248beaed6822a8d0f30fff7e5
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: Sridhar Rao <sridhar.rao@spirent.com>
|
|
|
|
T-Rex requires a modified version of SCAPY library for python3
to function properly. It doesn't work with vanilla version of
scapy-python3 module, which is installed within vsperf environment by
pip for Xena. Currently vanilla scapy is imported by Xena and
enforced to T-Rex too, which causes following issues:
* missing implementation of Dot1AD causes failures
* broken multistream feature in T-Rex
VSPERF loads all Traffic Generator classes and thus all
imports performed at module level are performed. The solution
would be to import SCAPY module by Xena only in case, that Xena
traffic generator is really used. Please see JIRA for additional
information.
JIRA: VSPERF-566
Change-Id: I8018bc0126e752cc9f966252d17dadb6a5554b37
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: Sridhar Rao <sridhar.rao@spirent.com>
|
|
Updated master Python scripts to conform to the newer pylint
1.8.2 standard.
JIRA: VSPERF-563
Change-Id: I19305a008a2e22c2f4841aa83fed85fbdc2d549c
Signed-off-by: Richard Elias <richardx.elias@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Sridhar Rao <sridhar.rao@spirent.com>
|
|
T-Rex implementation in vsperf was improved to support:
* SCAPY frame definition, so additional network protocols
can be generated by T-Rex and sent towards DUT
* VLAN configuration defined by TRAFFIC['vlan']
* enable or disable L2, L3, L4 and VLAN protocols
as configured by TRAFFIC dictionary
VSPERF documentation was updated with examples of SCAPY
frame definition usage.
JIRA: VSPERF-565
Change-Id: Iff9baba47a1e83d321f6ba3c1c482965b9882241
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
Reviewed-by: Richard Elias <richardx.elias@intel.com>
|
|
Support for burst traffic type was added into T-Rex. This
traffic type is useful for tests, where a limited number
of frames should be sent through DUT.
JIRA: VSPERF-562
Change-Id: I03b7150e66a0210cce91b20c751b8624c16f951b
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Richard Elias <richardx.elias@intel.com>
|
|
Adds configuration options and logic to detect maximum supported
speed of T-Rex server side cards.
1. Adds logic to pull maximum supported speed from port info
2. Adds forcable option to have user specify maximum speed
3. If logic cannot detect speed from port_info because it is
not available or the forcable option is not set it will
assume 10G speeds.
4. Tested on Intel XXV25G and Mellanox ConnectX-5 cards
5. Added packet structure logging to show packet info for
better debugging capabilities
6. Adds core mask to take advantage of multiple cores if
server is started with more than default number of cores
7. Adds packets lost logging to RFC2544 Throughput testing
JIRA: VSPERF-559
Change-Id: I7fcfda7ccc408c30830950ee3668e01b8624c20a
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
|
|
Print an error message in case, that vsperf is not able
to connect to the T-Rex server. User is instructed
to check if T-Rex server is up and running.
Change-Id: I70c6d27fa8331921d43e25c5eaa3638ded6c015b
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Jose Lausuch <jalausuch@suse.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
The control script for Ixia (i.e. Ixia and IxNet classes)
is written in TCL and thus VSPERF must translate TRAFFIC
dictionary into TCL notation. The method for data type
conversion was updated to correctly process new 'capture'
settings, which uses python lists for tx and rx capture
ports definition.
JIRA: VSPERF-556
Change-Id: I639942b11ea11ce1b443a2a2e99c3da6619ba569
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
Reviewed-by: Richard Elias <richardx.elias@intel.com>
|
|
A support of traffic capture was added into T-Rex.
It allows to write a functional tests, which will
verify proper vSwitch functionality by inspection
of packets received by T-Rex.
A testcase example was added into integration
testcases.
JIRA: VSPERF-556
Change-Id: I5ad28479ca2ec29760b68f24510af1a6d74866ae
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
Reviewed-by: Richard Elias <richardx.elias@intel.com>
|
|
- Adds T-Rex verification step as implemented by other trafficgens
- Adds check in rfc2544 loop for if no packets are received to fail test
immediately
- Refactors the trial code to support the verification option
- Adds trial_run function
- Removed unused line speed configuration setting
JIRA: VSPERF-553
Change-Id: Ie324fe8fb6bf79fe0dc337b91af2bf83e901a8ab
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Adds packet learning option which is available on other
Traffic generators as a feature. This adds this feature to the
Trex implementation inside of VSPerf.
JIRA: VSPERF-547
Change-Id: Iaf4d0721b22eb780c25e29295c112d4fcb47b22c
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Adds packet count totals for transmit and receive to reporting
at the end of test execution.
JIRA: VSPERF-546
Change-Id: I51027fae109d0ea794c0db03f5781ddb2fcbb941
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
|
|
VSPERF verifies if PATHS to the tools (vSwitch, VNF, etc.)
are valid. This check was modified to take into the account
tools required by selected testcase. It will help to avoid
runtime errors triggered by missing tools, which
are not essential for testcase execution.
Change-Id: Ifcfea983cad1bdbc8c1f08c7a0281001005410df
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
This patch introduces several improvements and small bugfixes
of teststeps. These changes were identified during implementation
of OVS/DPDK regression tests.
Patch content:
* teststeps: step aliases were implemented
* teststeps: improved filtering by regex for any step, which returns string
or list of stings; filter will process all lines
* teststeps: support for log object
* teststeps: support for trafficgen get_results call
* teststeps: configurable suppression of step validation
* trafficgen: remove old results before traffic is executed
* trafficgen: support for flow control on/off (IxNet)
* trafficgen: support for configurable learning frames (IxNet)
* trafficgen: support for runtime changes of TRAFFICGEN_PKT_SIZES, _DURATION
and _LOSSRATE
* vnf: flush pexpect output of previous commands
* vnf: use execute_and_wait() to ensure correct cmds order
* vnf: dpdk vHost User interface name set according to its type,
e.g. dpdkvhostuserclient
* vswitch: support for OVS restart
* decap: simplify configuration of tunneling decapsulation tests
* settings: values of all configuration options are restored after TC execution
* modified formatting of test description used by --list
* testcase name and description is logged before its execution
* small bugfixes
JIRA: VSPERF-539
Change-Id: I550ba0d897ece89abd3f33d6d66f545c4d863e7b
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
Adds incremental source multi-stream functionality to
T-Rex traffic generator code in VSPerf.
JIRA: VSPERF-532
Change-Id: Ib5ba326699d89350ac1715c9a4276e5fa46a133e
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Adds option to enable promiscuous mode for Trex traffic
generator to allow for SR-IOV tests to work correctly.
Trex by default only accepts packets based on destination
MAC address matching what is configured on server in
/etc/trex-cfg.yaml. This removes that limitation since
SR-IOV tests require mac addresses to be modified in the
generated packets to correctly route packets to the relevant
VFs.
JIRA: VSPERF-531
Change-Id: I19b64f364c8a1b656994c82c96f47a68b92486d8
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Changes introduced by patch:
* Ensure that correct results with given lossreate are returned
* Add threshold value to specify the accurancy of RFC2544 Throughput
measurement. Default value is 0.05.
JIRA: VSPERF-530
Change-Id: I8148deba9039c3a0feb6394d6671aa10c5afaf0a
Signed-off-by: Martin Goldammer <martin.goldammer6@gmail.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
This patch enforces 10 iterations during search
for besti RFC2544 Throughput with 0% packet loss. Unless
0% packet loss is detected during first iteration
with initial frame rate.
JIRA: VSPERF-530
Change-Id: I99e49e9dbf4e1424253d0cfec804819516c00df8
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
Reviewed-by: Martin Goldammer <martin.goldammer6@gmail.com>
|
|
Topology are two physical servers, on first is trex and second is VSPERF.
Trex is running in stateless mode this means that on server where is located
trex repo is running trex binary file and VSPERF working with server via
python API.
JIRA: VSPERF-528
Change-Id: Id8819495325ebc13fdce365f4af0e040ce68cd0e
Signed-off-by: Martin Goldammer <martin.goldammer6@gmail.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
Fixes issue when running multiple packets sizes and using the Xena
verify option. Original values are restored to settings for each
new packet size or test case.
Also fixes a minor issue where if the test failed, the verify would
run regardless.
JIRA: VSPERF-515
Change-Id: I6b6ce5160b66e7ed4a3847711c4f05529ae8ca54
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Port duration is in microseconds. I broke this with a previous
commit.
Change-Id: Id2770149355f40107ab8ee0523482b5867e0e72a
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Add xena pairs topology and port removal options for JSON
files with RFC2544 testing. Refactored JSON code for
better expansion later.
Resolved pathing issues related to previous patch allowing
for execution of VSPerf from any directory.
JIRA: VSPERF-502
Change-Id: Ida60c1223ae0f45f8879351770ab7fdce859b59b
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Revert xena continuous traffic to port based time limits as
packet limits have an uppers bounds which could be reached
with small packet sizes and longer durations.
JIRA: VSPERF-507
Change-Id: I56986159643344f7872e311590f7d05ac02b038b
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
|
|
|
|
For some testcases it is useful to have only one connection between
traffic generator and DUT. Thus IxNet class was extended to support
such connection. Feature is enabled if both IXIA ports are set to
the same value.
New integration testcase ixnet_pvp_tput_1nic was created to demonstrate
this feature.
Unused code was removed from 3rd_party/ixia/ixnetrfc2544.tcl to simplify
introduction of new features and to speed up IXIA configuration.
JIRA: VSPERF-503
Change-Id: I92ab24fa58eeb1ccb7f00ac7f3530ffca7b99241
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
Adds final verification option to Xena traffic generator
inside VSPerf. Works by running the Xena2544.exe again
after the initial run is complete with modified values
inside the json file. If the final verify fails it will
revert the settings and continue the in a pattern based
on if the smart search is enabled.
JIRA: VSPERF-506
Change-Id: Ic272628c489b88989f67549bd020af7354dc9b91
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
The multistream configuration is not passed to the remote host where the traffic generator (MoonGen) runs.
Change-Id: I3e9862553b5b064272f3bfffb788c06ebd3740ca
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
|
|
VSPERF reports were updated to contain vSwitch name.
In case of VPP, it is not possible to read its version
if VPP is not running. Thus VSPERF was enhanced
to support tool version check during its runtime. This
mechanism can be enhanced to support e.g. VNF in the future.
JIRA: VSPERF-496
Change-Id: I74b47505e35340eead165d9b588e9cc15c058bbf
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
Missed this small issue when calling continuous streams caused
by the param name change from the pylint patch in XenaDriver.py
ca9c9275ed6d5d852987c69a378e88a3502cb2ab.
Change-Id: Ic8ad86358f72e91edea34cb37207d7dc583128b4
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
This patch fixes a bug caused due to wrong parameter ordering.
stc_common_settings should come after rfc2544_common_settings.
It also gets rid of 'Import' error for module 'conf'
JIRA: VSPERF-491
Change-Id: I356294b4efdf9ebd0cea4492d3ed1cb8e04ec9b1
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
All python files must reach pylint score 10/10. This will be
regularly verified by Jenkins jobs to keep constant code quality.
VSPERF specific pylintrc file was updated according to the vsperf
coding standards. Distro version included in reports will be
slightly different, due to migration to new python package distro.
Previously used platform.distro() will be deprecated since python 3.7.
JIRA: VSPERF-487
Change-Id: I934120208b9624787a3567ccaa49e14d77d7a5bf
Signed-off-by: Martin Goldammer <martinx.goldammer@intel.com>
Reviewed-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 <sridhar.rao@spirent.com>
|
|
This patch adds RFC-2889 address-learning-rate test and
address-caching-capacity tests. The patch includes following changes
1. 01_testcases.conf: testcase definitions are added for new tests
2. results_constants.py: 3 new results constants are added, removed
unsupported constants
3. testcenter-rfc2889-rest.py: Added support to these two new
tests. Removed un-necessary synchronization of db-file. 5 new
configuration parameters are added - which are explained in (4).
4. trafficgen.rst: Configuration description for rfc2889 tests are
added. Stale information is removed.
5. testcenter.py: Support for two new tests are added. Separate
functions for results analysis and parameter settings are added.
6. traffic_controller_rfc2889.py: Calls to functions in testcenter.py,
based on the traffic_type, are added.
Removed trailing whitespaces from trafficgen.rst
JIRA: VSPERF-395
Change-Id: Ie6ca87519b7736e7410d7f0e60904579934af24a
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
|
|
Adds a configurable learning preemptive option when running
xena continuous traffic tests. This resolves a missing packet
or two when running OVS tests at flow rates that should not
drop packets.
JIRA: VSPERF-473
Change-Id: I056578ed9c9181287d97aea55a002f09aac14e81
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Second patch to help improve Xena continuous traffic accuracy.
Increases delay before gathering statistics to allow packets in
flight to be received. Changes bps and fps to be calculated
based on total bytes and packets received versus capturing the
data while port is transmitting from active statistics.
Sets time limit on ports based on duration.
JIRA: VSPerf-423
Change-Id: I574819694d3141edb539de64bc16dcd6c6fcf489
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Traffic generated by traffic generator is based on default
values and their modifications specific to particular testing
scenario. Traffic default values were defined inside VSPERF
code and it was not possible to change them. This patch introduces
new TRAFFIC dictionary inside 03_traffic.conf. Thus user can
modify any of TRAFFIC values either in configuration file
or by CLI or by 'Parameters' section of testcase definition.
Following CLI options were obsoleted by this patch:
'bidirectional', 'traffic_type', 'iload', 'multistream',
'stream_type' and 'pre-installed_flows'
Following CLI option was renamed to be consistent with other options:
'tunnel_type' => 'TUNNEL_TYPE'
Following sections of testcase definition were obsoleted:
"Traffic Type", "biDirectional", "MultiStream", "Stream Type",
"Pre-installed Flows", "Flow Type" and "iLoad"
New TRAFFIC dictionary should be used instead of old CLI options
and old testcase definition sections. Testcase definitons,
yardstick sample testcases and documentation were updated to reflect
configuration changes.
JIRA: VSPERF-433
Change-Id: I03a388c766491d5688e715f6d7b51e8e0377ec27
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>
|