Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
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>
|
|
A recent patch introduced a bug where SR-IOV would use code designed
for use with testpmd_pvp scenarios. This is because this scenario
also calls for the vswitch=none flag. This patch resolves this issue
to stop the vdev devices from being added when the vnf is specified
as QemuPciPassthrough.
JIRA: VSPERF-460
Change-Id: Ie4522b046982ec5554c3deb6a507d86ca9798124
Signed-off-by: Christian Trautman <ctrautma@redhat.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>
|
|
Usage of ethernet type for IPv4 was harmonized, to use
0x0800 at all places. Together with this fix a bug during
VNF cleanup was removed - VNF started by TestSteps are
tested for validity before the call of their stop() method.
It avoid vsperf crash in case, that VNF was not properly
started.
JIRA: VSPERF-436
Change-Id: Ic1a36919f5c9d707aa0aad64b5d96a1214c56cb3
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 <sridhar.rao@spirent.com>
|
|
Following changes are added following first review
1. Descriptions in integration/01_testcases.conf
2. Comment in conf/01_testcases.conf
3. Checking all cases of traffic types in traffic_controller_rfc2544.py
4. Removing whitespaces
5. Missing changes (throughput->rfc2544_throughput)
6. Syntax error in core/traffic_controller_rfc2544.py
Currently the traffic-type values that are provided as part of the
test case definition needs some fix to support additional traffic
- apart from rfc2544. The Current and the proposed changed is summarized
in the below table:
|--------------------------------------------------------------------|
| Parameter | Existing traffic_type value | Changed to |
----------------------------------------------------------------------
| Throughput | rfc2544 OR throughput | rfc2544_throughput |
----------------------------------------------------------------------
| Back2Back | back2back | rfc2544_back2back |
----------------------------------------------------------------------
| Continuous | continuous | rfc2544_continuous |
----------------------------------------------------------------------
JIRA: VSPERF-420
Change-Id: I22bd897f6389d2b568a6a3735c67f0003e813445
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.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>
|
|
In the past, step driven testcases were supported
only by integration testcases. This patch adds generic
support of TestSteps for both integration and performance
testcases. Step driven test were improved to support
modification of existing deployment. As part of
the patch a refactoring of traffic controllers
were performed. Traffic controllers were modified
to support trafficgen-off and trafficgen-pause
modes in all possible ways of trafficgen invocation.
JIRA: VSPERF-362
Change-Id: Ic8b7a9b0e7165f0a15a52279ed0f0952da9fedb8
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: Antonio Fischetti <antonio.fischetti@intel.com>
Reviewed-by: Sridhar K. N. Rao <sridhar.rao@spirent.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>
|
|
Revert enforced vsperf failure in case, that VnfController
is used in scenario without VNFs. Instance of VnfController
is created for all scenarios including p2p, so it must
be prepared for it.
JIRA: VSPERF-361
Change-Id: Icf6e88e7ea62044c09bb194c260ea878d6a197c9
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: Antonio Fischetti <antonio.fischetti@intel.com>
|
|
Support for deployment scenarios with any number of VMs
in both serial and parallel configuration. Detailed
content of the patch:
* VswitchControllerPXP class for multi VM support
* pvvpxx and pvpvxx deployments for xx VMs in
serial respective parallel configuration
* special GUEST_ options expansion to requested
number of VMs;
* support of GUEST_ options specific macros
#VMINDEX, #MAC(), #IP() and #EVAL()
* all GUEST specific options are turned to lists
to be VM specific
* support for VM with 1 NIC
* support for VM with multiple NIC pairs; traffic
is routed in serial or parallel between NIC paris
based on deployment scenario
* support for PVVP and PVPV scenarios using VMs
with different numbers of NICs
JIRA: VSPERF-361
Change-Id: I05bedbdfa9a81ea0166d9b03d83ae49d6cb8b19b
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: Antonio Fischetti <antonio.fischetti@intel.com>
|
|
The test case for verifying the vxlan tunneling feature without using any
ingress tunnel traffic. The virtual switch(OVS) is configured to mangle and
generate tunnel traffic in the deployment. The packet flow in the test case is
as follows
TRAFFIC-IN --> [ENCAP-PKT] --> [MOD-PKT] --> [DECAP-PKT] --> TRAFFIC-OUT
ENCAP-PKT - Encapsulate the ingress packet to a tunnel type.
MOD-PKT - Modify the tunnel header to match the following decap interface.
DECAP-PKT - Decapsulate the newly generated tunneled packet.
Change-Id: Ie24bacb3cb1c069bd60403e5a4ef8bcdf0e12e54
Signed-off-by: Sugesh Chandran <sugesh.chandran@intel.com>
|
|
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>
|
|
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>
|
|
VSPERF uses ifconfig at several places to bring up
a networking interface. However ifconfig has been
deprecated by iproute2 package and it is not available
in standard installation of many Linux distributions.
Thus all calls of ifconfig have been replaced by
call of 'ip' tool.
Change-Id: I935eaf85b6082e4641d12cffea3e0882c634e5ea
JIRA: VSPERF-299
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>
|
|
Measure the execution time for a testcase and add it to the log. We need
to report the test execution times for the testcases for OPNFV release
C. Modified the timing result in the csv + results file to display a
H:M:S format.
Change-Id: Ife9e361da5f8b3fc3721050ae3e6dce049f7402d
Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
|
|
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Vswitchperf help describes two different options, which will
set lenght of the test or duration of its iteration. It can be set
either by parameter --duration or by --test-params CLI option
duration. However only the second option is implemented. It is
enough to support only one option and thus --duration parameter
has been removed.
Change-Id: Icfa40ec25f50bd090229b0761fa968567d8d3553
JIRA: VSPERF-196
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
|
|
The patch introduces frame_loss_percent result value.
The implementation is done for Ixia and IxNet
traffic generators. The value is visible in list
of result values at the end of the test, in csv,
rst and md files.
JIRA: VSPERF-201
Change-Id: I9b6795d427b199cb62ed66b7a137e412e36dc757
Signed-off-by: Radek Zetik <radekx.zetik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
|
|
Add option to generate GRE frames for testing GRE decapsulation
tests.
Recent changes:
* Fix merge conflict
* Updated userguides
* Complete set of fields and working decap
* Move GRE ixnet calls to if statement to reuse inner frame settings
Change-Id: I0cf9243953a72a464ae4701a858e76aecbdb8528
JIRA: VSPERF-191
Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
Measure OVS DPDK VXLAN decapsulation performance.
The DUT is configured as a VTEP (VXLAN Tunnel Endpoint)
which performs decapsulation of frames and sends traffic to
the 2nd traffic generator port.
This test is unidirectional.
Recent changes:
* Userguide update
* Move src/dstport from L2 to L4 (conf, TCL)
* Fix 'TestCase' object has no attribute '_tunnel_operation' error when
running non overlay tests
* Fix merge conflict
* Move doc to docs/userguide/integration.rst
* Add setting of DUT_NIC1_MAC and setting of other
variables to docs/userguide/integration.rst
Change-Id: Ia44f8888ef727831543c80f5c98c866686c5c92c
JIRA: VSPERF-190
Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Signed-off-by: Robert Wojciechowicz <robertx.wojciechowicz@intel.com>
Signed-off-by: Timo Puha <timox.puha@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com
|
|
Measure OVS DPDK and native VXLAN/GRE/GENEVE encapsulation performance.
This patch creates a new deployment scenario, Overlay_P2P.
The DUT is configured as a TEP (Tunnel Endpoint)
which performs encapsulation of frames and sends traffic to
the 2nd traffic generator port. The traffic generator in this
case receives an encapsulated frame. No decapsulation is performed
in this testcase.
Introduce a vsperf param, --run-integration, to filter tests to
integration tests. When running integration tests, variables defined
in the directory conf/integration/*conf as well as the conf/*.conf
are available.
This test case requires DPDK 2.1.0 and OVS master - 6bb4a18 or newer.
Change-Id: Ide2f418909d647119388df9b30d0d0a3656b4e53
JIRA: VSPERF-180
Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
|
|
Support for multiple modes of VSPERF operation has been added.
These modes can be used for standalone execution of traffic
generator or for manual testing or for execution of unsupported
traffic generator. Supported modes are: "normal" - execute vSwitch,
VNF and traffic generator; "trafficgen" - execute only traffic
generator; "trafficgen-off" - execute vSwitch and VNF.
Normal mode is selected by default.
In case that trafficgen mode is selected, then various
--test-params could be specified to affect traffic generator
configuration. These parameters include traffic type, frame rate,
bidirectional and scalability settings. Selection of transport
protocol is not supported by IxNet yet (UDP is enforced), thus
modification of transport protocol from command line is not
supported too.
Fixes of testpmd and qemu warning patches are inclduded.
Change-Id: Idac10fe03e724075268a01ec3eb0817fba830aec
JIRA: VSPERF-173
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
|
|
The purpose of using testpmd instead of OVS is to get the baseline
of the DUT when performing hardware offloading operations.
There are supported different checksum calculation
and txq flags settings.
Change-Id: I93c9b45dcb31eaa1f610b7e061f3dd5936b0e6ec
JIRA: VSPERF-193
Signed-off-by: Robert Wojciechowicz <robertx.wojciechowicz@intel.com>
Reviewed-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
Stream specific flows can be pre-installed into the vswitch
based on the value of testcase specific configuration option
"Pre-installed Flows". In case, it is set to 'Yes', then
specific flow for each stream will be inserted into the switch.
Otherwise only generic flows will be installed. Default value
of "Pre-installed Flows" is set to 'No'. Its value can be
overridden by CLI parameter pre-installed_flows.
This configuration parameter is an enhancement of "MultiSream"
feature and it is ignored if "MultiStream" is disabled.
Python module 'netaddr' is required by this implementation
and it has been added to requirements.txt file.
Change-Id: I8a17577a702bf2be2753134eb203b936a87fc2e5
JIRA: VSPERF-83
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
Update the default duration of a back to back test to be 2 seconds which
is the minimum recommended by RFC2544, and update the Trials to be 50,
which is also the default value specified by the RFC. This patch also
fixes the tcl script to allow for the minimum framesize to be sent from
the traffic gen.
JIRA:
Change-Id: I801196c1998ec2bffbeab69a3a290d6ef6feb1c3
Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
|
|
Streams used by scalability testcases can be simulated
at different network layers by modification of destination
MAC address (L2), destination IP address (L3) or destination
UDP port (L4). It is possible to define number and type
of the streams by testcase definition by options "MultiStream"
and "Stream Type" or by CLI parameters "multistream" and
"stream_type". CLI options override testcase definition.
Number of streams, their types, used transport protocol
and indication of pre-installed flows are written to both
result CSV file and MD file with test report.
Default transport protocol was changed to UDP because
IxNetwork configuration script doesn't support TCP yet.
Change-Id: I1ff9ab7756d38f65b1a7730397507c5a5ff5a3d1
JIRA: VSPERF-81
JIRA: VSPERF-82
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
|
|
Change throughput_tx_* references to tx_rate_* so the results won't be
confusing as part of the opnfv test dashboard when they become
publicly available.
Change-Id: Ie8cfae99a75497f15eb09d097c72c8a35df3b5f9
JIRA: VSPERF-135
Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Ian Stokes <ian.stokes@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
|
|
For PVP and PVVP deployments, traffic inside virtual machines must be
forwarded between its interfaces. There are several forwarding options
supported by VSPERF, including DPDK testpmd, Huawei l2fwd kernel module
and linux bridge. Another option is, that VM image has built in forwarding
functionality and vsperf doesn't configure it itself.
User can select VM loopback application by configuration option
GUEST_LOOPBACK (per VM) or by SCALAR cli option guest_loopback (global
settings).
Selected guest loopback application(s) will be written into test results
CSV file and test report MD file.
Default wildcarded guest login prompt was added. Guest startup guarding
timer can be configured. Path to OVS kernel module has been fixed.
Change-Id: If738da1ea09112f9cf2267afcbc99a6797f3a03a
JIRA: VSPERF-130
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
|
|
Allow a configurable duration for all send functions.
JIRA: VSPERF-125
Change-Id: I7c6f5d136a7d7100e3990f7fdc00121b07081a80
Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
Reviewed-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Reviewed-by: Radek Zetik <radekx.zetik@intel.com>
|
|
Change-Id: Ib852c81fc8e09593411984bfb6f9bc5d5629f0c4
|
|
Initial pylint config file has been created to follow current
code structure and design. A few issues have been fixed, so currently
56 of 67 files have rating 10/10. There are still issues to be fixed,
mainly TODOs/FIXMEs and missing impelentation of abstract class members.
Change-Id: Icf5b12c2150258f8ac657f8d50b47a697d1660a0
JIRA: VSPERF-91
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
Reviewed-by: Gene Snider <eugene.snider@huawei.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
Flow definition can be changed by testcase setup. By default
only ingress ports are used to route traffic, but flow can be
extended by src and dst IP addresses used by the traffic
generator.
Change-Id: I694714537ad2d818192a39f3235d8e6bf0f59a49
JIRA: VSPERF-90
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
Reviewed-by: Gene Snider <eugene.snider@huawei.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
New configuration parameter EXCLUDE_MODULES defines module names,
which won't be automatically loaded by LoaderServant. It can be used
to exclude obsolete or abstract modules.
Change-Id: If98b50b1505465bcedcf28fe63421c73a4fe160a
JIRA: VSPERF-118
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
Reviewed-by: Gene Snider <eugene.snider@huawei.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
Support for PVP and PVVP scenerios using Vanilla OVS was added.
VMs are configured to forward traffic between virtual interfaces
by standard linux capabilities. Traffic generator script was updated
to accept MAC and IP address configuration to allow VM forwarding
configuration.
VSPERF-66, VSPERF-70
Change-Id: Ia70ab6be547b39928a1eae319faba779d4e29284
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
Reviewed-by: Gene Snider <eugene.snider@huawei.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
|
|
Generic PVVP deployment support has been added. Two
new testcase scenarios for throughput and back2back
tests with PVVP deployment were added. Original
implementation of PVP has been refactored
Following files were affected:
modified: conf/01_testcases.conf
modified: conf/02_vswitch.conf
modified: conf/04_vnf.conf
modified: core/__init__.py
modified: core/component_factory.py
modified: core/loader/loader_servant.py
modified: core/vnf_controller.py
deleted: core/vnf_controller_p2p.py
deleted: core/vnf_controller_pvp.py
modified: core/vswitch_controller_p2p.py
modified: core/vswitch_controller_pvp.py
new file: core/vswitch_controller_pvvp.py
modified: docs/to-be-reorganized/NEWS.rst
modified: docs/to-be-reorganized/quickstart.rst
modified: src/dpdk/dpdk.py
modified: src/ovs/ofctl.py
modified: testcases/testcase.py
modified: tools/tasks.py
new file: vnfs/qemu/qemu.py
new file: vnfs/qemu/qemu_dpdk.py
modified: vnfs/qemu/qemu_dpdk_vhost_cuse.py
modified: vnfs/qemu/qemu_dpdk_vhost_user.py
modified: vnfs/vnf/vnf.py
modified: vswitches/ovs_dpdk_vhost.py
Change-Id: Ib6869a29337a184cb58c57fd96bba1183aba00ab
JIRA: VSPERF-68, VSPERF-69
Signed-off-by: Martin Klozik (martinx.klozik@intel.com)
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
In case there is specified concrete value for "duration" in the
configuration there is raised TypeError exception
in the send_rfc2544_throughput function of dummy traffic generator.
Conversion to integer solved this issue.
Change-Id: Ib37ecabc1000369d807a997c88d7a3d7aca425d5
Signed-off-by: Robert Wojciechowicz <robertx.wojciechowicz@intel.com>
Reviewed-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
|
|
New sysmetrics implementation is based on pidstat command line tool
from sysstat package. Old non-functional implementation was removed.
Reporting was refactored to generate report after each TC from values
already available in memory.
Following files were affected:
modified: conf/01_testcases.conf
modified: conf/02_vswitch.conf
modified: conf/05_collector.conf
deleted: core/collector_controller.py
modified: core/component_factory.py
modified: docs/NEWS.rst
modified: packages.txt
modified: requirements.txt
modified: testcases/testcase.py
modified: tools/collectors/collector/collector.py
modified: tools/collectors/sysmetrics/__init__.py
deleted: tools/collectors/sysmetrics/linuxmetrics.py
new file: tools/collectors/sysmetrics/pidstat.py
modified: tools/report/report.jinja
modified: tools/report/report.py
modified: tools/systeminfo.py
modified: vsperf
JIRA: VSPERF-67
Change-Id: I25a79f2afef405b9ac46ae85c18044af167a62a4
Signed-off-by: Martin Klozik (martinx.klozik@intel.com)
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
|
|
Only works for P2P. Other deployment scenarios will need to implement
the same kind of multi-table flow as P2P to enable frame modification.
Signed-off-by: Billy O'Mahony<billy.o.mahony@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Radek Zetik <radekx.zetik@intel.com>
Reviewed-by: Dino Madarang <dino.simeonx.madarang@intel.com>
Change-Id: I2fa35972b90b165c00f0d0a7515fa275d0f17aa4
|
|
Refactor rfc25444_duration to duration and update the --test-params help
to show the type of parameters that can be set from the cli. Also
configure pkt_sizes so that it can be modified from the CLI. Also fixes
the tcl script to configure framesize properly (to the value selected
and not the default 64b).
JIRA: VSPERF-27
Change-Id: I76dcd824977a5f940cf7476090d2d2a3acca8160
Signed-off-by: Billy O'Mahony<billy.o.mahony@intel.com>
Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Dino Madarang <dino.simeonx.madarang@intel.com>
|
|
LTD.CPU.RFC2544.0PacketLoss and LTD.Memory.RFC2544.0PacketLoss
Every testcase can be configured to run background load
on the DUT. Load is generated by chosen command line tool,
which must be installed according to the installation.md.
Currently 'stress' and 'stress-ng' tools are supported,
but support for new tool can be easily added.
Load can be configured by testcase configuration option 'load'.
Details about supported load generator options can be found
in conf/01_testcases.conf.
JIRA: VSPERF-23
JIRA: VSPERF-24
Change-Id: I3e1aebc0d41357f5a2764015c41ffc7e50fdbf8b
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
|
|
Enable booting of a VM with DPDK and run testpmd for
PVP testing.
* Added throughput and back2back tests with pvp deployment scenario in
01_testcases.conf
* PVP requires DPDK 2.0 with VHOST_USER enabled and QEMU 2.2.0
* Tested on CentOS7 and Fedora 20
* Fix conflict with change 1078
Recent Changes:
* Fix merge conflict (testcase.py and testcases.conf)
* Remove QEMU_DIR. User must set QEMU_BIN
* Set bidir traffic to True
* Add flow for bi-directional traffic
* Use working OVS_TAG ad2e649834be20dd01b1632799fe778106a96a2d
* Merge change 1096 (src: Add QEMU makefile)
* Set virtio-net-pci csum=off and other variables to off
* Move hardcoded values to conf/*
JIRA: VSPERF-56
Change-Id: I4ad184531064855493483d9833a7722c9f7d3576
Signed-off-by: Madarang, Dino Simeon <dino.simeonx.madarang@intel.com>
Signed-off-by: Meghan Halton <meghan.halton@intel.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
|
|
Implement a simple performance test that sends a continuous
stream of traffic to the vSwitch at line rate for 30 seconds
and measures the throughput
Note: there is issue with calculating of the Tx Fps and Mbps
based on the results from the IxNetwork traffic generator.
This issue will be fixed in a later patch.
JIRA: VSPERF-27
Change-Id: Ic72225888735d33398a602462af159e901fb5957
Signed-off-by: Radek Zetik <radekx.zetik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
|
|
* Added a new standard set of flow table that defaults to routing phy1 to phy2
and vice-versa and allows frame modification and tuple matches to be added
independently of routing.
* Add a FrameMod testcase attribute - implement this for value 'vlan'
* With FrameMod == 'vlan' the reported tx_fps and rx_fps figures do not match
even for RFC2544 throughtput 0% packet loss - this is a pre-existing bug
and a fix will be done as a separate patch. The rx_fps figure is the
reliable figure.
JIRA: VSPERF-27
Change-Id: Idd137b7a101305e7aebb6fabdfb6a7a4dcf8661b
Signed-off-by: Billy O'Mahony<billy.o.mahony@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Eugene Snider <Eugene.Snider@huawei.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
|