Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
During testing it is sometimes useful to generate pure L2 traffic
without L3 or L4 related headers. IxNetwork TCL script was updated
to support this option.
Generic TRAFFIC array was enhanced by on/off switch for L3 and L4
headers. Thus it can be implemented by other traffic generators
in the future, if this feature will prove itself useful.
JIRA: VSPERF-500
Change-Id: I723c703e5d6ef609fd5b7db366871278a4730203
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>
|
|
Restriction of 64K streams was limited only to L4 stream
type. In case of L3 and L2 stream type, it is possible to
define unlimited number of streams to be simulated
by traffic generator.
JIRA: VSPERF-498
Change-Id: I4ce3253299473127d135c01543999a8593b9556f
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: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.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>
|
|
Support of VPP was implemented into VSPERF. Initial implementation
uses step driven testcases to configure P2P, PVP and PVVP network
scenarios. These testcases were prepared for three RFC2544 traffic
types, i.e. throughput, continuous stream and back to back.
VPP configuration is driven by new configuration option VSWITCH_VPP_ARGS.
It is possible to use three types of l2 port connection supported
by VPP, i.e. l2 xconnect (default), l2patch and l2 bridge features.
Configuration is driven by parameter VSWITCH_VPP_L2_CONNECT_MODE.
JIRA: VSPERF-495
Change-Id: Idebef9b10fb0d70796adb3405fec77302de00a7e
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 files were updated with license header. In case
of binary files is license stored in LICENSE file stored
in the same directory. Packages.txt was removed, because
file has not been used.List of packages differs according
OS distribution, all of neccesary packages are include in
instalation scripts
JIRA: VSPERF-489
Change-Id: I6ecae21b8db2a0f22fa5a66f9525352080f1fcc0
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>
|
|
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>
|
|
Requires DPDK 16.11 or greater to support vdev flags.
Initial support for TestPMD to support guests.
Allows vsperf to execute TestPMD as a switch for pvp
test scenarios.
Can be increased in functionality later to support
multiple guest configs.
JIRA: VSPERF-406
Change-Id: I67a5a355c990ca6cfcbb5845a2beaf1c1f21f5f0
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
If the downloading of results-database file fails, the CSV file and
corresponding results are not generated - eventhough the test was
successful.
This small patch handles such cases.
Updated the logging to be more explicit.
JIRA: VSPERF-435
Change-Id: I14bf519fbca2ea362777e29920bc1759494965e0
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
Update of the rest of old traffic type names.
JIRA: VSPERF-420
Change-Id: Icf4bab7afad09f9b48ee25b9ff020c83cf2e02bd
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>
|
|
|
|
Need to make VSPERF's MoonGen codebase in parity with master emmerich
MoonGen branch.
JIRA: VSPERF-400
Change-Id: I8c50ed89c9e7b0080497107c1af826f49c1e82f0
Signed-off-by: bmichalo <bmichalo@redhat.com>
|
|
Vswitchperf specific class in yardstick was updated to reflect
new functionality of --test-params. These changes have impact
on vsperf documentation and yardstick samples.
As part of this fix following changes were made:
* trafficgen mode can be executed with default configuration
* yardstick specific TC samples were updated
* dummy traffic generator was enhanced to support back2back
* dummy traffic generator was enhanced to accept traffic
results from configuration
JIRA: VSPERF-422
JIRA: VSPERF-205
Change-Id: Ibeaa6ef46bde453e3ca5dee6e4568fc8c3853521
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>
|
|
|
|
|
|
First of a few patches planned to help increase Xena continuous
traffic accuracy. Modifies port limits to packet calculated limits
versus time based limits which can be wildly inaccurate. Also
modifies some port settings to be more inline with how rfc2544
settings are applied on Xena. Increased time delay by one
second to allow packets to finish transmitting before stat
collection occurs.
JIRA: VSPerf-423
Change-Id: I214b13d743a84a0733e885ccfc5bdd57812d7104
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
JIRA: VSPERF-392
Change-Id: I44866b7d3298617003b87b015eb08bf32c4014f7
Signed-off-by: Otto Sabart <osabart@redhat.com>
|
|
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>
|
|
|
|
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>
|
|
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>
|
|
MoonGen code optimizations and general clean up. No
functionality changes.
JIRA: VSPERF-351
Change-Id: Ida16f16eb218eb6f0a1c90594c38511bfbb2cf97
Signed-off-by: bmichalo <bmichalo@redhat.com>
|
|
Misplaced parenthesis regarding THROUGHPUT_RX_MBPS
JIRA: VSPERF-381
Change-Id: Ie33cf6ca88164f0686a819715b5f9f7409072063
Signed-off-by: bmichalo <bmichalo@redhat.com>
|
|
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>
|
|
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>
|
|
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>
|
|
|
|
|
|
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>
|
|
|
|
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>
|
|
|
|
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>
|
|
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>
|
|
|
|
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>
|
|
|
|
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>
|