Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
(cherry picked from commit e9ff0fdf355d26d0c171c6c1137c4beb12561233)
|
|
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>
|
|
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>
|
|
A set of tests was introduced with focus on L3, L4 and VxLAN performance
of OVS and VPP. New testcases were created for phy2phy network scenario.
In case of PVP and PVVP, only OVS testcases are available.
Notes:
* two sets of OVS P2P testcases were created, one creates unique flow
for each IP address involved in the test (performance sensitive);
Second set inserts just one flow with large network mask (tests with
_mask suffix).
* three different types of VPP P2P L3 testcases were created to
demonstrate performance impact of multi ARP entries or IP routes.
* VPP multi ARP record based testcases use a set of "workarounds"
to load a large number of ARP entries. It is not possible to use
"set ip arp count" syntax, as it doesn't work well for large count
values (e.g. 60K)
* OVS VxLAN testcases utilize existing OP2P deployment scenario and thus
it can be used also with GRE and GENEVE tunnel types. Tunnel type
to be used is defined by test configuration option "Tunnel Type".
JIRA: VSPERF-518
Change-Id: I65adad976f12d8625d918a1996eb42693c511ee1
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Signed-off-by: Ciara Loftus <ciara.loftus@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: Cian Ferriter <cian.ferriter@intel.com>
|
|
A set of improvements was introduced to enhance step driven
testcases capabilities.
Details:
* delay among test steps is configurable by TEST_STEP_DELAY
parameter
* step driven tool function exec was renamed to exec_shell
* new step driven tool function exec_python was introduced to execute
a python code
* new step driven object sleep was introduced to pause test execution
for defined number of seconds.
* fixed bug in settings.validate_getValue() to correctly validate
access of parameters modified by TEST_PARAMS
* new #PARAM() macro was introduced to allow references among
configuration parameters
* multistream support has been added into ixnetrfc2544v2.tcl,
which is used for tunneling protocols test (op2p deployment)
* fixed bug in op2p deployment to list interfaces and flows
from both bridges involved in the test
* test report updated to state exact rfcxxxx type of traffic
type, e.g. rfc2544_continuous
* test report of step driven testcases was updated to contain
measured values from traffic generator in CSV report
* method for ovs flow comparison was modified to normalize
IPv4 CIDR network addr (e.g. 10.0.0.5/8 => 10.0.0.0/8)
JIRA: VSPERF-512
Change-Id: Ib4f38dcdfbf3820dd766b25520da0ad0c81f3293
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: Ciara Loftus <ciara.loftus@intel.com>
|
|
VSPERF makefiles were updated to automatically download and compile
VPP. VPP will not be installed into the OS, but it will be executed
from VSPERF's src subdirectory. Thus underlying OS is not affected
by VPP build required by VSPERF. It also allows quick switch among
different versions of various tools used by VSPERF.
As part of this patch, VERIFY and MERGE CI jobs were updated to
build VPP and test it with basic set of integration tests.
JIRA: VSPERF-493
Change-Id: I958b9031c4fefc87c4c63a471d2ba1a0db1eaaa4
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Verify and merge jobs will execute real vsperf TCs,
which won't require neither physical NICs nor traffic
generator. Script ./build-vsperf.sh will take care about
creation, update and activation of python virtual environment.
It will also install required system packages at nodes
running merge and verify jobs.
Additional improvements:
* set of simple sanity checks was added
* two new integration TCs were added; However test with
VNF is not used now, because it requires a VM image.
* detailed logs are shown in case of failure
JIRA: VSPERF-391
Change-Id: I33e75e762fdc62656de92dc34f0ad7a484623603
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: Fatih Degirmenci <fatih.degirmenci@ericsson.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>
|
|
Implementation of RFC2544 throughput/back2back and
continuous testcases with 4 serial VMs.
Topology is: Phy1-VM0-VM1-VM2-VM3-Phy2.
This patch requires Patch VSPERF-326 "Integration test
implementation: Multi-PVP with explicit Flows".
v2: rebased to master to fix conflicts.
JIRA: VSPERF-364
Change-Id: Ib731bf6dc4634d6347b1c521bb82326db90a6c63
Signed-off-by: Antonio Fischetti <antonio.fischetti@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
|
|
Implementation of 3 testcases with multi-VMs in parallel.
Flows are explicitly set on UDP destination ports so that
each packet is sent to a specific VM.
Topology is: Phy1-VM1-Phy2, Phy1-VM2-Phy2,..
This patch requires change #16855 "ovs/ofctl: Fix validation
method for complex flows."
JIRA: VSPERF-326
Change-Id: I59d23354bc9c6db470a59faba13bdcd6f2beb19d
Signed-off-by: Antonio Fischetti <antonio.fischetti@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@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>
|
|
This patch fixes a typo in the integration testcase example,
otherwise settings like
{"guest_loopback" : "linux_bridge"}
are ignored.
JIRA: ONP-6635
Change-Id: Iab61d36e70f96f4a6c1f98a506753dc7fa090140
Signed-off-by: Antonio Fischetti <antonio.fischetti@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.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>
|
|
Integration TC support has been enhanced to support PVP
and PVVP scenarios. Definition of integration testcases
have been modified to use a sort of macros for repetitive
parts.
Additional improvements were introduced:
* instances of testcases are created only for testcases
selected for execution
* new TC definition options allow to define test specific
vswitch, VNF, traffic generator and test options
* tests filter applied on pattern specified by --tests
allows to define negative filter only; In that case
list of all tests is used as base for negative filter.
* traffic values defined within teststep passed to send_traffic
is merged with default values; This is essential for execution
of TCs with linux_bridge or SRIOV support. It also simplifies
integration TC definition
* typos removed
Change-Id: Icb734a7afd7e5154f27a8ff25615a39e01f58c27
JIRA: VSPERF-213
JIRA: VSPERF-216
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>
|
|
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>
|