summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-10-11Merge "integration: Test vHost User numa awareness"Martin Klozik7-14/+387
2016-10-09CLI: add Multiqueue params.Antonio Fischetti4-3/+59
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>
2016-10-09Merge "Integration Test: 4 serial VMs testcases."Maryam Tahhan1-0/+139
2016-10-05integration: Test vHost User numa awarenessMartin Klozik7-14/+387
Open vSwitch with DPDK can optimize memory usage in case of NUMA architecture to avoid unnecessary memory access across NUMA slots. In a nutshell, PMD threads serving virtual NICs are co-located at the same NUMA slot as QEMU instance, which is using these NICs. This patch adds new (functional) integration testcase, which verifies OVS vHost User numa awareness feature. Step driven test objects were updated to allow a call of OS utilies and evaluation of conditions. Also the documentation was updated with the list of supported test objects and their methods. JIRA: VSPERF-377 Change-Id: I184e71e066d27b5b9fc9e6a9f7e240e2d1b5a0fa Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Ciara Loftus <ciara.loftus@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>
2016-10-04Merge "pkt_gen: Spirent Testcenter RFC 2889 Support"Martin Klozik8-1/+595
2016-10-04Merge "cmd_timeout: Add ovs command timeout configuration option"Martin Klozik2-2/+6
2016-10-03cmd_timeout: Add ovs command timeout configuration optionChristian Trautman2-2/+6
Adds option for configurable timeout for ovs commands. JIRA: VSPERF-396 Change-Id: Ie73dfea1a088a5c92bef705f1fe874ddeeaec5a7 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-10-03bugfix: Correct VM handling by integration testsMartin Klozik2-6/+23
Patch with multi VM support has changed the way how data are copied into the shared folder. Also new support of GUEST_ options expansion requires proper initialization with exact number of VMs involved in the test. Code of class specific to integration tests was updated to initialize both GUEST_ options and VM shared dir correctly. Original values of all GUEST_ options are restored after the testcase execution. So other TCs can use original values for configuration expansion to required number of VMs. JIRA: VSPERF-361 Change-Id: Ic1149fbc73f73a66982bb64173b2217e55597200 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>
2016-09-29ci: Update default DPDK and OVS versionsMartin Klozik1-4/+2
VSPERF was updated to use DPDK16.07 and OVS 2.6.90 by default. This change should improve a performance. It will also solve failures of VSPERF verify and merge jobs at OPNFV Jenkins, because newer OVS version is compatible with Linux Kernel 4.4. JIRA: VSPERF-378 Change-Id: I636dd96facd3f6357f215290eb2382c9cc16150e 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>
2016-09-23bugfix: Qemu shared dir failureMartin Klozik1-2/+14
In case of testpmd or l2fwd loopback app, VSPERF copies sources if these tools into qemu shared folder. Maximum size of folder content is limited to approx. 500MB. This limit is exceeded in case that DPDK is built for multiple RTE_TARGETs. Unnecessary files are excluded from the copy to spare size inside shared folder. JIRA: VSPERF-398 Change-Id: Iab31a6ff2397f7031eae6a95d424317c3343d4d9 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>
2016-09-21pkt_gen: Spirent Testcenter RFC 2889 SupportSridhar K. N. Rao8-1/+595
The changes/additions, apart from spirent testcenter-specific, also includes to some files in conf (01_testcase and 03_traffic) and core (result- constants, traffic_controller and component_factory) folders. Currently, only RFC2889 Forwarding testcase is supported. Incorporated following review suggestions: 1. Log level fixes 2. Removing unused function in results_constants.py 3. Added documentation to docs/configguide/trafficgen.rst. Userguide will be updated once other RFC2889 tests are implemented. 4. string matching in component_factory. 5. Remove Trailing Whitespaces JIRA: VSPERF-286 Change-Id: I0195720ab2f8cf2c3a5aa490d66166bdca0afcb0 Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
2016-09-20Merge "paths: Support binary packages"Martin Klozik22-248/+635
2016-09-15paths: Support binary packagesMartin Klozik22-248/+635
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>
2016-09-14merge_buffers: Add option to disable merge buffer on qemu startupChristian Trautman2-2/+13
In cases with VHost user and non-jumbo frame scenarios we can disable merge buffers on the guest NICS to improve performance. This patch adds this option to the 04_vnf conf file. JIRA: VSPERF-388 Change-Id: Ic1f776e90fdccaa5d5a0c952c96811a8747fe936 Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-09-08bugfix: SRIOV used wrong device namesMartin Klozik2-6/+6
QemuPciPassthrough class responsible for SRIOV testing used wrong device names for GUEST configuration. Details of HOST interfaces connected to the traffic generator were used to initialize forwarding applications inside the guest. Code was fixed to use correct device configuration. As part of this fix, old bug in VNF type detection was fixed. JIRA: VSPERF-389 Change-Id: I269c9232012980c600c171571e90beb11e7b72cd 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>
2016-09-07Integration Test: 4 serial VMs testcases.Antonio Fischetti1-0/+139
Implementation of RFC2544 throughput/back2back and continuous testcases with 4 serial VMs. Topology is: Phy1-VM0-VM1-VM2-VM3-Phy2. This patch requires Patch VSPERF-326 "Integration test implementation: Multi-PVP with explicit Flows". v2: rebased to master to fix conflicts. JIRA: VSPERF-364 Change-Id: Ib731bf6dc4634d6347b1c521bb82326db90a6c63 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>
2016-09-07pkt_gen: MoonGen code clean upbmichalo1-64/+54
MoonGen code optimizations and general clean up. No functionality changes. JIRA: VSPERF-351 Change-Id: Ida16f16eb218eb6f0a1c90594c38511bfbb2cf97 Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-09-06Merge "docs: Fix links and formatting"Martin Klozik3-49/+94
2016-09-05docs: Fix links and formattingMartin Klozik3-49/+94
Documentation was updated as follows: * section decorators were fixed in LTD * links to testcase and deployment descriptions were fixed * duplicate labels removed from LTP&LTD * fixed typos in formatting and text * links to scalability and stress tests fixed after their renaming JIRA: VSPERF-349 Change-Id: I86c2b723231431388b69d3d696805de2a4e12435 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>
2016-09-05Merge "multi VM: Fix p2p deployment"Martin Klozik1-2/+3
2016-09-05multi VM: Fix p2p deploymentMartin Klozik1-2/+3
Revert enforced vsperf failure in case, that VnfController is used in scenario without VNFs. Instance of VnfController is created for all scenarios including p2p, so it must be prepared for it. JIRA: VSPERF-361 Change-Id: Icf6e88e7ea62044c09bb194c260ea878d6a197c9 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>
2016-09-02Merge "test_spec: Remove formatted text file verions of IETF Draft"Maryam Tahhan3-3696/+0
2016-09-02Merge "multi VM: Multi VMs in serial or parallel"Martin Klozik20-553/+964
2016-09-02docs: Remove links to Brahmaputra documentationMartin Klozik1-2/+2
Hyperlinks to the yardstick documentation were updated to refer to files generated from the master branch. JIRA: VSPERF-349 Change-Id: I248795b6a951377885492515fa9b96a694c9da5d 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>
2016-09-02Merge "vhost_affin_fixup: Change vhost thread from regex to pgrep usage"Martin Klozik1-5/+4
2016-09-01test_spec: Remove formatted text file verions of IETF DraftAl Morton3-3696/+0
Remove files with IETF copyrights (Internet Draft .txt files). I assume these files have to be removed in C-stable branch... JIRA: VSPERF-387 Change-Id: I76709ab055f845cec0bec8d07b14c29dec349f54 Signed-off-by: Al Morton <acmorton@att.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Bill Michalowski <bmichalo@redhat.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Antonio Fischetti <antonio.fischetti@intel.com>
2016-09-01multi VM: Multi VMs in serial or parallelMartin Klozik20-553/+964
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>
2016-09-01vhost_affin_fixup: Change vhost thread from regex to pgrep usageChristian Trautman1-5/+4
Change vhost affinity process lookup to use pgrep instead of ugly error prone regex method as suggested. Change-Id: I8cac00a7f2d26ba1ce1815535a198f578159222c Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-08-26pkt_gen: MoonGen Incorrect RX_MBPS Calculationbmichalo1-1/+1
Misplaced parenthesis regarding THROUGHPUT_RX_MBPS JIRA: VSPERF-381 Change-Id: Ie33cf6ca88164f0686a819715b5f9f7409072063 Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-08-26docs: vloop-vnf changelog updateMartin Klozik1-0/+6
Documentation was updated to reflect recent changes of vloop-vnf image. JIRA: VSPERF-374 Change-Id: I65a34a7618593a7b77c38eb2fa4c87619b937346 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>
2016-08-24Vanilla_Multi_Queue: Add vanilla ovs multi-queue functionalityChristian Trautman9-50/+139
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>
2016-08-24guest_drive_type: Adds guest drive configuration optionsChristian Trautman2-3/+10
Adds boot and mounted drive configuration options. JIRA: VSPERF-379 Change-Id: Ic0673a9b9f7a3430d7ac4db5fb9bf4228872f501 signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-08-18cuse: Remove vHost Cuse supportMartin Klozik13-158/+34
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>
2016-08-18Merge "old_style_multi-queue: Allows for multi-queue with ovs <= 2.5.0"Martin Klozik3-4/+26
2016-08-16Integration Test: Multi-VM with parallel PVP connections.Antonio Fischetti3-19/+259
Implementation of 3 testcases with multi-VMs in parallel. Flows are explicitly set on UDP destination ports so that each packet is sent to a specific VM. Topology is: Phy1-VM1-Phy2, Phy1-VM2-Phy2,.. This patch requires change #16855 "ovs/ofctl: Fix validation method for complex flows." JIRA: VSPERF-326 Change-Id: I59d23354bc9c6db470a59faba13bdcd6f2beb19d 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>
2016-08-16integration: Support for VxLAN TC without using overlay traffic gen.Sugesh Chandran6-0/+345
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>
2016-08-16old_style_multi-queue: Allows for multi-queue with ovs <= 2.5.0Christian Trautman3-4/+26
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>
2016-08-14docs: add vm2vm testing methodologyMaryam Tahhan5-0/+42
Change-Id: I8a89ee3eedd3b439f0243eaef2fafc50ee807739 Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
2016-08-14Merge "docs: add LTP to index.rst"Maryam Tahhan3-30/+26
2016-08-12doc_fixup: Grammar and link fixes to documentationChristian Trautman4-7/+21
Fixes minor grammar and link issues. JIRA: VSPERF-349 Change-Id: Id8708aee5b099287b5c99e79ca6da9ab8778897f Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-08-12pkt_gen: Spirent changes to Harmonize test/trial terminologysridharkn1-7/+9
Added changes to make use of the tests parameter. The change is minor. Prior to this the value was taken from configuration file. With this change, the tests value is used as passed. JIRA: VSPERF-367 Change-Id: I9d1553d3b53dd19a79428ddaaacadb55fc27324f Signed-off-by: Sridhar Rao <sridhar.rao@spirent.com>
2016-08-12docs: add LTP to index.rstMaryam Tahhan3-30/+26
Fix build issues and add the LTP to index.rst. JIRA: DOCS-95 Change-Id: I2d22646af935c544645c01600b92a5f51ede39ec Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
2016-08-12pkt_gen: Update MoonGen Documentionbmichalo1-0/+15
Updating MoonGen configuration guide JIRA: VSPERF-370 Change-Id: I577491a6ece249a6162e1a3595a8682b826e5734 Signed-off-by: bmichalo <bmichalo@redhat.com>
2016-08-11hugepage_fix: Fix free hugepage calcluationChristian Trautman2-5/+5
Fixes hugepage free calculation when hugepage size is not 1GB. Calculation previously assumed 1GB in size. This change allows for all sizes to be calculated properly. Change-Id: Ib05800f51992e9757c412a66296a47ad29e88a3b Signed-off-by: Christian Trautman <ctrautma@redhat.com>
2016-08-10Merge "docs: split LTD into LTP and LTD."Maryam Tahhan2-1050/+1327
2016-08-10Merge "integration_cleanup: Force testcase cleanup to always run"Maryam Tahhan1-86/+87
2016-08-10Merge "Xena_2544_tput_options: Add options for rfc 2544 testing"Maryam Tahhan5-0/+64
2016-08-10Merge "hugepages: change default num pages + deallocate"Maryam Tahhan2-15/+32
2016-08-10docs: split LTD into LTP and LTD.Maryam Tahhan2-1050/+1327
Change-Id: Id0b2ce7460e76ffb3d478bd255a7e5b8e75ba001 Signed-off-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>
2016-08-09integration_cleanup: Force testcase cleanup to always runChristian Trautman1-86/+87
During testcase development on the integration side, if namespaces are used or veth ports and an exception is raised. The namespaces and veth ports are not properly cleanup up because the run_finalize does not get executed. This patch wraps the testing block in a try block where a finally will ALWAYS execute the run_finalize thus preventing the possiblity of leftover testing artifacts. JIRA: VSPERF-328 Change-Id: I4ea5f29a48b9171f330847f34b5b30ef3ab22f27 Signed-off-by: Christian Trautman <ctrautma@redhat.com>