Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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 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>
|