Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
Configuration options modified by VSPERF were split
between config_base and config_linuxapp files. Makefile
was modified to reflect this change.
Additional changes:
* content of qemu shared dir is copied without preservation
of attributes to avoid compilation issues due misaligned
clocks => could produce broken igb_uio module
* added support of new testpmd "Bye.." message
* DPDK sources are copied from RTE_SDK_USER directory for all
VNF variants - this has been wrongly reverted by inttest patch
Change-Id: Id502a072c1f843258496decbf031e7ba7264d459
JIRA: VSPERF-297
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>
Reviewed-by: Michal Weglicki <michalx.weglicki@intel.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>
|
|
Integration TC support has been enhanced to support PVP
and PVVP scenarios. Definition of integration testcases
have been modified to use a sort of macros for repetitive
parts.
Additional improvements were introduced:
* instances of testcases are created only for testcases
selected for execution
* new TC definition options allow to define test specific
vswitch, VNF, traffic generator and test options
* tests filter applied on pattern specified by --tests
allows to define negative filter only; In that case
list of all tests is used as base for negative filter.
* traffic values defined within teststep passed to send_traffic
is merged with default values; This is essential for execution
of TCs with linux_bridge or SRIOV support. It also simplifies
integration TC definition
* typos removed
Change-Id: Icb734a7afd7e5154f27a8ff25615a39e01f58c27
JIRA: VSPERF-213
JIRA: VSPERF-216
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
Always copy testpmd sources from the directory with vHost User
version of DPDK. This will avoid possible issues with missing
dependencies in some VM images. It will also ensure, that testpmd
inside VM is agnostic to chosen vHost method.
Change-Id: I0496cc846eff3f7d4c1aef0a9c825545a4c3c818
JIRA: VSPERF-283
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:
* sleep after VM OS shutdown allows QEMU to finish its own shutdown
procedure
* shared dir was mounted as read only to prevent its modification,
which sometimes causes delays during shutdown; Also warning messages
are causing CI jobs failures.
Change-Id: I1607e79beeee343893496efe01ca0be5ea684a9d
JIRA: VSPERF-271
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 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>
|
|
Cleanup phase of PVVP scenario sometimes causes server reboot.
It seems, that forced kill of VMs is the root cause. So graceful
shutdown of VMs was introduced.
Change-Id: I427404406fd7174d2a034f3cf0b51fe0833f9ecf
JIRA: VSPERF-271
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>
|
|
Several issues have been fixed to decrease a number of warning
and error messages written to the standard output. Error and
warning messages causes false build failure report by Jenkins,
in case that internal parsing of job output is enabled.
Fixed issues:
* qemu makefile updated
* shared directories between host and guests are forcibly deleted
before vsperf execution
* nonstop_tsc cpu flag is exported from host to the guest
* vloop-vnf help has been updated and changelog added
* TCL scripts updated to print info instead of warning
* vloop-vnf image updated to avoid snmpd related warnings
Change-Id: Id9ca014bae8fa34772b67d1ebab3431682682931
JIRA: VSPERF-206
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
|
|
Support for multiple modes of VSPERF operation has been added.
These modes can be used for standalone execution of traffic
generator or for manual testing or for execution of unsupported
traffic generator. Supported modes are: "normal" - execute vSwitch,
VNF and traffic generator; "trafficgen" - execute only traffic
generator; "trafficgen-off" - execute vSwitch and VNF.
Normal mode is selected by default.
In case that trafficgen mode is selected, then various
--test-params could be specified to affect traffic generator
configuration. These parameters include traffic type, frame rate,
bidirectional and scalability settings. Selection of transport
protocol is not supported by IxNet yet (UDP is enforced), thus
modification of transport protocol from command line is not
supported too.
Fixes of testpmd and qemu warning patches are inclduded.
Change-Id: Idac10fe03e724075268a01ec3eb0817fba830aec
JIRA: VSPERF-173
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
|
|
Qemu 2.3.0 requires image type to be explicitly set to 'raw'
for shared directories with FAT. Required option "type=raw"
is compatible with older QEMU versions, so it can be passed
to QEMU by default.
Change-Id: Icca5e4249cc2c05c0b9609d7bd34368b4b86f492
JIRA: VSPERF-187
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
Final test report MD file should contain information about version
of vswitch, vnf, VM loopback forwarding application and traffic
generator used during the test. In case that component is cloned
from GIT repository, then hash of its recent commit should be
part of the report too.
Change-Id: I4eb398bc95bc5030d0852d08bcf9febbf17640d4
JIRA: VSPERF-172
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Radek Zetik <radekx.zetik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
|
|
Additional modifications are required to support vloop_vnf
as a master VM image for PVP and PVVP deployments.
Firewall is disabled directly by call of iptables to avoid
dependency on distribution specific firewall handling.
Default configuration values in 04_vnf.conf were set according
to vloop_vnf to make its usage easy. Values are generic
enough to work well also with other images.
Parameters VANILLA_NICx_NAME and vanilla_nicx_name were renamed
to GUEST_NICx_NAME and guest_nicx_name respectively, because
they are used for all vswitch versions. Functionality
of CLI options was fixed. Default values of GUEST_NICx_NAME
were changed to work with vloop_vnf image.
Bug with modification of TRAFFIC_DEFAULTS values has been fixed.
Deep copy is used and l2 and l3 dictionaries are correctly
updated to avoid issues.
Qemu disc emulation has been set to SCSI again to avoid
error messages related to non-functional DMA in syslog. Appropriate
kernel modules were added into vloop_vnf to support scsi
disk emulation during boot.
Change-Id: I5901f454861f99d21cca03030d6d5468ab71a8af
JIRA: VSPERF-133
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
|
|
In case, that VSPERF detects missing locale settings, it will
set language and encodding settings to default values specified
by configuration parameter DEFAULT_LOCALE.
Localized external commands with output parsed by VSPERF
are executed with modified locale to ensure correct VSPERF
function. Locale settings for such commands is specified
by configuration parameter DEFAULT_CMD_LOCALE.
Change-Id: If5c15115b778ce90046e390f10438b780f82695b
JIRA: VSPERF-132
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: Brian Castelli <brian.castelli@spirent.com>
Reviewed-by: Gurpreet Singh <gurpreet.singh@spirent.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
|
|
For PVP and PVVP deployments, traffic inside virtual machines must be
forwarded between its interfaces. There are several forwarding options
supported by VSPERF, including DPDK testpmd, Huawei l2fwd kernel module
and linux bridge. Another option is, that VM image has built in forwarding
functionality and vsperf doesn't configure it itself.
User can select VM loopback application by configuration option
GUEST_LOOPBACK (per VM) or by SCALAR cli option guest_loopback (global
settings).
Selected guest loopback application(s) will be written into test results
CSV file and test report MD file.
Default wildcarded guest login prompt was added. Guest startup guarding
timer can be configured. Path to OVS kernel module has been fixed.
Change-Id: If738da1ea09112f9cf2267afcbc99a6797f3a03a
JIRA: VSPERF-130
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
|
|
Support for PVP and PVVP scenerios using Vanilla OVS was added.
VMs are configured to forward traffic between virtual interfaces
by standard linux capabilities. Traffic generator script was updated
to accept MAC and IP address configuration to allow VM forwarding
configuration.
VSPERF-66, VSPERF-70
Change-Id: Ia70ab6be547b39928a1eae319faba779d4e29284
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
Reviewed-by: Gene Snider <eugene.snider@huawei.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
|
|
Generic PVVP deployment support has been added. Two
new testcase scenarios for throughput and back2back
tests with PVVP deployment were added. Original
implementation of PVP has been refactored
Following files were affected:
modified: conf/01_testcases.conf
modified: conf/02_vswitch.conf
modified: conf/04_vnf.conf
modified: core/__init__.py
modified: core/component_factory.py
modified: core/loader/loader_servant.py
modified: core/vnf_controller.py
deleted: core/vnf_controller_p2p.py
deleted: core/vnf_controller_pvp.py
modified: core/vswitch_controller_p2p.py
modified: core/vswitch_controller_pvp.py
new file: core/vswitch_controller_pvvp.py
modified: docs/to-be-reorganized/NEWS.rst
modified: docs/to-be-reorganized/quickstart.rst
modified: src/dpdk/dpdk.py
modified: src/ovs/ofctl.py
modified: testcases/testcase.py
modified: tools/tasks.py
new file: vnfs/qemu/qemu.py
new file: vnfs/qemu/qemu_dpdk.py
modified: vnfs/qemu/qemu_dpdk_vhost_cuse.py
modified: vnfs/qemu/qemu_dpdk_vhost_user.py
modified: vnfs/vnf/vnf.py
modified: vswitches/ovs_dpdk_vhost.py
Change-Id: Ib6869a29337a184cb58c57fd96bba1183aba00ab
JIRA: VSPERF-68, VSPERF-69
Signed-off-by: Martin Klozik (martinx.klozik@intel.com)
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
|
|
Enable PVP testing using vhost-cuse as guest access method
Recent changes:
* Move NEWS.md changes to NEWS.rst
* Update comment to vhost-cuse
* Restore config back to checkout state after make
* Merge OPNFV 1092 updates
* Add PVP-vhost-cuse to NEWS.md
* Add comment/example to GUEST_CORE_BINDING
* Move hardcoded values to conf/04_vnfs.conf
* Set default VNF to QemuDpdkVhostCuse
* Compile eventfd_link if VHOST_USER=n
* Use MAC and PCI address from conf
* Use vhost method in conf to properly set interface type
JIRA: VSPERF-59
Change-Id: Ib1159e216f3e25b9971c0935969680582683916b
Signed-off-by: Madarang, Dino Simeon <dino.simeonx.madarang@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
|
|
Enable booting of a VM with DPDK and run testpmd for
PVP testing.
* Added throughput and back2back tests with pvp deployment scenario in
01_testcases.conf
* PVP requires DPDK 2.0 with VHOST_USER enabled and QEMU 2.2.0
* Tested on CentOS7 and Fedora 20
* Fix conflict with change 1078
Recent Changes:
* Fix merge conflict (testcase.py and testcases.conf)
* Remove QEMU_DIR. User must set QEMU_BIN
* Set bidir traffic to True
* Add flow for bi-directional traffic
* Use working OVS_TAG ad2e649834be20dd01b1632799fe778106a96a2d
* Merge change 1096 (src: Add QEMU makefile)
* Set virtio-net-pci csum=off and other variables to off
* Move hardcoded values to conf/*
JIRA: VSPERF-56
Change-Id: I4ad184531064855493483d9833a7722c9f7d3576
Signed-off-by: Madarang, Dino Simeon <dino.simeonx.madarang@intel.com>
Signed-off-by: Meghan Halton <meghan.halton@intel.com>
Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
|
|
This commit adds the vSwitch Integration Test Framework whose
design, based off TOIT, is outlined in the HLD previously made
availiable to the community for review.
The design of this framework allows developers to add different
implementations of components, specifically vSwitches, Traffic
Generators, Metrics Collectors and VNFs, easily.
The goal of this design is that all testcases should run regardless of
what is "under the hood".
This commit adds support for running the framework for a phy to phy
RFC2544 testcase only. More testcases will be added by the community.
vSwitches supported at this time:
* Intel DPDK (r) accelerated OpenvSwitch
Traffic Generators supported at this time:
* IxNet - IxNetwork Implementation
* Ixia - IxExplorer Implementation
* Dummy - Manual Implementation
Metrics Collectors supported at this time:
* Linux Metrics
No VNFs are supported at this time but the framework outlines how they
should be integrated and provides APIs for them to adhere to.
JIRA: VSPERF-27
Change-Id: I312e1a1199487ffee8f824be06cd97d4f793eee0
Signed-off-by: Stephen Finucane <Stephen.Finucane@intel.com>
Signed-off-by: Meghan Halton <Meghan.Halton@intel.com>
Signed-off-by: Christopher Nolan <Christopher.Nolan@intel.com>
Signed-off-by: Maryam Tahhan <Maryam.Tahhan@intel.com>
Signed-off-by: Ciara Loftus <Ciara.Loftus@intel.com>
Signed-off-by: Mark Kavanagh <Mark.B.Kavanagh@intel.com>
Signed-off-by: Cian Ferriter <Cian.Ferriter@intel.com>
Signed-off-by: Timo Puha <TimoX.Puha@intel.com>
Signed-off-by: Billy O'Mahony <billy.o.mahony@intel.com>
Signed-off-by: Michal Weglicki <MichalX.Weglicki@intel.com>
Signed-off-by: Rory Sexton <Rory.Sexton@intel.com>
Signed-off-by: Ian Stokes <Ian.Stokes@intel.com>
Signed-off-by: Kevin Traynor <Kevin.Traynor@intel.com>
Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Reviewed-by: Eugene Snider <Eugene.Snider@huawei.com>
Reviewed-by: Aihua Li <aihua.li@huawei.com>
|