Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
Support of vhost-user client mode has been added for both
OVS and VPP. VSPERF configures vhost-user server mode
in vswitches by default for backward compatibility.
Support of vhost-user server mode is deprecated
in OVS and it can be removed in future releases. Once it will
happen, we have to change vsperf default behavior to
usage of vhost-user client ports at vswitch side.
This patch also fixes processing of boolean configuration
parameters passed via --test-params option. In the past
it was not possible to set boolean value to False through
--test-params option.
JIRA: VSPERF-517
Change-Id: I65e341f820edd6c720043a4acc74c5140b05db18
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>
|
|
Add jumbo frame support for all packet forwarding applications
inside guest for pxp testing. Enable jumbo frame support for
OvsVanilla, OvsDpdkVhostUser, and Packet forwarding.
Add minor fix for missing method issue when running packet
forwarding tests. The get_version method was missing in
the packet_forwaring core module.
JIRA: VSPERF-501
Change-Id: Ia99975f47c64259ed2566bde3c85b2779c309e80
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>
|
|
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>
|
|
This patch implements the following new CLI parameters that
can be used in the --test-params list.
1. guest_nic_queues, which overrides all GUEST_NIC_QUEUES values
2. guest_testpmd_txq, which overrides all GUEST_TESTPMD_TXQ
3. guest_testpmd_rxq, which overrides all GUEST_TESTPMD_RXQ
4. guest_testpmd_nb_cores, which overrides all GUEST_TESTPMD_NB_CORES
values
5. guest_testpmd_cpu_mask, which overrides all GUEST_TESTPMD_CPU_MASK
values
6. vswitch_dpdk_multi_queues, which overrides VSWITCH_DPDK_MULTI_QUEUES
7. guest_smp, which overrides all GUEST_SMP values
8. guest_core_binding, which overrides all GUEST_CORE_BINDING values
When they are present in the CLI the corresponding settings from the
configuration files will be overridden.
As an example a usage can be:
./vsperf --test-params "guest_nic_queues=2;guest_testpmd_txq=1;\
guest_testpmd_rxq=1;guest_testpmd_nb_cores=1"...
v2: rebase + rework to add other CLI params as suggested and update doc.
v3: changes in 'testusage.rst' doc.
JIRA: VSPERF-371
Change-Id: I140d6e068c1653d21aaa0df27532a48c4a12c151
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>
|
|
|
|
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>
|
|
In cases with VHost user and non-jumbo frame scenarios we can
disable merge buffers on the guest NICS to improve performance.
This patch adds this option to the 04_vnf conf file.
JIRA: VSPERF-388
Change-Id: Ic1f776e90fdccaa5d5a0c952c96811a8747fe936
Signed-off-by: Christian Trautman <ctrautma@redhat.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>
|
|
Adds support for multi-queue using the following config.
* VNF = QemuDpdkVhostUser
* VSWITCH = OvsDpdkVhost
* Guest Loopback as testpmd
Adds CPU mask, nbcore, rxq, and txq options for testpmd.
Adds option for guest nic multi-queue.
Adds option for dpdkvhostuser and dpdk multi-queue enable
JIRA: VSPERF-309
Change-Id: I5296fc18b430eace598d8c51620fc27a6c46a65e
Signed-off-by: Christian Trautman <ctrautma@redhat.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>
|
|
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>
|
|
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>
|