Age | Commit message (Collapse) | Author | Files | Lines |
|
This patch adds support for clean output - displaying only final
results.
User has to run with --verbosity and level as error or critical.
--verbosity is an existing option.
Remove unnecessary spaces
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
Change-Id: Id227a4b787c4c7e4dd97f28009946ac6a8a802d3
|
|
This patch adds necessary code to perform K8S Networking performance
benchmarking.
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
Change-Id: I059ddd2e9ad3ee7c05e4620c64401f81474be195
|
|
With new VPP version, and changes to it command output,
VSPERF needs changes to complete the setup.
These changes are only in handling 'show hardware' command output.
Fixed Pylint error
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
Change-Id: Ie89c4d406f6b0f16baaada2eefe9558fbc4b846f
|
|
Commit c5a075eafc322d9ae62322e90ab4e232df176743 break integration
tests because logs location was changed. This patch fix this by
ensuring that RESULTS_PATH is set before integration tests conf
file is processed and set correct path in integration conf.
Signed-off-by: Lukasz Pawlik <lukaszx.pawlik@intel.com>
Change-Id: I7ca104cfb31c7bc0f6052b58a370a1d65157efe1
|
|
This patch moves the following logs to results-folder.
1. qemu.log
2. vswitchd.log
3. host.log
4. vsperf-overall
5. vpp
6. trafficgen
Move the logging of creating results directory after configure-logging
JIRA: VSPERF-600
Change-Id: I5b0a827ea2dfaf869d2495b5f4a7b5dd2bd054ac
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
This patch adds timestamps to all the logfiles created by VSPERF.
The logfiles covered are:
1. LOG_FILE_VSWITCHD
2. LOG_FILE_OVS
3. LOG_FILE_VPP
4. LOG_FILE_QEMU
5. LOG_FILE_GUEST_CMDS
6. LOG_FILE_TRAFFIC_GEN
7. LOG_FILE_HOST_CMDS
Added fix for pylint errors
This patch also ensures the extension is only .log always.
JIRA: VSPERF-586
Change-Id: I319c075e7d3af06539266f4c759a41f877d4cff2
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
|
|
Redesign of vSwitch and vSwitch controller classes, to use generic
connection methods for configuration of vSwitch. This API
is more generic and vSwitch agnostic, thus deployment scenarios like
P2P, PVP, PVVP (i.e. PVVPx) can be used for all (currently)
supported vSwitches. Usage of new API will simplify an introduction
of new vSwitches in the future.
This patchset introduces following changes:
* OVS: implementation of add_, del_, dump_ connection(s) and their
validation methods
* VPP: bidir parameter removed - it is up to the deployment scenario
implementation to take care about bidirectional connections
* P2P and PXP controllers were updated to use connection methods
instead of flow related methods. Thus standard TCs will support
both OVS and VPP. NOTE, PVPV is not supported for VPP (yet?).
* refactoring of vSwitch interfaces and inherited classes
* VPP step driven TCs were replaced by standard TCs with appropriate
deployment scenarios. This is for backward compatibility with
TC reporting. Once reporting of VPP TC results into results DB will be
modified, this TCs can be removed.
* OVS routing tables support was generalized to support P2P and
PXP deployments and step driven TCs. Usage of OVS routing tables
is now configurable (turned off by default) for better comparison of
results among various vSwitches.
* Multistream pre_installed_flows feature was generalized to
support P2P and PXP deployments and step driven TCs.
* IxNet: TRAFFIC['l4']['dstport'] will be used as a start value for port
iteration if L4 multistream feature is enabled.
* OVS: default flow template is now configurable via OVS_FLOW_TEMPLATE
* OVS: support of TRAFFIC['flow_type']='ip' was generalized to work
with connection methods (i.e. with P2P and PXP deployments and
step driven TCs)
* integration TCs: modification of integration TCs and their macros to
utilize new generic connection based API
* CI: list of TCs for VERIFY & MERGE jobs was changed to run
the same generic tests for both OVS & VPP
* documentation update
* small fixes and improvements
JIRA: VSPERF-579
Change-Id: If4e6e6037929eab9f16c2bbcb8a0fb30e5d6f9b0
Signed-off-by: Martin Klozik <martin.klozik@tieto.com>
Reviewed-by: Richard Elias <richard.elias@tieto.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Sridhar Rao <sridhar.rao@spirent.com>
|
|
|
|
While removing bridges, also remove any flows created on them.
JIRA: VSPERF-577
Change-Id: Ie0cbe65c823e690c9b3e5149ff2af0b56809fccd
Signed-off-by: Richard Elias <richard.elias@tieto.com>
Reviewed-by: Martin Klozik <martin.klozik@tieto.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Sridhar Rao <sridhar.rao@spirent.com>
|
|
Implementaiton of VPP methods dump_xconnect(), del_xconnect() and
del_bridge().
JIRA: VSPERF-576
Change-Id: Ifb3094d11d1b135e9a33effb1bf6d502db319a30
Signed-off-by: Martin Klozik <martin.klozik@tieto.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 <richard.elias@tieto.com>
|
|
On stop, remove all created bridges in order to clean the working
environment.
Moreover, when an OVS bridge is deleted, remove also all attached ports.
By the way, as the context manager of OFBridge is never used by the
current test implementation and by any OVS vswitches in order to manage
their creation/deletion, let's remove this dead code.
JIRA: VSPERF-570
Change-Id: I7ce62d56a8a2fe7b45e693f3c2dd91e1b435567c
Signed-off-by: Julien Meunier <julien.meunier@6wind.com>
|
|
Updated master Python scripts to conform to the newer pylint
1.8.2 standard.
JIRA: VSPERF-563
Change-Id: I19305a008a2e22c2f4841aa83fed85fbdc2d549c
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>
|
|
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>
|
|
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>
|
|
|
|
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>
|
|
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>
|
|
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>
|
|
Changes introduced by this patch:
* Configure more hugepages to be used during CI run.
* Fix detection of correct ovs-vswitchd execution.
* Skip VPP shutdown overhead in case that VPP execution
has failed.
Change-Id: Id1badd61334141dcc331691af4a1401a09d06807
Signed-off-by: Martin Klozik <martinx.klozik@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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Removes un-needed code to set multi-queue option on vhostuser ports.
JIRA: VSPerf-471
Change-Id: I9f58e53d9a9bb62ef5ed441a7b4b1dea37a2f557
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
Update to use options:dpdk-devargs coming from the Arbitray Port Naming feature
lately upstreamed in Ovs-DPDK project.
See Commit ID: 55e075e65ef9ecbd70e5e0fada2704c3d73724d8.
By this new param you can explicitly select a PCI slot for a dpdk port.
JIRA: VSPERF-449
Change-Id: Id6028cc4efbaf228a99c6f0a346a8e96a82e43a6
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
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: <bmichalo@redhat.com>
Reviewed-by: <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>
|
|
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>
|
|
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 multi-queue for vanilla OVS using virtio-net.
TunTap ports will use multi_queue parameter when ports are
created/deleted if guest nic queues are enabled and
vswitch is ovs vanilla. Virtio net will now add guest nic
queues to qemu command line if appropriate.
Reworked multi-queue documentation to reflect these changes.
Adds vhost net thread affinitization which is recommended
when performing vanilla ovs multi-queue.
Guests will require ethtool if using l2fwd or linux bridge
as the loopback application when vanilla ovs multi-queue
is enabled.
Modified dpdk setting in vswitch conf to be better worded
for separation from vanilla ovs multi-queue.
Updated release and installation doc for new vloop image
that includes required ethtool utility.
JIRA: VSPERF-373
Change-Id: Idb550515190b1a93390308c11f54da368f962512
Signed-off-by: Christian Trautman <ctrautma@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>
|
|
|
|
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>
|
|
Enables multi-queue option for OVS versions 2.5.0 or less with
dpdk. Instead of enabling MQ on a port by port basis this sets
the global MQ option after starting the ovs switch.
JIRA: VSPERF-372
Change-Id: I245c76779695518d0005122d8214bbf3f141bb96
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
ovs-appctl was broken due to a previous commit which changed the
location of the ovs-vswitchd pid file. This fixes it by placing
the pid back in the default location where ovs-appctl is looking
for.
JIRA: VSPERF-315
Change-Id: I4ae87ad566acb69ac9d565a3a77865f5a6861b93
Signed-off-by: MartinX Klozik <martinx.klozik@intel.com>
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
|
|
DPDK 16.07 changed the default log level of DPDK enabled applications.
Detection of the end of OVS initialization procedure has been changed
to work for various DPDK versions and for both DPDK and Vanilla OVS.
JIRA: VSPERF-316
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>
Reviewed-by: <sridhar.rao@spirent.com>
|
|
|
|
Add basic functions to enable/disable spanning tree
protocols on the bridge.
Also adds bridge info function to retrieve other bridge
information.
JIRA: VSPERF-314
Change-Id: Ic72c5a2a9d16aab1b95428ce37042a5b536481aa
Signed-off-by: Christian Trautman <ctrautma@redhat.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>
|
|
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>
|
|
Ovsdb must be up and running before any configuration
option is modified or vswitchd is executed.
Otherwise options won't be modified in DB and/or vswitchd
won't be able to use correct options during start up.
Change-Id: I04948d383272f2e694ec685b3a21d639068125ca
JIRA: VSPERF-291
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>
|
|
Configuration of DPDK options in ovs-vswitchd has changed.
Previously used option --dpdk was deprecated and all DPDK
related options have to be configured through ovsdb via ovs-vsctl
calls. VSPERF was modified to detect and use correct version
of DPDK configuration. New configuration options should
be put into VSWITCHD_DPDK_CONFIG dictionary.
VSPERF classes specific to OVS were refactored.
Change-Id: Ia3fad5906221439f477638f1f9734289dbf737bb
JIRA: VSPERF-291
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>
|
|
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>
|
|
Script for CI job execution automatically generates final test
report, collects log files and pushes these results into artifactory.
Support for branch specific configuration file has been added.
Change-Id: Ifdf13b1c4c389f8d20dbc8e0ed99f43273e0820b
JIRA: VSPERF-181
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.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
|