vswitchperf.git
5 years agopkt_gen: STC- Live Results Support 72/67072/2
Sridhar K. N. Rao [Wed, 20 Feb 2019 15:23:27 +0000 (20:53 +0530)]
pkt_gen: STC- Live Results Support

This patch adds live-results reporting from STC traffic generator.
STC reports per-port stream results every second. The results are
written to two different files in results folder.
Added configuration filename for stc-liveresults

JIRA: VSPERF-598

Change-Id: I37de6b5f544355e9e0dd42936328551b59afe065
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
5 years agoMerge "VSPERF: Add Timestamps to Logfiles"
Sridhar Rao [Sat, 16 Feb 2019 04:22:45 +0000 (04:22 +0000)]
Merge "VSPERF: Add Timestamps to Logfiles"

5 years agoMerge "pkt_gen: STC - Imix Genome Support"
Sridhar Rao [Fri, 15 Feb 2019 03:54:01 +0000 (03:54 +0000)]
Merge "pkt_gen: STC - Imix Genome Support"

5 years agoMerge "loadgen: Affinitize Stressor-VM Threads."
Sridhar Rao [Sun, 27 Jan 2019 06:41:40 +0000 (06:41 +0000)]
Merge "loadgen: Affinitize Stressor-VM Threads."

5 years agoVSPERF: Add Timestamps to Logfiles 37/66537/2
Sridhar K. N. Rao [Mon, 21 Jan 2019 06:59:46 +0000 (12:29 +0530)]
VSPERF: Add Timestamps to Logfiles

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>
5 years agopkt_gen: STC - Imix Genome Support 33/65033/4
Sridhar K. N. Rao [Mon, 12 Nov 2018 14:46:46 +0000 (20:16 +0530)]
pkt_gen: STC - Imix Genome Support

This patch adds Imix-Genome support to STC.
1. Imix, of type genome, is included in traffic configuration.
2. The genome is converted to appropriated weights and pkt-sizes.
3. Throughput test is run with imix-configuration.
4. genome configuration is added to results.
5. Added Reporting of Average-Frame-Size - if IMIX is configured.
6. Updated genome comments
7. Clarified the reference to RFC 6985.

JIRA: VSPERF-521

Change-Id: I813efb66338ee1d1320a01ce5e0834180461120c
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
5 years agoVSPERF: Timestamp Variable. 91/65591/1
Sridhar K. N. Rao [Wed, 5 Dec 2018 15:31:07 +0000 (21:01 +0530)]
VSPERF: Timestamp Variable.

LOG_TIMESTAMP name was misspelled. This patch fixes it.
This variable is only used by collectd-collector

Change-Id: I172dd96b717168cf3da76be6e631cc1d01af8663
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
5 years agoloadgen: Affinitize Stressor-VM Threads. 89/65589/1
Sridhar K. N. Rao [Wed, 5 Dec 2018 15:09:10 +0000 (20:39 +0530)]
loadgen: Affinitize Stressor-VM Threads.

This patch affinitizes stressor-vm threads.
The code is reused from vnfs/qemu/qemu.py

Change-Id: I4a525b133bf0799a06d0961379961cfcc89c357a
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
5 years agoRelease: Release notes for Gambia. 99/64999/2
Sridhar K. N. Rao [Sun, 11 Nov 2018 04:37:06 +0000 (10:07 +0530)]
Release: Release notes for Gambia.

Release notes added for Gambia.
Fixed some typos

Change-Id: I05c7f70341bdc8e0beda67185d0df968104bf547
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
5 years agoMerge "Results: Default latency-histrogram with Spirent TestCenter"
Sridhar Rao [Sun, 11 Nov 2018 03:01:49 +0000 (03:01 +0000)]
Merge "Results: Default latency-histrogram with Spirent TestCenter"

5 years agoLocal Documentation Builds 13/62513/6
Aric Gardner [Tue, 18 Sep 2018 15:06:19 +0000 (11:06 -0400)]
Local Documentation Builds

    When this is merged docs will be avaliable at
    https://opnfv-vswitchperf.readthedocs.io/en/latest/

    This adds configuration for performing local documentation builds
    with the following simple command:

    tox -e docs

    Also added index.rst

Change-Id: Ie5deaec6c94fc39d3a086df1a2ddec7c2829efd5
Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
5 years agoResults: Default latency-histrogram with Spirent TestCenter 63/63563/7
Sridhar K. N. Rao [Tue, 16 Oct 2018 05:11:30 +0000 (10:41 +0530)]
Results: Default latency-histrogram with Spirent TestCenter

The patch adds support to provide Latency histogram from Spirent traffic
generator.
1. 03_traffic.conf: Enable histogram, and set type (default)
2. testcenter.py: If histogram enabled, call the script with right flag.
3. testcenter-rfc2544-rest.py: configure and write histogram to a
separte file in the default results folder.
4. Fix PyLint Errors
5. Adding a patch to test the 'build-error-fix'. Increased the
MAX_MEMSEG of in DPDK-config to 1024
6. Adding MAX_MEMSEG configuration at common_base didn't work.
7. Included packet sizes in the output.
8. Included description under spirent TGen
9. Removed MAX_MEMSEG configuration.

Change-Id: I7787c1768d7ac650f0ce581f17ec78df7a964e31
JIRA: VSPERF-522
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
5 years agoCI: Reduce Daily-build tests. 33/64033/1
Sridhar K. N. Rao [Fri, 26 Oct 2018 04:23:43 +0000 (09:53 +0530)]
CI: Reduce Daily-build tests.

Only throughput tests for all packet sizes for ovs-with-dpdk and vpp.

JIRA: VSPERF-593

Change-Id: I03c39421ee572bf75b10f237d283c55e8bef7f76
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
5 years agoqemu_regex_fix: Regex change for future qemu versions info cpu 77/63377/1
Christian Trautman [Tue, 9 Oct 2018 17:29:11 +0000 (13:29 -0400)]
qemu_regex_fix: Regex change for future qemu versions info cpu

When running info cpus command on qemu newer versions of 2.12
the output has changed. This is causing the regex lookup for
the thread match to affinitize the PID to the correct CPU.

JIRA: VSPERF-592

Change-Id: Ie3a4490f3f8da1e4df00c7095cf1f05fdd939e07
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
5 years agoset version of matplotlib to 2.2.2 in requirments.txt. 27/63027/1
Bob Fubel [Thu, 27 Sep 2018 21:09:20 +0000 (17:09 -0400)]
set version of matplotlib to 2.2.2 in requirments.txt.

JIRA issues assoicated with the https://jira.opnfv.org/browse/VSPERF-591?filter=-1# VSPERF-591

Extended description:
Latest version of matplotlib 3.0.0 dosn't support python 3.4. Creating error during build.

Change-Id: I05f14fb486a5b0090bf27c66de0d6e4c85652330
Signed-off-by: Bob Fubel <bfubel@redhat.com>
5 years agoMerge "RHEL_75_INSTALL: Add install build script for RHEL 7.5 version"
Sridhar Rao [Wed, 19 Sep 2018 06:03:35 +0000 (06:03 +0000)]
Merge "RHEL_75_INSTALL: Add install build script for RHEL 7.5 version"

5 years agoMerge "docs: Fix typo in SRIOV docs"
Martin Klozik [Wed, 19 Sep 2018 06:03:29 +0000 (06:03 +0000)]
Merge "docs: Fix typo in SRIOV docs"

5 years agoMerge "Auto Generated INFO.yaml file"
Martin Klozik [Wed, 19 Sep 2018 06:02:32 +0000 (06:02 +0000)]
Merge "Auto Generated INFO.yaml file"

5 years agoAuto Generated INFO.yaml file 19/51719/2
agardner [Mon, 5 Feb 2018 19:45:40 +0000 (14:45 -0500)]
Auto Generated INFO.yaml file

INFO.yaml meant to be machine readable.
This file was auto generated from an ldap lookup
and your projects INFO file.

Meeting times are not currently filled out.
please ammend this patchset to complete

Going forward comitter promotions should be done
against this file.

PTLs:
Must be merged for you to gain delete access on
testresults.opnfv.org

If project_lead: is missing (my script could not parse)
please amend with same from commiters section eg:

project_lead: &opnfv_$project_ptl
    name: 'Lead Name'
    email: 'lead email'
    id: 'lead lfid'
    company: 'lead company'

Change-Id: I8c482b04045b0909d94ff69ac9951c61c4b26344
Signed-off-by: agardner <agardner@linuxfoundation.org>
5 years agodocs: Fix typo in SRIOV docs 39/62439/1
Martin Klozik [Tue, 18 Sep 2018 09:16:56 +0000 (11:16 +0200)]
docs: Fix typo in SRIOV docs

Details about SRIOV kernel settings were accidentally interrupted
by VPP related note.

JIRA: VSPERF-198

Change-Id: Id9d5ed39d62fbe16cf2e4f4aa730f5d15845b727
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>
5 years agoRHEL_75_INSTALL: Add install build script for RHEL 7.5 version 95/61795/1
Christian Trautman [Tue, 4 Sep 2018 05:58:50 +0000 (01:58 -0400)]
RHEL_75_INSTALL: Add install build script for RHEL 7.5 version

Adds build scripts that prevent compiling of incompatible packages
due to kernel.  Those packages can be installed from channel
subscripts or binaries can be built from upstream sources.

JIRA: VSPERF-589

Change-Id: I92821c64e43fb2e80b9c2978c0870a2c1d84409f
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
5 years agoMerge "Logging: Enhance logging with separate files and timestamps"
Sridhar Rao [Wed, 22 Aug 2018 14:48:47 +0000 (14:48 +0000)]
Merge "Logging: Enhance logging with separate files and timestamps"

5 years agoCollectd: Additional metrics storing options 39/59939/3
Sridhar K. N. Rao [Wed, 18 Jul 2018 13:31:24 +0000 (19:01 +0530)]
Collectd: Additional metrics storing options

In this patch, following options are added for collectd-metrics storing
1. Collect all the metrics written by collectd into csv file - a tar.gz
file is created. The timestamp is retained in the tar.gz file.
2. Selected metrics are written into a log file.
3. Fix Pylint errors
4. Terminate collectd by PID.

JIRA: VSPERF-588

Change-Id: Ib4d89d3dd6c622066fa0296b4415515fdca12252
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
5 years agoLogging: Enhance logging with separate files and timestamps 31/59931/3
Sridhar K. N. Rao [Wed, 18 Jul 2018 12:14:47 +0000 (17:44 +0530)]
Logging: Enhance logging with separate files and timestamps

This patch adds following:
1. overall.log file is change to vsperf-overall-timestamp.log files
2. The overall.log files will include timestamps too.
3. Separate log files for infrastructure metrics.
4. All timestamps of the logfiles for a given test will be same.
5. Store the timestamp in 'LOG_TIMESTAMP'
6. Create metrics-log only if 'COLLECTOR' is set to 'Collectd'

JIRA: VSPERF-586

Change-Id: I35d373a66b1074f6ee1a440ffc82bc3db03f36e7
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
5 years agoci: Support for negative pylint rating 03/59203/1
Martin Klozik [Thu, 28 Jun 2018 13:30:47 +0000 (15:30 +0200)]
ci: Support for negative pylint rating

Script ./check was updated to correctly parse and process negative pylint
ratings. Also awk expression was fixed to get rid of error messages
during parsing of pylint output.

JIRA: VSPERF-587

Change-Id: I72c5bd85f38274f308fce881517e5b6fa4a123dc
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>
5 years agoMerge "Xena_Flow_Fix: Fixes multistream of greater than 64k values"
Christian Trautman [Mon, 18 Jun 2018 19:13:58 +0000 (19:13 +0000)]
Merge "Xena_Flow_Fix: Fixes multistream of greater than 64k values"

5 years agoMerge "connections: Introduction of generic API"
Martin Klozik [Mon, 18 Jun 2018 18:40:11 +0000 (18:40 +0000)]
Merge "connections: Introduction of generic API"

5 years agoXena_Flow_Fix: Fixes multistream of greater than 64k values 55/57555/10
Christian Trautman [Thu, 17 May 2018 21:46:29 +0000 (17:46 -0400)]
Xena_Flow_Fix: Fixes multistream of greater than 64k values

Adds calculations to deal with values greater than 64k by doing
a square root of the multistream value and using two mods
to create the closet possible value that will work within the
current implementation of multistream in VSPerf.

JIRA: VSPERF-575

Change-Id: I9dab4bbac094a394a11ed74fe2cd88fbe7079fc7
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
5 years agoovs: Change default bridge names 23/58023/2
Martin Klozik [Tue, 5 Jun 2018 08:12:49 +0000 (10:12 +0200)]
ovs: Change default bridge names

Default names of OVS bridges used by vsperf were changed
to avoid accidental collision with 3rd party bridges
(e.g. linux bridges) already configured at DUT.
Step driven testcases, which extend existing deployment
scenarios, were updated to use appropriate configuration
options instead of hardcoded bridge names.

JIRA: VSPERF-580

Change-Id: I8c7eee6d8f6532485ec3a2cc06f26515e665fb7e
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>
5 years agovswitches/ovs: integration TCs refactoring 69/57069/7
Elias Richard [Thu, 31 May 2018 12:28:01 +0000 (14:28 +0200)]
vswitches/ovs: integration TCs refactoring

Refactorization of the tests in for the new teardown functionality, that automatically deletes flows, ports and bridges when OVS stops.

JIRA: VSPERF-578

Change-Id: Ibe18f89c59ca5474a638808ed072cccd811ee75d
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>
6 years agoconnections: Introduction of generic API 93/57893/5
Martin Klozik [Tue, 15 May 2018 08:42:35 +0000 (01:42 -0700)]
connections: Introduction of generic API

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>
6 years agoMerge "vswitches/ovs: delete flows on stop"
Martin Klozik [Mon, 28 May 2018 09:48:05 +0000 (09:48 +0000)]
Merge "vswitches/ovs: delete flows on stop"

6 years agovswitches/ovs: delete flows on stop 53/57053/3
Elias Richard [Fri, 4 May 2018 07:46:50 +0000 (09:46 +0200)]
vswitches/ovs: delete flows on stop

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>
6 years agovpp: Implement missing dump and del functions 25/57525/3
Martin Klozik [Thu, 17 May 2018 09:07:26 +0000 (02:07 -0700)]
vpp: Implement missing dump and del functions

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>
6 years agobugfix: Fix evaluation order of parameters 51/57251/1
Martin Klozik [Fri, 4 May 2018 09:23:09 +0000 (02:23 -0700)]
bugfix: Fix evaluation order of parameters

This patch ensures, that testcase definition keywords vSwitch,
Trafficgen, VNF and Tunnel Type will have the highest priority
to override any values specified via ``Parameters`` section,
CLI arguments or configuration files.

JIRA: VSPERF-574

Change-Id: Ied799187d489325a32cc4854145fdf9901e7e3e2
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>
6 years agoMerge "docs: Update step driven test documentation"
Martin Klozik [Thu, 10 May 2018 06:14:04 +0000 (06:14 +0000)]
Merge "docs: Update step driven test documentation"

6 years agoMerge "docs: Update configuration related docs"
Martin Klozik [Thu, 10 May 2018 06:13:53 +0000 (06:13 +0000)]
Merge "docs: Update configuration related docs"

6 years agoMerge "ovsdpdk: Custom Statistics Tests"
Sridhar Rao [Wed, 9 May 2018 12:10:53 +0000 (12:10 +0000)]
Merge "ovsdpdk: Custom Statistics Tests"

6 years agointegration: Tunneling protocols support update 47/57047/3
Martin Klozik [Fri, 4 May 2018 08:11:46 +0000 (01:11 -0700)]
integration: Tunneling protocols support update

Support of tunneling protocols by IxNet was limited to OP2P and PTUNP
deployment scenarios. This patch adds generic support for generation
of VXLAN, GRE and GENEVE frames by IxNet into integration testcases.

As part of this patch, the processing of tunnel type settings was
modified to follow VSPERF priority order during configuration parameter
evaluation.

JIRA: VSPERF-573

Change-Id: I7bf7d4a5545a6b130cc3ac252efaabe4b97bdb29
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: Cian Ferriter <cian.ferriter@intel.com>
Reviewed-by: Richard Elias <richard.elias@tieto.com>
6 years agodocs: Update step driven test documentation 37/56237/3
Martin Klozik [Mon, 23 Apr 2018 06:25:00 +0000 (07:25 +0100)]
docs: Update step driven test documentation

A minor update of step driven documentation, which should help
with better understanding of this feature.

Change-Id: I58d1483f98520a008c8cbea9c820343c33835e6f
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>
6 years agoMerge "vswitches/ovs: delete bridges on stop"
Sridhar Rao [Thu, 26 Apr 2018 03:37:44 +0000 (03:37 +0000)]
Merge "vswitches/ovs: delete bridges on stop"

6 years agoovsdpdk: Custom Statistics Tests 39/56339/3
Richard Elias [Mon, 23 Apr 2018 11:14:52 +0000 (12:14 +0100)]
ovsdpdk: Custom Statistics Tests

Functional testcases for the validation of Custom Statistics support
by OVS. The Custom Statistics feature allows Custom Statistics to be
accessed by VSPERF.
These statistics include for example rx_missed_errors, rx_errors,
tx_errors, rx_mbuf_allocation_errors, rx_crc_errors.
These testcases require DPDK v17.11, the latest Open vSwitch(v2.9.90)
and the IxNet traffic-generator.

JIRA: VSPERF-572

Change-Id: I30cbe6067d6bdd0fc2a262b86f306b66a77d085f
Signed-off-by: Richard Elias <richardx.elias@intel.com>
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>
6 years agodocs: Update configuration related docs 45/56245/1
Martin Klozik [Mon, 23 Apr 2018 08:18:03 +0000 (09:18 +0100)]
docs: Update configuration related docs

A minor update of configuration parameter related documentation.

Change-Id: Ia97c57162d212541b11ae44aea6eeee8d42f58cb
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>
6 years agoMerge "scapy: Load default SCAPY protocols"
Martin Klozik [Fri, 20 Apr 2018 08:23:25 +0000 (08:23 +0000)]
Merge "scapy: Load default SCAPY protocols"

6 years agoMerge "conf/testcases: add new continuous tests"
Sridhar Rao [Thu, 19 Apr 2018 08:32:27 +0000 (08:32 +0000)]
Merge "conf/testcases: add new continuous tests"

6 years agoMerge "sysmetrics/pidstat: monitor all threads"
Sridhar Rao [Thu, 19 Apr 2018 08:05:10 +0000 (08:05 +0000)]
Merge "sysmetrics/pidstat: monitor all threads"

6 years agovswitches/ovs: delete bridges on stop 55/54655/4
Julien Meunier [Thu, 12 Apr 2018 07:39:27 +0000 (09:39 +0200)]
vswitches/ovs: delete bridges on stop

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>
6 years agoscapy: Load default SCAPY protocols 93/55793/1
Martin Klozik [Mon, 16 Apr 2018 06:58:20 +0000 (07:58 +0100)]
scapy: Load default SCAPY protocols

After the fix of SCAPY library import, it was not possible to use
some of the network protocols by T-Rex. T-Rex 2.38 uses by default
SCAPY 2.3.1 for python3, but it overrides the default set of network
protocols loaded by layers/all.py. VSPERF makefile was modified to
restore original version of all.py from SCAPY 2.3.1 git repository.
Also examples of scapy usage were updated to generate correct traffic
with modified scapy version.

JIRA: VSPERF-566

Change-Id: Ib9ae3c572e693e86d30eb0467ab9c812fe8f335b
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>
6 years agoixia: Bugfixing and burst type enhancement 73/52973/2
Martin Klozik [Thu, 1 Mar 2018 09:22:47 +0000 (09:22 +0000)]
ixia: Bugfixing and burst type enhancement

A support for proper reporting of "Burst" traffic type was added.
Several bugs were fixed:
* RFC2544 Throughput - end of search condition was moved to avoid
  situation, that another iteration is executed but its results
  dropped
* RFC2544 Throughput - pause after each iteration was added to ensure
  that all frames are cleared from buffers; It improves stability
  of results. Also "received" values are no longer higher then
  "sent" values.
* VSPERF will report also the number of sent and received frames
* VSPERF will correctly process send and received values - they
  were switched on several places

JIRA: VSPERF-149
JIRA: VSPERF-562

Change-Id: I8a5caa6385a1ef86aa4bf4511d2753100ed0ab14
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>
6 years agoMerge "Doc: Documentation of Additional tools configuration."
Martin Klozik [Wed, 11 Apr 2018 09:42:13 +0000 (09:42 +0000)]
Merge "Doc: Documentation of Additional tools configuration."

6 years agoDoc: Documentation of Additional tools configuration. 33/54833/5
Sridhar K. N. Rao [Tue, 3 Apr 2018 18:33:21 +0000 (00:03 +0530)]
Doc: Documentation of Additional tools configuration.

This patch adds tools.rst under docs/testing/user/configguide.
tools.rst include documentation of installing and configuring
Collectors, Loadgens and LLC-Cache Management.
Changed Interested to Interesting and updated barometer info.

Change-Id: Id8de4d25619780636d242a04304696f4093b4c07
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
6 years agoMerge "trex: Add support for burst traffic type"
Martin Klozik [Wed, 11 Apr 2018 09:07:03 +0000 (09:07 +0000)]
Merge "trex: Add support for burst traffic type"

6 years agoMerge "trex: Support of SCAPY frame definition"
Martin Klozik [Wed, 11 Apr 2018 08:54:37 +0000 (08:54 +0000)]
Merge "trex: Support of SCAPY frame definition"

6 years agosysmetrics/pidstat: monitor all threads 89/55089/2
Julien Meunier [Fri, 30 Mar 2018 08:27:52 +0000 (10:27 +0200)]
sysmetrics/pidstat: monitor all threads

Since sysstat commit 52977c479d3d ("Introduce new SP_VALUE_100() macro
and use it in pidstat"), pidstat can return a wrong CPU usage for all
monitored PIDs.

For example, if a process like ovs-vswitchd uses 2 threads, the CPU
usage of each thread (TID) is equal to 100%, so the CPU usage of the
main process (PID) must be equal at least to 200%. However, with this
sysstat commit, the CPU usage is restricted to 100%. It is not possible
to change this behavior.

Now, pidstat is started in order to monitor all threads created by a
process. As the output header has changed, readapt the existing code.

In order to fix this issue, only the CPU usage is accumulated with all
threads. For all other measures, main process should report correct
values.

JIRA: VSPERF-569

Change-Id: I98aa94f545d04f4de1b994c420fb5756c6f2a387
Signed-off-by: Julien Meunier <julien.meunier@6wind.com>
6 years agoMerge "Doc: Release notes for Fraser"
Martin Klozik [Tue, 10 Apr 2018 06:02:42 +0000 (06:02 +0000)]
Merge "Doc: Release notes for Fraser"

6 years agoDoc: Release notes for Fraser 79/54879/3
Sridhar K. N. Rao [Wed, 4 Apr 2018 06:45:14 +0000 (12:15 +0530)]
Doc: Release notes for Fraser

Added release-notes for Fraser.
Updated SLES15 related enhancement
Consolidated and sorted the changes.

Change-Id: Id6ecea4b3cf3f38aa88c03bc4959b383c944f415
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
6 years agoUpdate Java to version 10 for SLE15 83/54983/1
Jose Lausuch [Thu, 5 Apr 2018 09:16:50 +0000 (11:16 +0200)]
Update Java to version 10 for SLE15

Newwer builds contain version 10 already.
For version 9, additional tweaks are needed.

Change-Id: Ic7d55a80ab48fb45113ee0f1ab9aaa797298b87f
Signed-off-by: Jose Lausuch <jalausuch@suse.com>
6 years agoAdd sshpass lib for Suse distros 05/54805/3
Jose Lausuch [Tue, 3 Apr 2018 14:18:23 +0000 (16:18 +0200)]
Add sshpass lib for Suse distros

This patch completes https://gerrit.opnfv.org/gerrit/#/c/52191

Change-Id: I35259bdcbdb67237576d7b9b6957266c48f6309f
Signed-off-by: Jose Lausuch <jalausuch@suse.com>
6 years agoscapy: Fix scapy import in Xena 73/54873/1
Martin Klozik [Wed, 4 Apr 2018 05:08:20 +0000 (06:08 +0100)]
scapy: Fix scapy import in Xena

Remove unnecessary scapy import, which is causing pylint error
with recent pylint version.

JIRA: VSPERF-566

Change-Id: I082de0e93242486248beaed6822a8d0f30fff7e5
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>
6 years agoMerge "Fix packages for SLES15"
Martin Klozik [Tue, 3 Apr 2018 07:22:14 +0000 (07:22 +0000)]
Merge "Fix packages for SLES15"

6 years agoMerge "python: Pylint 1.8.2 code conformity"
Martin Klozik [Tue, 3 Apr 2018 07:19:16 +0000 (07:19 +0000)]
Merge "python: Pylint 1.8.2 code conformity"

6 years agoMerge "scapy: Fix conflict of scapy libraries"
Martin Klozik [Tue, 3 Apr 2018 07:17:42 +0000 (07:17 +0000)]
Merge "scapy: Fix conflict of scapy libraries"

6 years agoMerge "ovs: Configurable arguments of ovs-*ctl"
Martin Klozik [Tue, 3 Apr 2018 07:17:32 +0000 (07:17 +0000)]
Merge "ovs: Configurable arguments of ovs-*ctl"

6 years agoconf/testcases: add new continuous tests 53/54653/1
Julien Meunier [Tue, 13 Feb 2018 10:51:55 +0000 (11:51 +0100)]
conf/testcases: add new continuous tests

Add new tests with continuous stream (multiple streams and VLAN) in
order to measure the throughput of a vSwitch at the line rate.

JIRA: VSPERF-568

Change-Id: I0e302ab611ba417cfb0a752e49de3212cb773a24
Signed-off-by: Julien Meunier <julien.meunier@6wind.com>
6 years agoovs: Configurable arguments of ovs-*ctl 95/54595/1
Martin Klozik [Thu, 29 Mar 2018 06:29:34 +0000 (07:29 +0100)]
ovs: Configurable arguments of ovs-*ctl

This patch introduces new configuration parameters OVS_OFCTL_ARGS,
OVS_VSCTL_ARGS and OVS_APPCTL_ARGS, which specify default arguments
passed to respective ovs-*ctl tools. So user can specify default
arguments passed to these tools inside configuration file, testcase
parameters or by --test-params option. For example OVS_OFCTL_ARGS
can be modified to use different OpenFlow version by default.

JIRA: VSPERF-567

Change-Id: Ie7448ea94a54b8044af12d0246d66514e057b7dc
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>
6 years agoFix packages for SLES15 87/54487/2
Jose Lausuch [Mon, 26 Mar 2018 16:25:02 +0000 (18:25 +0200)]
Fix packages for SLES15

Change-Id: Id01c4f76c146a0f0630bf1926ece48aabff0bfa1
Signed-off-by: Jose Lausuch <jalausuch@suse.com>
6 years agorhel_epel_fix: Fix installation of spel for sshpass 77/54477/1
Christian Trautman [Mon, 26 Mar 2018 12:41:54 +0000 (08:41 -0400)]
rhel_epel_fix: Fix installation of spel for sshpass

RHEL does not have an epel-release package available from default repos.
Removes this install to use fedora epel release to allow sshpass to install
correctly.

Change-Id: Ie313857420cb4eb2342128b5d11e769670ae70a0
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
6 years agoscapy: Fix conflict of scapy libraries 73/54373/2
Martin Klozik [Fri, 23 Mar 2018 05:34:24 +0000 (05:34 +0000)]
scapy: Fix conflict of scapy libraries

T-Rex requires a modified version of SCAPY library for python3
to function properly. It doesn't work with vanilla version of
scapy-python3 module, which is installed within vsperf environment by
pip for Xena. Currently vanilla scapy is imported by Xena and
enforced to T-Rex too, which causes following issues:

* missing implementation of Dot1AD causes failures
* broken multistream feature in T-Rex

VSPERF loads all Traffic Generator classes and thus all
imports performed at module level are performed. The solution
would be to import SCAPY module by Xena only in case, that Xena
traffic generator is really used. Please see JIRA for additional
information.

JIRA: VSPERF-566

Change-Id: I8018bc0126e752cc9f966252d17dadb6a5554b37
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>
6 years agopython: Pylint 1.8.2 code conformity 01/53401/5
Richard Elias [Wed, 28 Feb 2018 16:16:31 +0000 (16:16 +0000)]
python: Pylint 1.8.2 code conformity

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>
6 years agotrex: Support of SCAPY frame definition 89/54289/1
Martin Klozik [Tue, 6 Mar 2018 11:04:15 +0000 (11:04 +0000)]
trex: Support of SCAPY frame definition

T-Rex implementation in vsperf was improved to support:

* SCAPY frame definition, so additional network protocols
  can be generated by T-Rex and sent towards DUT
* VLAN configuration defined by TRAFFIC['vlan']
* enable or disable L2, L3, L4 and VLAN protocols
  as configured by TRAFFIC dictionary

VSPERF documentation was updated with examples of SCAPY
frame definition usage.

JIRA: VSPERF-565

Change-Id: Iff9baba47a1e83d321f6ba3c1c482965b9882241
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>
6 years agotrex: Add support for burst traffic type 71/52971/3
Martin Klozik [Wed, 28 Feb 2018 14:34:23 +0000 (06:34 -0800)]
trex: Add support for burst traffic type

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>
6 years agoMerge "trex: Update T-Rex to v2.38"
Martin Klozik [Thu, 22 Mar 2018 05:43:34 +0000 (05:43 +0000)]
Merge "trex: Update T-Rex to v2.38"

6 years agovsperf: Performance Matrix functionality support 57/53857/3
Richard Elias [Wed, 28 Feb 2018 15:48:00 +0000 (15:48 +0000)]
vsperf: Performance Matrix functionality support

The patch expands the vsperf --test-params argument with list
functionality, which enables running multiple tests with different
parameters. If more tests are run then parameters provided, the
last parameters will be reused. Example:
./vsperf --test-params "['','TRAFFICGEN_PKTSIZE = (64,)']"
phy2phy_cont phy2phy_cont
CUMULATIVE_PARAMS if true, instead of using the default settings,
each test will take the parameters of the previous test before
applying it's own.
The patch also adds the vsperf --matrix argument which analyzes and
compares the results of all the tests run, printing it as a table,
as well as saving it into a file in the results directory.
MATRIX_METRIC metric used by Performance Matrix to compare tests.

JIRA: VSPERF-554

Change-Id: I71530ddf110890612236a7e57039f249609c835b
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>
6 years agotrex: Update T-Rex to v2.38 81/54081/2
Martin Klozik [Mon, 19 Mar 2018 07:22:16 +0000 (07:22 +0000)]
trex: Update T-Rex to v2.38

Default API version of T-Rex was changed to v2.38. T-Rex related
documentation was updated to inform user, that the same version
of T-Rex must be used for both server and client.

JIRA: VSPERF-564

Change-Id: Ib1bedde683efafa84a6069b55daa0507700dbb30
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>
6 years agoMerge "pylint: Add pylint into requirements.txt"
Martin Klozik [Fri, 16 Mar 2018 05:25:02 +0000 (05:25 +0000)]
Merge "pylint: Add pylint into requirements.txt"

6 years agoMerge "trex: Tests with T-Rex in VM"
Martin Klozik [Fri, 16 Mar 2018 05:24:21 +0000 (05:24 +0000)]
Merge "trex: Tests with T-Rex in VM"

6 years agopylint: Add pylint into requirements.txt 11/53511/1
Martin Klozik [Mon, 12 Mar 2018 09:37:49 +0000 (09:37 +0000)]
pylint: Add pylint into requirements.txt

Pylint installation was part of vsperf installation scripts, which is
not following vsperf generic approach to add all required python
packages into requirements.txt. It also means, that the same
version of pylint is used for verification of all patches at given
server. This is causing issues in case, that different versions
of pylint are required to verify vsperf code, e.g. older version
might be required to verify patches of previous OPNFV release.

Pylint with exact version number was added into requirements.txt,
so correct version of pylint is used for verification of vspef code.

JIRA: VSPERF-563

Change-Id: I48c9cacd87f016e6047ed965728d3b8d63e6461f
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>
6 years agotrex: Tests with T-Rex in VM 91/52191/8
Martin Klozik [Mon, 12 Feb 2018 14:20:45 +0000 (14:20 +0000)]
trex: Tests with T-Rex in VM

Patch introduces a set of testcases with T-Rex running inside VM.

JIRA: VSPERF-560

Change-Id: I5b0a0220a2d72428ae1210ee9590d39abdfb9c1d
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Signed-off-by: RadoslawX Glombiowski <radoslawx.glombiowski@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Sridhar Rao <sridhar.rao@spirent.com>
6 years agoci: Fix typo in MERGE job definition 11/53211/1
Martin Klozik [Wed, 7 Mar 2018 07:00:11 +0000 (07:00 +0000)]
ci: Fix typo in MERGE job definition

Fix of the typo in the name of pylint check function.

Change-Id: Ie67c95715bd3fda76b2ae47ac8bb48807ffc58c5
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>
6 years agoXena_Doc_mono_install_update: Update mono install pointer 51/52851/1
Christian Trautman [Wed, 28 Feb 2018 17:34:38 +0000 (12:34 -0500)]
Xena_Doc_mono_install_update: Update mono install pointer

Mono Version 5.10 breaks mono execution of Xena2544.exe.

Fix Xena install notes to point to a working version of Mono(5.8)
when setting up to use Xena2544.exe.

JIRA:VSPERF-561

Change-Id: I3bbfaaeef55fc465cba943eb8b1a31abe2faba1f
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
6 years agoMerge "Trex_speed_improvement: Add logic for dealing with high speed cards"
Martin Klozik [Mon, 26 Feb 2018 12:25:21 +0000 (12:25 +0000)]
Merge "Trex_speed_improvement: Add logic for dealing with high speed cards"

6 years agoTrex_speed_improvement: Add logic for dealing with high speed cards 79/51779/11
Christian Trautman [Tue, 6 Feb 2018 18:57:42 +0000 (13:57 -0500)]
Trex_speed_improvement: Add logic for dealing with high speed cards

Adds configuration options and logic to detect maximum supported
speed of T-Rex server side cards.

1. Adds logic to pull maximum supported speed from port info
2. Adds forcable option to have user specify maximum speed
3. If logic cannot detect speed from port_info because it is
   not available or the forcable option is not set it will
   assume 10G speeds.
4. Tested on Intel XXV25G and Mellanox ConnectX-5 cards
5. Added packet structure logging to show packet info for
   better debugging capabilities
6. Adds core mask to take advantage of multiple cores if
   server is started with more than default number of cores
7. Adds packets lost logging to RFC2544 Throughput testing

JIRA: VSPERF-559

Change-Id: I7fcfda7ccc408c30830950ee3668e01b8624c20a
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
6 years agoMerge "LTD: Expand requirements of Soak/Long Duration Tests"
Martin Klozik [Thu, 22 Feb 2018 15:53:08 +0000 (15:53 +0000)]
Merge "LTD: Expand requirements of Soak/Long Duration Tests"

6 years agoMerge "loadgen: Support for Stressor-VMs as a Loadgen"
Martin Klozik [Tue, 13 Feb 2018 14:14:00 +0000 (14:14 +0000)]
Merge "loadgen: Support for Stressor-VMs as a Loadgen"

6 years agopython34_update: Updated build scripts for Centos and RHEL to python34 77/51777/2
Christian Trautman [Tue, 6 Feb 2018 16:49:55 +0000 (11:49 -0500)]
python34_update: Updated build scripts for Centos and RHEL to python34

Recent patch update to collectd requires new packages that must
have python34 as a minimum version available. This updates the
build scripts for Centos and RHEL to use scl enabled python34.

1. Adds needed packages to build correctly for Centos and RHEL
2. Changes repo location to pull scl enabled python34
3. Modifies enablement of scl to new package string
4. Updates documentation to reflect change

JIRA: VSPERF-558

Change-Id: I52257ecfc6abc2112c30137c1de3ced272f21066
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
6 years agocollector: Support for collectd as one of the collectors. 17/47917/15
Sridhar K. N. Rao [Tue, 28 Nov 2017 10:43:50 +0000 (16:13 +0530)]
collector: Support for collectd as one of the collectors.

The changes include:
1. Configuration in 05_collector.conf. User can specify the
metrics that are of their interest and also fine tune the same.
2. collectd_bucky.py: This is derived from python_bucky library.
Formal approval for reuse is obtained.
3. collectd.py: This is the main file that receives the samples,
stores the required ones, plots the values and saves the values in
a data-file in results folder.
4. Fixed some pylint errors
5. Added required libraries to requirements.txt. hashlib is supported by
default. However, matplotlib and numpy required
6. added __init__.py to overcome import errors.
7. Crypto needs pycrypto module
8. Builtin filter function usage return bad-builtin pylint warning.
Rewrite to remove filter function.
9. Added support for reporting the ovs processes statistics.
10. Import order corrected according to pylint
11. Fixed copyright issues, removed python-3 checking, enhance to
include VPP and qemu processes.
12. Removed pylint disables.
13. Added documentaion to describe sample information
14. Added @staticmethod to remove disable-no-self-use.
15. Fixed year in Copyright.
16. Updated print_results function to print the process values.
17. Removed example values form INTELRDT_XKEYS in conf file
18. Removed use of len(SEQUENCE) in loop and renamed data to pdata to
avoid name clashes
19. Fixed issue with requirements.txt
Note: A separate documentation covering all external tools will be
provided.

JIRA: VSPERF-505

Change-Id: Ieedcbe7b92e8933263d34df12b1e24be8447b524
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
6 years agoLTD: Expand requirements of Soak/Long Duration Tests 51/50951/4
Al Morton [Mon, 22 Jan 2018 18:06:45 +0000 (13:06 -0500)]
LTD: Expand requirements of Soak/Long Duration Tests

In Project discussion on Jan 17, 2018 including review of RFC 8204,
we identified the following five areas to improve the Soak tests.
See the JIRA ticket for details.

JIRA: VSPERF-557

Change-Id: I5314c283a383c57d99863fcf7262c4f28e1c12a8
Signed-off-by: Al Morton <acmorton@att.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.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>
6 years agoMerge "llc-management: Support for LLC management with RMD"
Martin Klozik [Mon, 29 Jan 2018 07:20:26 +0000 (07:20 +0000)]
Merge "llc-management: Support for LLC management with RMD"

6 years agobugfix: Define _EXECUTED_PIDS in config file 23/50923/1
Martin Klozik [Mon, 22 Jan 2018 11:23:41 +0000 (11:23 +0000)]
bugfix: Define _EXECUTED_PIDS in config file

Add definition of internal _EXECUTED_PIDS list into generic
configuration file.

JIRA: VSPERF-556

Change-Id: I6c237cb563c0a37bf806561d1f841587796399b8
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
6 years agollc-management: Support for LLC management with RMD 19/47919/9
Sridhar K. N. Rao [Tue, 28 Nov 2017 10:53:01 +0000 (16:23 +0530)]
llc-management: Support for LLC management with RMD

This patch adds support for LLC-Last level cache
management using RMD. The changes include:
1. 08_llcmanagement.conf: The configuration file to define cache
allocation policy.
2. testcase.py: To trigger llc-allocation and cleanup before and
after the test, respectively.
3. llc_management/rmd.py: The main file the performs the llc
allocation and cleanup.
4. llc_management/resthttp.py: Generic utility to call rest APIs,
with http.
5. Fixed a build error due to change in name mismatch.
6. Fixed pylint errors. Override built-in function error.
7. Added empty __init__.py to avoid import errors
8. Fixed deprecated functions errors
9. Fixed copyright issues, removed python-3 checking.
10. Removed pylint disables.
11. resthttp.py is already part of stcrestclient used in
tools/pkt_gen/testcenter/ scripts. Hence, deleted from the source.
12. Year update from the license
13. Fixed some testcases.py collision issue

JIRA: VSPERF-544

Change-Id: I7cbd155dd66f5a0cef544751841e71b95c9b6821
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
6 years agoloadgen: Support for Stressor-VMs as a Loadgen 21/47921/6
Sridhar K. N. Rao [Tue, 28 Nov 2017 11:22:15 +0000 (16:52 +0530)]
loadgen: Support for Stressor-VMs as a Loadgen

This patch adds support for stressor-VMs as a loadgen in VSPERF.
The changes include:
1. 07_loadgen.conf: User can specify the stressor-VM specific
configuration. It includes, image-name, path, nics, memory, etc.
2. loadgen/stressorvm/stressor_vm.py: This file implement ILoadGenerator
interface. It implements all the necessary APIs for starting and
stopping the loads.
3. Fixed Pylint Error
4. Removed the network device configuration from qemu-system-x86_64
command as stessor-vm mostly focus on CPU and memory stressing.
5. Moved the creation of loadgen after the VNFs are setup in
testcase.py.
6. Fixed copyright issues.
7. Removed python-3 checking. Improved exception handling
8. Set Default loadgen as DummyLoadGen
9. Improved OSError Printing with directory name and error
10. Update the year in license. 2017-2018.

JIRA: VSPERF-504

Change-Id: Iad6c0780c184f8e36eddcbcae2a580f41118e8dc
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
6 years agoMerge "documentation: Traffic Capture methods"
Martin Klozik [Fri, 19 Jan 2018 14:19:56 +0000 (14:19 +0000)]
Merge "documentation: Traffic Capture methods"

6 years agoMerge "trex: Improve error handling"
Martin Klozik [Fri, 19 Jan 2018 10:06:14 +0000 (10:06 +0000)]
Merge "trex: Improve error handling"

6 years agotrex: Improve error handling 85/50485/4
Martin Klozik [Fri, 12 Jan 2018 10:25:15 +0000 (10:25 +0000)]
trex: Improve error handling

Print an error message in case, that vsperf is not able
to connect to the T-Rex server. User is instructed
to check if T-Rex server is up and running.

Change-Id: I70c6d27fa8331921d43e25c5eaa3638ded6c015b
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>
6 years agoixia: Add support of LISTs in TRAFFIC 79/50779/1
Martin Klozik [Thu, 18 Jan 2018 15:22:42 +0000 (15:22 +0000)]
ixia: Add support of LISTs in TRAFFIC

The control script for Ixia (i.e. Ixia and IxNet classes)
is written in TCL and thus VSPERF must translate TRAFFIC
dictionary into TCL notation. The method for data type
conversion was updated to correctly process new 'capture'
settings, which uses python lists for tx and rx capture
ports definition.

JIRA: VSPERF-556

Change-Id: I639942b11ea11ce1b443a2a2e99c3da6619ba569
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>
6 years agodocumentation: Traffic Capture methods 23/50423/2
Richard Elias [Mon, 8 Jan 2018 10:05:01 +0000 (10:05 +0000)]
documentation: Traffic Capture methods

Created new chapter on Traffic Capture and added short descriptions and explanation for each of the three methods currently supported by VSPERF. Subchapters include Traffic Capture in the VM, Traffic for testing NICs with Hardware acceleration and Traffic Capture on the Trraffic Generator.

JIRA: VSPERF-556

Change-Id: I280c54aa73961e0bbb61b40e8fe476bd3e92ff7d
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>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
6 years agotrex: Add support for traffic capture 49/50349/2
Martin Klozik [Thu, 4 Jan 2018 10:32:48 +0000 (10:32 +0000)]
trex: Add support for traffic capture

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>
6 years agocapture: Traffic capture examples 97/50397/2
Martin Klozik [Tue, 19 Dec 2017 08:58:43 +0000 (08:58 +0000)]
capture: Traffic capture examples

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>
6 years agovswitch: Improve add_phy_port error messages 15/50115/2
Martin Klozik [Fri, 5 Jan 2018 13:24:09 +0000 (13:24 +0000)]
vswitch: Improve add_phy_port error messages

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>
6 years agoMerge "trafficgen: Postponed call of connect()"
Martin Klozik [Thu, 4 Jan 2018 07:13:16 +0000 (07:13 +0000)]
Merge "trafficgen: Postponed call of connect()"