Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
Created new chapter on Traffic Capture and added short descriptions and explanation for each of the three methods currently supported by VSPERF. Subchapters include Traffic Capture in the VM, Traffic for testing NICs with Hardware acceleration and Traffic Capture on the Trraffic Generator.
JIRA: VSPERF-556
Change-Id: I280c54aa73961e0bbb61b40e8fe476bd3e92ff7d
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>
Reviewed-by: Trevor Cooper <trevor.cooper@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>
|
|
Traffic can be captured also at DUT side. Two options are supported by
vsperf:
1) Traffic is captured inside VM after it has been processed
by vSwitch. This can be used for verification of vSwitch frame
modification functionality, including HW offloading at ingress side.
2) Another NIC under the test (NIC2) is added into standard VSPERF DUT
setup. Traffic is then forwarded from TGen through NIC and vSwitch
to NIC2 and then over patch cable back to NIC2, the vSwitch, NIC and
to the traffic generator. This setup supports also verification of HW
offloading at egress side of NIC2 and thus it can be used for validation
of smart NICS.
Both options above are traffic generator agnostic if compared to direct
support of traffic capture by traffic generator. This patch introduces
example testcases for both options.
Detailed documentation will be pushed as a standalone patch.
JIRA: VSPERF-556
Change-Id: I23e12e45768ae4dbe9442f74d8391c3d5b2c7895
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Richard Elias <richardx.elias@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>
|
|
In case that vSwitch can't add required number of physical
ports, then error message should be printed. Previous implementation
was not consistent. Thus error handling has been united across
all vswitches and message explicitly states the cause of the failure.
NOTE: A better solution would be a refactoring of all vSwitch
classes to follow VPP port handling and to move port related
structures and physical port check into parent vswitch class.
JIRA: VSPERF-555
Change-Id: Id09a61432ea93e261f563254829348ac61f5dc8a
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>
|
|
|
|
|
|
Added a mention of the default Python3 location used by virtualenv
creation script after Python3 enforcement patch(/usr/bin/python3).
Also added a paragraph warning of held-back kernel package version and
DNF/APT/YUM configuration preventing modification of kernel packages.
JIRA: MSP-10754
Change-Id: I1ba630cf85af4d99cc2cbed40163a9137b95c390
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>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
Reviewed-by: Ian Stokes <ian.stokes@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>
|
|
In order to support execution of SW traffic generator inside VM,
we have to postpone the call of connect() method from traffic controller.
Currently it is called during initialization phase, when VMs are not
active and thus connect() would always fail. This patch moves the call
of connect() inside configure() method, which is called later when VMs
are up and running.
This modification allows to configure VM to VM scenario, where 1st VM is
running a loopback application and 2nd one executes one of supported SW
traffic generators, i.e. T-Rex or MoonGen.
Change-Id: Ifeb659aadaa2e1cd5975564965e1719c1e72a12e
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>
|
|
Change-Id: I555fea7514475153ae74b6f3d2ab2df1c30bb1aa
Signed-off-by: Jose Lausuch <jalausuch@suse.com>
|
|
Fixes pathing issue with virtual environment creation caused by
commit 21b23522861e364daf150cd997c5d60851847ef2
Change-Id: Ia2c0c44da898e40e122571e477301343d047f974
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
|
|
This patch aims at adding support for Tumbleweed, which is
a rolling release. That means that the VERSION_ID is not fixed
and can't be mapped to a directory e.g
- VERSION_ID="20171120"
- VERSION_ID="20171121"
Change-Id: I99c9a4f1042c22b73879e954147c54c87b6a8b21
Signed-off-by: Jose Lausuch <jalausuch@suse.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>
|
|
This patch adds support of access to VMs deployed automatically
by deployment scenario (e.g. pvp, pvvp4, etc.). It also modifies
filter for checking output of executed commands to correctly
handle different end of line encodings (i.e. \n vs. \n\r).
JIRA: VSPERF-539
Change-Id: Ifc796d992b90e316bad5853aaefce79e439e294d
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>
|
|
It was reported that virtualenv-3.x sometimes uses python2.7 instead of
python3. This update of the python virtual environment creation scripts,
enforces the use of python3 from /usr/bin/python3.
The scripts were tested on fresh installations of each currently
supported Linux OS.
JIRA:VSPERF-551
Change-Id: If909dd9578a3c42b14c1a3e4f9ed7b07a675fb58
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>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
Default versions of DPDK, OVS, VPP and QEMU have been
updated.
VPP socket file configuration is mandatory for VPP 17.10.
Change-Id: I3465161ae9ba9b50dfd90bb19d84f128c72d44ea
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
|
|
Datapath must be removed before vswitch termination.
JIRA: VSPERF-548
Change-Id: I7408ddc1b21e2bc02a44785dca07d9c026bc28c1
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>
|
|
|
|
|
|
|
|
In case of SRIOV path to the bind-tool must be known before
NIC driver is re-initialized. It means before TestCase.__init__()
is called.
Change-Id: Ib6fdba233e665144510dd492462c0a21aa19ed71
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 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>
|
|
An update of the Fedora installation scripts for versions 24,25 and 26.
Change-Id: Ib510d78f4040e1029bc68d2fa303a4c0a6357de3
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>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
A set of regression tests for verification of OVS/DPDK
features was introduced. Following features are tested:
* DPDK NIC Support
* DPDK Hotplug Support
* RX Checksum Support
* Flow Control Support
* Multiqueue Support
* Vhost User
* Virtual Devices Support
* NUMA Support
* Jumbo Frame Support
* Rate Limiting
* Quality of Service
JIRA: VSPERF-539
Change-Id: I6c83e9c38e29f197a5236ac68c88d7045fef775b
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Signed-off-by: Martin Goldammer <martinx.goldammer@intel.com>
Signed-off-by: Richard Elias <richardx.elias@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>
|
|
If VPP can't be executed properly, then VPP tests will be skipped
for VERIFY and MERGE jobs. It sometimes happens, that VPP can't
be executed at builders used for VERIFY & MERGE jobs execution.
These failures are not caused by patches themselves, but they
are blocking standard review & merge process. Thus VPP tests
will be suppressed in case that VPP can't be started at all.
This change is not related to DAILY job, which is executed
at POD dedicated to VSPERF project. It means that VPP tests
are always executed by DAILY job.
Change-Id: I4752601561b94a82482c403305bc3f24779f538b
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>
|
|
|
|
|
|
Newer versions of VPP require an explicit definition of CLI socket
file for proper functionality. Otherwise vppctl is not able to connect
to running vpp process and thus vsperf is not able to configure
and control vpp.
Change-Id: Id0df75fd0894e22b1b4d7fa05e16f49efe20d3ab
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>
|
|
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>
|
|
|
|
VPP class was updated to configure RX queues of VPP interfaces
based on VSWITCH_DPDK_MULTI_QUEUES value.
Change-Id: I855dbaef86cf935b2639976e8b1757eb1af4e9ac
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>
|
|
Currently all tools are loaded via loader utility, except load_gen.
Load_gens were loaded directly through component_factory.
This patch adds support to load load_gens through loader utility.
The changes are as follows:
1. Configuration changes:The common.conf include configuration of
directory. testcases.conf includes changes to load configuration,
where tool is no more part of the load-configuration. The
custom.conf has configuration of LOADGEN to be used - this configuration
replaces the earlier 'tool' configuration parameter.
2. loader_utility_changes: In loader.py, loadgen_loader is
defined, which is used in new get_loadgen function.
3. component_factory changes: in create_loadgen, similar
to other tools, the function just retuns the object of loadgen_class.
4. Renaming of Dummy load_gen: Loader fails to load properly a dummy
loadgen due to name-clash with dummy in pkt_gen. To avoid this name clash
dummy is renamed to dummyloadgen.
5. testcase changes: create_loadgen is now called with output of
loader's get_loadgen_class.
6. Fixed Pylint Errors and extra-space at the end.
7. Included CLI options support for --loadgen and --list-loadgens.
Thanks to Martin K.
8. Added the missing loadgen parameter in testcases.conf.
9. Fixed the missing comma error.
10. Added CI change in build-vsperf.sh
11. Fixed configuration reading in stress/stress.py
JIRA: VSPERF-533
Change-Id: I3fbb259618825a12fef55320a748a4f02509190b
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
Signed-off-by: Martin Klozik <martinx.klozik@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>
|
|
https://lists.opnfv.org/pipermail/opnfv-tech-discuss/2017-October/018501.html
Change-Id: I9305ec2e13e19b32e142640dab63487bab9a2b6a
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.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>
|
|
Number of VPP workers (aka PMD threads) was not specified
explicitly in default configuration file. Configuration
has been fixed to use the same cores as OVS with DPDK.
Change-Id: Icd3e5d6f429435fbc1ff580891f4b182d1c48729
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>
|
|
|
|
Fix issues with grammar and accuracy.
JIRA: VSPERF-536
Change-Id: Ia703d306bb7a14b11e09ab4077b8adfa5fb5e6af
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
removed IETF license notice and added a file with link to RFC8204"
|
|
IETF license notice and added
a file with link to RFC8204
Change-Id: I44b4cb75afeff74a58f402a7cb8816ddfbe52b87
Signed-off-by: Trevor Cooper <trevor.cooper@intel.com>
|
|
Change-Id: Iab653c7ad1cf6cbdb9c15056337a2768a489a87a
Signed-off-by: Trevor Cooper <trevor.cooper@intel.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>
|