Merge "[docs] Add vEPC test case preparation steps"
authorAbhijit Sinha <abhijit.sinha@intel.com>
Mon, 5 Nov 2018 15:42:31 +0000 (15:42 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Mon, 5 Nov 2018 15:42:31 +0000 (15:42 +0000)
50 files changed:
docs/release/release-notes/release-notes.rst
docs/release/results/euphrates_fraser_comparison.rst
docs/release/results/images/tc014_pod_fraser.png [moved from docs/release/results/images/tc014_pod_fraseer.png with 100% similarity]
docs/release/results/overview.rst
docs/release/results/results.rst
docs/release/results/yardstick-opnfv-vtc.rst [deleted file]
docs/templates/test_results_template.rst
docs/testing/developer/devguide/devguide.rst
docs/testing/developer/devguide/devguide_nsb_prox.rst
docs/testing/user/userguide/01-introduction.rst
docs/testing/user/userguide/04-installation.rst
docs/testing/user/userguide/05-operation.rst
docs/testing/user/userguide/08-grafana.rst
docs/testing/user/userguide/09-api.rst
docs/testing/user/userguide/12-nsb-overview.rst
docs/testing/user/userguide/13-nsb-installation.rst
docs/testing/user/userguide/14-nsb-operation.rst
docs/testing/user/userguide/15-list-of-tcs.rst
docs/testing/user/userguide/comp-intro.rst
docs/testing/user/userguide/opnfv_yardstick_tc010.rst
docs/testing/user/userguide/opnfv_yardstick_tc011.rst
docs/testing/user/userguide/opnfv_yardstick_tc012.rst
docs/testing/user/userguide/opnfv_yardstick_tc019.rst
docs/testing/user/userguide/opnfv_yardstick_tc025.rst
docs/testing/user/userguide/opnfv_yardstick_tc027.rst
docs/testing/user/userguide/opnfv_yardstick_tc040.rst
docs/testing/user/userguide/opnfv_yardstick_tc042.rst
docs/testing/user/userguide/opnfv_yardstick_tc050.rst
docs/testing/user/userguide/opnfv_yardstick_tc052.rst
docs/testing/user/userguide/opnfv_yardstick_tc055.rst
docs/testing/user/userguide/opnfv_yardstick_tc057.rst
docs/testing/user/userguide/opnfv_yardstick_tc063.rst
docs/testing/user/userguide/opnfv_yardstick_tc069.rst
docs/testing/user/userguide/opnfv_yardstick_tc073.rst
docs/testing/user/userguide/opnfv_yardstick_tc074.rst
docs/testing/user/userguide/opnfv_yardstick_tc081.rst
docs/testing/user/userguide/opnfv_yardstick_tc084.rst
docs/testing/user/userguide/opnfv_yardstick_tc087.rst
docs/testing/user/userguide/opnfv_yardstick_tc092.rst
docs/testing/user/userguide/opnfv_yardstick_tc093.rst
docs/testing/user/userguide/references.rst
samples/vnf_samples/nsut/agnostic/HTTP_requests_concurrency.yaml [new file with mode: 0755]
samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixload_2ports.yaml [new file with mode: 0755]
samples/vnf_samples/nsut/agnostic/tc_baremetal_http_ixload__Requests_Concurrency_suite.yaml [new file with mode: 0755]
samples/vnf_samples/nsut/agnostic/tc_baremetal_http_ixload__Requests_Concurrency_template.yaml [new file with mode: 0755]
yardstick/benchmark/scenarios/networking/vnf_generic.py
yardstick/benchmark/scenarios/parser/parser.py
yardstick/network_services/traffic_profile/http_ixload.py
yardstick/tests/unit/benchmark/scenarios/networking/test_vnf_generic.py
yardstick/tests/unit/network_services/traffic_profile/test_prox_binsearch.py

index 745db44..457b308 100644 (file)
@@ -5,7 +5,7 @@ License
 OPNFV Fraser release note for Yardstick Docs
 are licensed under a Creative Commons Attribution 4.0 International License.
 You should have received a copy of the license along with this.
-If not, see <http://creativecommons.org/licenses/by/4.0/>.
+If not, see <https://creativecommons.org/licenses/by/4.0/>.
 
 The *Yardstick framework*, the *Yardstick test cases* are open-source software,
  licensed under the terms of the Apache License, Version 2.0.
@@ -17,11 +17,11 @@ OPNFV Fraser Release Note for Yardstick
 .. toctree::
    :maxdepth: 2
 
-.. _Yardstick: https://wiki.opnfv.org/yardstick
+.. _Yardstick: https://wiki.opnfv.org/display/yardstick
 
-.. _Dashboard: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-main
+.. _Dashboard: http://testresults.opnfv.org/grafana/
 
-.. _NFV-TST001: http://www.etsi.org/deliver/etsi_gs/NFV-TST/001_099/001/01.01.01_60/gs_NFV-TST001v010101p.pdf
+.. _NFV-TST001: https://www.etsi.org/deliver/etsi_gs/NFV-TST/001_099/001/01.01.01_60/gs_NFV-TST001v010101p.pdf
 
 
 Abstract
@@ -149,9 +149,9 @@ Deliverables
 Documents
 ---------
 
- - User Guide: :ref:`<yardstick-userguide>`
+ - User Guide: :ref:`<yardstick:userguide>`
 
- - Developer Guide: :ref:`<yardstick-devguide>`
+ - Developer Guide: :ref:`<yardstick:devguide>`
 
 
 Software Deliverables
@@ -606,7 +606,7 @@ Useful links
 
  - wiki Yardstick Fraser release planing page: https://wiki.opnfv.org/display/yardstick/Release+Fraser
 
- - Yardstick repo: https://git.opnfv.org/cgit/yardstick
+ - Yardstick repo: https://git.opnfv.org/yardstick
 
  - Yardstick CI dashboard: https://build.opnfv.org/ci/view/yardstick
 
index 53dfb99..1dd328b 100644 (file)
@@ -2,7 +2,15 @@
 .. License.
 .. http://creativecommons.org/licenses/by/4.0
 
-=======================================================
+..
+      Convention for heading levels in Yardstick:
+      =======  Heading 0 (reserved for the title in a document)
+      -------  Heading 1
+      ^^^^^^^  Heading 2
+      +++++++  Heading 3
+      '''''''  Heading 4
+      Avoid deeper levels because they do not render well.
+
 Test results analysis for Euphrates and Fraser releases
 =======================================================
 
index 9fd7479..b5e6a43 100644 (file)
@@ -3,6 +3,15 @@
 .. http://creativecommons.org/licenses/by/4.0
 .. (c) OPNFV, Ericsson AB and others.
 
+..
+      Convention for heading levels in Yardstick:
+      =======  Heading 0 (reserved for the title in a document)
+      -------  Heading 1
+      ^^^^^^^  Heading 2
+      +++++++  Heading 3
+      '''''''  Heading 4
+      Avoid deeper levels because they do not render well.
+
 Yardstick test tesult document overview
 =======================================
 
index 0ed92f8..f0c2036 100644 (file)
@@ -2,8 +2,17 @@
 .. License.
 .. http://creativecommons.org/licenses/by/4.0
 
+..
+      Convention for heading levels in Yardstick:
+      =======  Heading 0 (reserved for the title in a document)
+      -------  Heading 1
+      ^^^^^^^  Heading 2
+      +++++++  Heading 3
+      '''''''  Heading 4
+      Avoid deeper levels because they do not render well.
+
 Results listed by test cases
-==========================
+----------------------------
 
 .. _TOM: https://wiki.opnfv.org/display/testing/R+post-processing+of+the+Yardstick+results
 
@@ -14,7 +23,7 @@ the determined state of the specific test case as executed in the Fraser release
 process. All test date are analyzed using TOM_ tool.
 
 Scenario Results
-================
+----------------
 
 .. _Dashboard: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-main
 .. _Jenkins: https://build.opnfv.org/ci/view/yardstick/
@@ -42,7 +51,7 @@ Test results of executed tests are avilable in Dashboard_ and logs in Jenkins_.
 Test results for Fraser release are collected from April 10, 2018 to May 13, 2018.
 
 Feature Test Results
-====================
+--------------------
 
 The following features were verified by Yardstick test cases:
 
@@ -54,8 +63,6 @@ The following features were verified by Yardstick test cases:
 
    * Parser
 
-   * Virtual Traffic Classifier (see :doc:`yardstick-opnfv-vtc`)
-
    * StorPerf
 
 .. note:: The test cases for IPv6 and Parser Projects are included in the
diff --git a/docs/release/results/yardstick-opnfv-vtc.rst b/docs/release/results/yardstick-opnfv-vtc.rst
deleted file mode 100644 (file)
index 059b549..0000000
+++ /dev/null
@@ -1,248 +0,0 @@
-.. This work is licensed under a Creative Commons Attribution 4.0 International
-.. License.
-.. http://creativecommons.org/licenses/by/4.0
-
-.. _Dashboard006: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-tc006
-.. _Dashboard007: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-tc007
-.. _Dashboard020: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-tc020
-.. _Dashboard021: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-tc021
-.. _DashboardVTC: http://testresults.opnfv.org/grafana/dashboard/db/vtc-dashboard
-====================================
-Test Results for yardstick-opnfv-vtc
-====================================
-
-.. toctree::
-   :maxdepth: 2
-
-
-Details
-=======
-
-.. after this doc is filled, remove all comments and include the scenario in
-.. results.rst by removing the comment on the file name.
-
-
-Overview of test results
-------------------------
-
-.. general on metrics collected, number of iterations
-
-The virtual Traffic Classifier (vtc) Scenario supported by Yardstick is used by 4 Test Cases:
-
-- TC006
-- TC007
-- TC020
-- TC021
-
-
-* TC006
-
-TC006 is the Virtual Traffic Classifier Data Plane Throughput Benchmarking Test.
-It collects measures about the end-to-end throughput supported by the
-virtual Traffic Classifier (vTC).
-Results of the test are shown in the Dashboard006_
-The throughput is expressed as percentage of the available bandwidth on the NIC.
-
-
-* TC007
-
-TC007 is the Virtual Traffic Classifier Data Plane Throughput Benchmarking in presence of
-noisy neighbors Test.
-It collects measures about the end-to-end throughput supported by the
-virtual Traffic Classifier when a user-defined number of noisy neighbors is deployed.
-Results of the test are shown in the Dashboard007_
-The throughput is expressed as percentage of the available bandwidth on the NIC.
-
-
-* TC020
-
-TC020 is the Virtual Traffic Classifier Instantiation Test.
-It verifies that a newly instantiated vTC is alive and functional and its instantiation
-is correctly supported by the underlying infrastructure.
-Results of the test are shown in the Dashboard020_
-
-
-* TC021
-
-TC021 is the Virtual Traffic Classifier Instantiation in presence of noisy neighbors Test.
-It verifies that a newly instantiated vTC is alive and functional and its instantiation
-is correctly supported by the underlying infrastructure when noisy neighbors are present.
-Results of the test are shown in the Dashboard021_
-
-* Generic
-
-In the Generic scenario the Virtual Traffic Classifier is running on a standard Openstack
-setup and traffic is being replayed from a neighbor VM. The traffic sent contains
-various protocols and applications, and the VTC identifies them and exports the data.
-Results of the test are shown in the DashboardVTC.
-
-Detailed test results
----------------------
-
-* TC006
-
-The results for TC006 have been obtained using the following test case
-configuration:
-
-- Context: Dummy
-- Scenario: vtc_throughput
-- Network Techology: SR-IOV
-- vTC Flavor: m1.large
-
-
-* TC007
-
-The results for TC007 have been obtained using the following test case
-configuration:
-
-- Context: Dummy
-- Scenario: vtc_throughput_noisy
-- Network Techology: SR-IOV
-- vTC Flavor: m1.large
-- Number of noisy neighbors: 2
-- Number of cores per neighbor: 2
-- Amount of RAM per neighbor: 1G
-
-
-* TC020
-
-The results for TC020 have been obtained using the following test case
-configuration:
-
-The results listed in previous section have been obtained using the following
-test case configuration:
-
-- Context: Dummy
-- Scenario: vtc_instantiation_validation
-- Network Techology: SR-IOV
-- vTC Flavor: m1.large
-
-
-* TC021
-
-The results listed in previous section have been obtained using the following
-test case configuration:
-
-- Context: Dummy
-- Scenario: vtc_instantiation_validation
-- Network Techology: SR-IOV
-- vTC Flavor: m1.large
-- Number of noisy neighbors: 2
-- Number of cores per neighbor: 2
-- Amount of RAM per neighbor: 1G
-
-
-For all the test cases, the user can specify different values for the parameters.
-
-* Generic
-
-The results listed in the previous section have been obtained, using a
-standard Openstack setup.
-The user can replay his/her own traffic and see the corresponding results.
-
-Rationale for decisions
------------------------
-
-* TC006
-
-The result of the test is a number between 0 and 100 which represents the percentage of bandwidth
-available on the NIC that corresponds to the supported throughput by the vTC.
-
-
-* TC007
-
-The result of the test is a number between 0 and 100 which represents the percentage of bandwidth
-available on the NIC that corresponds to the supported throughput by the vTC.
-
-* TC020
-
-The execution of the test is done as described in the following:
-
-- The vTC is deployed on the OpenStack testbed;
-- Some traffic is sent to the vTC;
-- The vTC changes the header of the packets and sends them back to the packet generator;
-- The packet generator checks that all the packets are received correctly and have been changed
-correctly by the vTC.
-
-The test is declared as PASSED if all the packets are correcly received by the packet generator
-and they have been modified by the virtual Traffic Classifier as required.
-
-
-* TC021
-
-The execution of the test is done as described in the following:
-
-- The vTC is deployed on the OpenStack testbed;
-- The noisy neighbors are deployed as requested by the user;
-- Some traffic is sent to the vTC;
-- The vTC change the header of the packets and sends them back to the packet generator;
-- The packet generator checks that all the packets are received correctly and have been changed
-correctly by the vTC
-
-The test is declared as PASSED if all the packets are correcly received by the packet generator
-and they have been modified by the virtual Traffic Classifier as required.
-
-* Generic
-
-The execution of the test consists of the following actions:
-
-- The vTC is deployed on the OpenStack testbed;
-- The traffic generator VM is deployed on the Openstack Testbed;
-- Traffic data are relevant to the network setup;
-- Traffic is sent to the vTC;
-
-
-
-Conclusions and recommendations
--------------------------------
-
-* TC006
-
-The obtained results show that the virtual Traffic Classifier can support up to 4 Gbps
-(40% of the available bandwidth) correspond to the expected behaviour of the virtual
-Traffic Classifier.
-Using the configuration with SR-IOV and large flavor, the expected throughput should
-generally be in the range between 3 and 4 Gbps.
-
-
-* TC007
-
-These results correspond to the configuration in which the virtual Traffic Classifier uses SR-IOV
-Virtual Functions and the flavor is set to large for the virtual machine.
-The throughput is in the range between 2.5 Gbps and 3.7 Gbps.
-This shows that the effect of 2 noisy neighbors reduces the throughput of
-the service between 10 and 20%.
-Increasing number of neihbours would have a higher impact on the performance.
-
-
-* TC020
-
-The obtained results correspond to the expected behaviour of the virtual Traffic Classifier.
-Using the configuration with SR-IOV and large flavor, the expected result is that the vTC is
-correctly instantiated, it is able to receive and send packets using SR-IOV technology
-and to forward packets back to the packet generator changing the TCP/IP header as required.
-
-
-* TC021
-
-The obtained results correspond to the expected behaviour of the virtual Traffic Classifier.
-Using the configuration with SR-IOV and large flavor, the expected result is that the vTC is
-correctly instantiated, it is able to receive and send packets using SR-IOV technology
-and to forward packets back to the packet generator changing the TCP/IP header as required,
-also in presence of noisy neighbors.
-
-* Generic
-
-The obtained results correspond to the expected behaviour of the virtual Traffic Classifier.
-Using the aforementioned configuration the expected application protocols are identified
-and their traffic statistics are demonstrated in the DashboardVTC, a group of popular
-applications is selected to demonstrate the sound operation of the vTC.
-The demonstrated application protocols are:
-- HTTP
-- Skype
-- Bittorrent
-- Youtube
-- Dropbox
-- Twitter
-- Viber
-- iCloud
index f04b2b2..8885588 100644 (file)
@@ -1,3 +1,18 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International
+.. License.
+.. http://creativecommons.org/licenses/by/4.0
+
+..
+   Convention for heading levels in Yardstick documentation:
+
+   =======  Heading 0 (reserved for the title in a document)
+   -------  Heading 1
+   ~~~~~~~  Heading 2
+   +++++++  Heading 3
+   '''''''  Heading 4
+
+   Avoid deeper levels because they do not render well.
+
 =====================
 Yardstick Test Report
 =====================
@@ -46,16 +61,16 @@ TCXXX
    on-demand test cases (HA, KVM, Parser)
 
 * Overview of test results
-.. general on metrics collected, number of iterations
+  .. general on metrics collected, number of iterations
 
 * Detailed test results
-.. info on lab, installer, scenario
+  .. info on lab, installer, scenario
 
 * Rationale for decisions
-.. pass/fail
+  .. pass/fail
 
 * Conclusions and recommendations
-.. did the expected behavior occured?
+  .. did the expected behavior occured?
 
 General
 =======
index 4fe01c1..76ed7c6 100755 (executable)
@@ -47,7 +47,7 @@ your field of interest is.
 Where can I find some help to start?
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-.. _`user guide`: http://artifacts.opnfv.org/yardstick/danube/1.0/docs/stesting_user_userguide/index.html
+.. _`user guide`: https://artifacts.opnfv.org/yardstick/docs/testing_user_userguide/index.html
 .. _`wiki page`: https://wiki.opnfv.org/display/yardstick/
 
 This guide is made for you. You can have a look at the `user guide`_.
@@ -401,7 +401,7 @@ Gerrit & JIRA introduction
 ++++++++++++++++++++++++++
 
 .. _Gerrit: https://www.gerritcodereview.com/
-.. _`OPNFV Gerrit`: http://gerrit.opnfv.org/
+.. _`OPNFV Gerrit`: http://gerrit.opnfv.org/gerrit
 .. _link: https://identity.linuxfoundation.org/
 .. _JIRA: https://jira.opnfv.org/secure/Dashboard.jspa
 
@@ -485,7 +485,7 @@ Git repository::
 
   JIRA: YARDSTICK-XXX
 
-.. _`this document`: http://chris.beams.io/posts/git-commit/
+.. _`this document`: https://chris.beams.io/posts/git-commit/
 
 The message that is required for the commit should follow a specific set of
 rules. This practice allows to standardize the description messages attached
@@ -510,8 +510,8 @@ Yardstick committers and contributors to review your codes.
    :alt: Gerrit for code review
 
 You can find a list Yardstick people
-`here <https://wiki.opnfv.org/display/yardstick/People>`_, or use the
-``yardstick-reviewers`` and ``yardstick-committers`` groups in gerrit.
+`here <https://wiki.opnfv.org/display/yardstick/Yardstick+People>`_, or use
+the ``yardstick-reviewers`` and ``yardstick-committers`` groups in gerrit.
 
 Modify the code under review in Gerrit
 ++++++++++++++++++++++++++++++++++++++
index 7999005..582668b 100755 (executable)
@@ -15,7 +15,7 @@ Prerequisites
 
 In order to integrate PROX tests into NSB, the following prerequisites are required.
 
-.. _`dpdk wiki page`: http://dpdk.org/
+.. _`dpdk wiki page`: https://www.dpdk.org/
 .. _`yardstick wiki page`: https://wiki.opnfv.org/display/yardstick/
 .. _`Prox documentation`: https://01.org/intel-data-plane-performance-demonstrators/documentation/prox-documentation
 .. _`openstack wiki page`: https://wiki.openstack.org/wiki/Main_Page
index 494b1ef..74e752d 100755 (executable)
@@ -9,8 +9,8 @@ Introduction
 
 **Welcome to Yardstick's documentation !**
 
-.. _Pharos: https://wiki.opnfv.org/pharos
-.. _Yardstick: https://wiki.opnfv.org/yardstick
+.. _Pharos: https://wiki.opnfv.org/display/pharos
+.. _Yardstick: https://wiki.opnfv.org/display/yardstick
 .. _Presentation: https://wiki.opnfv.org/download/attachments/2925202/opnfv_summit_-_yardstick_project.pdf?version=1&modificationDate=1458848320000&api=v2
 
 Yardstick_ is an OPNFV Project.
@@ -70,7 +70,7 @@ This document consists of the following chapters:
   Yardstick - Network service benchmarking to test real world usecase for a
   given VNF.
 
-* Chapter :doc:`13-nsb_installation` provides instructions to install
+* Chapter :doc:`13-nsb-installation` provides instructions to install
   *Yardstick - Network Service Benchmarking (NSB) testing*.
 
 * Chapter :doc:`14-nsb-operation` provides information on running *NSB*
index d970789..6b32592 100644 (file)
@@ -3,6 +3,17 @@
 .. http://creativecommons.org/licenses/by/4.0
 .. (c) OPNFV, Ericsson AB, Huawei Technologies Co.,Ltd and others.
 
+..
+   Convention for heading levels in Yardstick documentation:
+
+   =======  Heading 0 (reserved for the title in a document)
+   -------  Heading 1
+   ~~~~~~~  Heading 2
+   +++++++  Heading 3
+   '''''''  Heading 4
+
+   Avoid deeper levels because they do not render well.
+
 ======================
 Yardstick Installation
 ======================
index f390d16..82539c9 100644 (file)
@@ -183,7 +183,7 @@ Combining these elements together, a sample Heat context config looks like:
 .. literalinclude::
    ../../../../yardstick/tests/integration/dummy-scenario-heat-context.yaml
    :start-after: ---
-   :empahsise-lines: 14-
+   :emphasize-lines: 14-
 
 Using exisiting HOT Templates
 '''''''''''''''''''''''''''''
index 29bc23a..020a08a 100644 (file)
@@ -36,7 +36,7 @@ of TC002.
 
 .. image:: images/TC002.png
    :width: 800px
-   :alt:TC002 dashboard
+   :alt: TC002 dashboard
 
 For each test case dashboard. On the top left, we have a dashboard selection,
 you can switch to different test cases using this pull-down menu.
index f0ae398..1a89669 100644 (file)
@@ -433,7 +433,7 @@ Example::
 
 
 /api/v2/yardstick/tasks/<task_id>
---------------------------------
+---------------------------------
 
 Description: This API is used to do some work related to yardstick tasks. For Euphrates, it supports:
 
index 71a5c11..7b0d468 100644 (file)
@@ -10,7 +10,7 @@ Network Services Benchmarking (NSB)
 Abstract
 ========
 
-.. _Yardstick: https://wiki.opnfv.org/yardstick
+.. _Yardstick: https://wiki.opnfv.org/display/yardstick
 
 This chapter provides an overview of the NSB, a contribution to OPNFV
 Yardstick_ from Intel.
index 10debbd..973d566 100644 (file)
@@ -3,12 +3,23 @@
 .. http://creativecommons.org/licenses/by/4.0
 .. (c) OPNFV, 2016-2018 Intel Corporation.
 
+..
+   Convention for heading levels in Yardstick documentation:
+
+   =======  Heading 0 (reserved for the title in a document)
+   -------  Heading 1
+   ~~~~~~~  Heading 2
+   +++++++  Heading 3
+   '''''''  Heading 4
+
+   Avoid deeper levels because they do not render well.
+
 =====================================
 Yardstick - NSB Testing -Installation
 =====================================
 
 Abstract
-========
+--------
 
 The Network Service Benchmarking (NSB) extends the yardstick framework to do
 VNF characterization and benchmarking in three different execution
@@ -27,7 +38,7 @@ The steps needed to run Yardstick with NSB testing are:
 
 
 Prerequisites
-=============
+-------------
 
 Refer chapter Yardstick Installation for more information on yardstick
 prerequisites
@@ -46,7 +57,7 @@ Several prerequisites are needed for Yardstick (VNF testing):
   * intel-cmt-cat
 
 Hardware & Software Ingredients
--------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 SUT requirements:
 
@@ -85,7 +96,7 @@ Boot and BIOS settings:
 
 
 Install Yardstick (NSB Testing)
-===============================
+-------------------------------
 
 Download the source code and install Yardstick from it
 
@@ -172,8 +183,8 @@ Another way to execute an installation for a Bare-Metal or a Standalone context
 is to use ansible script ``install.yaml``. Refer chapter :doc:`04-installation`
 for more details.
 
-System Topology:
-================
+System Topology
+---------------
 
 .. code-block:: console
 
@@ -188,10 +199,10 @@ System Topology:
 
 
 Environment parameters and credentials
-======================================
+--------------------------------------
 
 Config yardstick conf
----------------------
+~~~~~~~~~~~~~~~~~~~~~
 
 If user did not run 'yardstick env influxdb' inside the container, which will
 generate correct ``yardstick.conf``, then create the config file manually (run
@@ -222,11 +233,11 @@ Add trex_path, trex_client_lib and bin_path in 'nsb' section.
   trex_client_lib=/opt/nsb_bin/trex_client/stl
 
 Run Yardstick - Network Service Testcases
-=========================================
+-----------------------------------------
 
 
 NS testing - using yardstick CLI
---------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
   See :doc:`04-installation`
 
@@ -239,13 +250,13 @@ NS testing - using yardstick CLI
   yardstick --debug task start yardstick/samples/vnf_samples/nsut/<vnf>/<test case>
 
 Network Service Benchmarking - Bare-Metal
-=========================================
+-----------------------------------------
 
 Bare-Metal Config pod.yaml describing Topology
-----------------------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 Bare-Metal 2-Node setup
-^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++
 .. code-block:: console
 
   +----------+              +----------+
@@ -258,7 +269,7 @@ Bare-Metal 2-Node setup
   trafficgen_1                   vnf
 
 Bare-Metal 3-Node setup - Correlated Traffic
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++++++
 .. code-block:: console
 
   +----------+              +----------+            +------------+
@@ -273,7 +284,7 @@ Bare-Metal 3-Node setup - Correlated Traffic
 
 
 Bare-Metal Config pod.yaml
---------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~
 Before executing Yardstick test cases, make sure that pod.yaml reflects the
 topology and update all the required fields.::
 
@@ -348,13 +359,13 @@ topology and update all the required fields.::
 
 
 Network Service Benchmarking - Standalone Virtualization
-========================================================
+--------------------------------------------------------
 
 SR-IOV
-------
+~~~~~~
 
 SR-IOV Pre-requisites
-^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++
 
 On Host, where VM is created:
  a) Create and configure a bridge named ``br-int`` for VM to connect to external network.
@@ -425,10 +436,10 @@ On Host, where VM is created:
 
 
 SR-IOV Config pod.yaml describing Topology
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++++
 
-SR-IOV 2-Node setup:
-^^^^^^^^^^^^^^^^^^^^
+SR-IOV 2-Node setup
++++++++++++++++++++
 .. code-block:: console
 
                                +--------------------+
@@ -456,7 +467,7 @@ SR-IOV 2-Node setup:
 
 
 SR-IOV 3-Node setup - Correlated Traffic
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++
 .. code-block:: console
 
                                +--------------------+
@@ -492,7 +503,7 @@ topology and update all the required fields.
 .. note:: Update all the required fields like ip, user, password, pcis, etc...
 
 SR-IOV Config pod_trex.yaml
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++++++
 
 .. code-block:: YAML
 
@@ -521,7 +532,7 @@ SR-IOV Config pod_trex.yaml
                 local_mac: "00:00.00:00:00:02"
 
 SR-IOV Config host_sriov.yaml
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++++++++
 
 .. code-block:: YAML
 
@@ -537,7 +548,7 @@ SR-IOV testcase update:
 ``<yardstick>/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_trex.yaml``
 
 Update "contexts" section
-"""""""""""""""""""""""""
+'''''''''''''''''''''''''
 
 .. code-block:: YAML
 
@@ -582,10 +593,10 @@ Update "contexts" section
 
 
 OVS-DPDK
---------
+~~~~~~~~
 
 OVS-DPDK Pre-requisites
-^^^^^^^^^^^^^^^^^^^^^^^
+~~~~~~~~~~~~~~~~~~~~~~~
 
 On Host, where VM is created:
  a) Create and configure a bridge named ``br-int`` for VM to connect to external network.
@@ -659,11 +670,10 @@ On Host, where VM is created:
 
 
 OVS-DPDK Config pod.yaml describing Topology
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++++++
 
 OVS-DPDK 2-Node setup
-^^^^^^^^^^^^^^^^^^^^^
-
++++++++++++++++++++++
 
 .. code-block:: console
 
@@ -693,7 +703,7 @@ OVS-DPDK 2-Node setup
 
 
 OVS-DPDK 3-Node setup - Correlated Traffic
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++++
 
 .. code-block:: console
 
@@ -733,7 +743,7 @@ topology and update all the required fields.
 .. note:: Update all the required fields like ip, user, password, pcis, etc...
 
 OVS-DPDK Config pod_trex.yaml
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++++++++
 
 .. code-block:: YAML
 
@@ -761,7 +771,7 @@ OVS-DPDK Config pod_trex.yaml
               local_mac: "00:00.00:00:00:02"
 
 OVS-DPDK Config host_ovs.yaml
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++++++++
 
 .. code-block:: YAML
 
@@ -777,7 +787,7 @@ ovs_dpdk testcase update:
 ``<yardstick>/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml``
 
 Update "contexts" section
-"""""""""""""""""""""""""
+'''''''''''''''''''''''''
 
 .. code-block:: YAML
 
@@ -832,7 +842,7 @@ Update "contexts" section
 
 
 Network Service Benchmarking - OpenStack with SR-IOV support
-============================================================
+------------------------------------------------------------
 
 This section describes how to run a Sample VNF test case, using Heat context,
 with SR-IOV. It also covers how to install OpenStack in Ubuntu 16.04, using
@@ -840,7 +850,7 @@ DevStack, with SR-IOV support.
 
 
 Single node OpenStack setup with external TG
---------------------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 .. code-block:: console
 
@@ -871,7 +881,7 @@ Single node OpenStack setup with external TG
 
 
 Host pre-configuration
-^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++
 
 .. warning:: The following configuration requires sudo access to the system. Make
   sure that your user have the access.
@@ -971,7 +981,7 @@ Setup SR-IOV ports on the host:
 
 
 DevStack installation
-^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++
 
 Use official `Devstack <https://docs.openstack.org/devstack/pike/>`_
 documentation to install OpenStack on a host. Please note, that stable
@@ -993,7 +1003,7 @@ Start the devstack installation on a host.
 
 
 TG host configuration
-^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++
 
 Yardstick automatically install and configure Trex traffic generator on TG
 host based on provided POD file (see below). Anyway, it's recommended to check
@@ -1002,7 +1012,7 @@ the manual at https://trex-tgn.cisco.com/trex/doc/trex_manual.html.
 
 
 Run the Sample VNF test case
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++
 
 There is an example of Sample VNF test case ready to be executed in an
 OpenStack environment with SR-IOV support: ``samples/vnf_samples/nsut/vfw/
@@ -1027,7 +1037,7 @@ context using steps described in `NS testing - using yardstick CLI`_ section.
 
 
 Multi node OpenStack TG and VNF setup (two nodes)
--------------------------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 .. code-block:: console
 
@@ -1058,14 +1068,14 @@ Multi node OpenStack TG and VNF setup (two nodes)
 
 
 Controller/Compute pre-configuration
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++
 
 Pre-configuration of the controller and compute hosts are the same as
 described in `Host pre-configuration`_ section. Follow the steps in the section.
 
 
 DevStack configuration
-^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++
 
 Use official `Devstack <https://docs.openstack.org/devstack/pike/>`_
 documentation to install OpenStack on a host. Please note, that stable
@@ -1092,7 +1102,7 @@ Start the devstack installation on the controller and compute hosts.
 
 
 Run the sample vFW TC
-^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++
 
 Install yardstick using `Install Yardstick (NSB Testing)`_ steps for OpenStack
 context.
@@ -1109,10 +1119,10 @@ and the following yardtick command line arguments:
 
 
 Enabling other Traffic generator
-================================
+--------------------------------
 
 IxLoad
-^^^^^^
+~~~~~~
 
 1. Software needed: IxLoadAPI ``<IxLoadTclApi verson>Linux64.bin.tgz`` and
    ``<IxOS version>Linux64.bin.tar.gz`` (Download from ixia support site)
@@ -1153,7 +1163,7 @@ IxLoad
    ``<repo>/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml``
 
 IxNetwork
----------
+~~~~~~~~~
 
 IxNetwork testcases use IxNetwork API Python Bindings module, which is
 installed as part of the requirements of the project.
index ac12b32..c961558 100644 (file)
@@ -256,7 +256,7 @@ to the VNF.
 
 An example scale-up Heat testcase is:
 
-.. literalinclude:: /samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale-up.yaml
+.. literalinclude:: /../samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale-up.yaml
    :language: yaml
 
 This testcase template requires specifying the number of VCPUs, Memory and Ports.
@@ -271,7 +271,7 @@ In order to support ports scale-up, traffic and topology templates need to be us
 
 A example topology template is:
 
-.. literalinclude:: /samples/vnf_samples/nsut/vfw/vfw-tg-topology-scale-up.yaml
+.. literalinclude:: /../samples/vnf_samples/nsut/vfw/vfw-tg-topology-scale-up.yaml
    :language: yaml
 
 This template has ``vports`` as an argument. To pass this argument it needs to
@@ -293,7 +293,7 @@ For example:
 
 A example traffic profile template is:
 
-.. literalinclude:: /samples/vnf_samples/traffic_profiles/ipv4_throughput-scale-up.yaml
+.. literalinclude:: /../samples/vnf_samples/traffic_profiles/ipv4_throughput-scale-up.yaml
    :language: yaml
 
 There is an option to provide predefined config for SampleVNFs. Path to config
@@ -457,7 +457,7 @@ Sample test case file
   4. Modify ``networks/phy_port`` accordingly to the baremetal setup.
   5. Run test from:
 
-.. literalinclude:: /samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml
+.. literalinclude:: /../samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml
    :language: yaml
 
 Preparing test run of vEPC test case
index 0efeceb..2f0a871 100644 (file)
@@ -118,17 +118,6 @@ StorPerf
 
    opnfv_yardstick_tc074.rst
 
-virtual Traffic Classifier
---------------------------
-
-.. toctree::
-   :maxdepth: 1
-
-   opnfv_yardstick_tc006.rst
-   opnfv_yardstick_tc007.rst
-   opnfv_yardstick_tc020.rst
-   opnfv_yardstick_tc021.rst
-
 Templates
 =========
 
index ad354b6..bab6e60 100644 (file)
@@ -7,10 +7,10 @@
 Yardstick
 =========
 
-.. _Yardstick: https://wiki.opnfv.org/yardstick
+.. _Yardstick: https://wiki.opnfv.org/display/yardstick
 .. _Presentation: https://wiki.opnfv.org/_media/opnfv_summit_-_yardstick_project.pdf
 .. _NFV-TST001: https://docbox.etsi.org/ISG/NFV/Open/Drafts/TST001_-_Pre-deployment_Validation/
-.. _Yardsticktst: https://wiki.opnfv.org/_media/opnfv_summit_-_bridging_opnfv_and_etsi.pdf
+.. _Yardsticktst: http://events17.linuxfoundation.org/sites/events/files/slides/OPNFV%20Summit%20-%20bridging_opnfv_and_etsi.pdf
 
 The project's goal is to verify infrastructure compliance, from the perspective
 of a Virtual Network Function (VNF).
index 202307d..19cc80e 100644 (file)
@@ -34,6 +34,7 @@ Yardstick Test Case Description TC010
 |              |                                                              |
 |              | Lmbench is a suite of operating system microbenchmarks. This |
 |              | test uses lat_mem_rd tool from that suite including:         |
+|              |                                                              |
 |              |  * Context switching                                         |
 |              |  * Networking: connection establishment, pipe, TCP, UDP, and |
 |              |    RPC hot potato                                            |
@@ -55,7 +56,7 @@ Yardstick Test Case Description TC010
 |              | The benchmark runs as two nested loops. The outer loop is    |
 |              | the stride size. The inner loop is the array size. For each  |
 |              | array size, the benchmark creates a ring of pointers that    |
-|              | point backward one stride.Traversing the array is done by:   |
+|              | point backward one stride. Traversing the array is done by:: |
 |              |                                                              |
 |              |         p = (char **)*p;                                     |
 |              |                                                              |
index 48bdef4..cbb1db9 100644 (file)
@@ -60,14 +60,14 @@ Yardstick Test Case Description TC011
 |              |                                                              |
 |              | * options:                                                   |
 |              |   protocol: udp # The protocol used by iperf3 tools          |
-|              |   bandwidth: 20m # It will send the given number of packets  |
-|              |                    without pausing                           |
+|              |   # Send the given number of packets without pausing:        |
+|              |   bandwidth: 20m                                             |
 |              | * runner:                                                    |
 |              |   duration: 30 # Total test duration 30 seconds.             |
 |              |                                                              |
 |              | * SLA (optional):                                            |
 |              |   jitter: 10 (ms) # The maximum amount of jitter that is     |
-|              |     accepted.                                                |
+|              |   accepted.                                                  |
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |applicability | Test can be configured with different:                       |
index b56e829..2502f5d 100644 (file)
@@ -34,6 +34,7 @@ Yardstick Test Case Description TC012
 |              |                                                              |
 |              | LMbench is a suite of operating system microbenchmarks.      |
 |              | This test uses bw_mem tool from that suite including:        |
+|              |                                                              |
 |              |  * Cached file read                                          |
 |              |  * Memory copy (bcopy)                                       |
 |              |  * Memory read                                               |
index 8d79e01..d27b201 100644 (file)
@@ -43,20 +43,24 @@ Yardstick Test Case Description TC019
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |monitors      | In this test case, two kinds of monitor are needed:          |
+|              |                                                              |
 |              | 1. the "openstack-cmd" monitor constantly request a specific |
 |              |    Openstack command, which needs two parameters:            |
-|              | 1) monitor_type: which is used for finding the monitor class |
-|              | and related scritps. It should be always set to              |
-|              | "openstack-cmd" for this monitor.                            |
-|              | 2) command_name: which is the command name used for request  |
+|              |                                                              |
+|              |    1. monitor_type: which is used for finding the monitor    |
+|              |       class and related scritps. It should be always set to  |
+|              |       "openstack-cmd" for this monitor.                      |
+|              |    2. command_name: which is the command name used for       |
+|              |       request                                                |
 |              |                                                              |
 |              | 2. the "process" monitor check whether a process is running  |
 |              |    on a specific node, which needs three parameters:         |
-|              | 1) monitor_type: which used for finding the monitor class    |
-|              | and related scritps. It should be always set to "process"    |
-|              | for this monitor.                                            |
-|              | 2) process_name: which is the process name for monitor       |
-|              | 3) host: which is the name of the node runing the process    |
+|              |                                                              |
+|              |    1. monitor_type: which used for finding the monitor class |
+|              |       and related scritps. It should be always set to        |
+|              |       "process" for this monitor.                            |
+|              |    2. process_name: which is the process name for monitor    |
+|              |    3. host: which is the name of the node runing the process |
 |              |                                                              |
 |              | e.g.                                                         |
 |              | monitor1:                                                    |
index 0e2e9a5..f3f9ea6 100644 (file)
@@ -39,12 +39,15 @@ Yardstick Test Case Description TC025
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |monitors      | In this test case, one kind of monitor are needed:           |
+|              |                                                              |
 |              | 1. the "openstack-cmd" monitor constantly request a specific |
 |              |    Openstack command, which needs two parameters             |
-|              | 1) monitor_type: which is used for finding the monitor class |
-|              | and related scritps. It should be always set to              |
-|              | "openstack-cmd" for this monitor.                            |
-|              | 2) command_name: which is the command name used for request  |
+|              |                                                              |
+|              |    1) monitor_type: which is used for finding the monitor    |
+|              |       class and related scripts. It should be always set to  |
+|              |       "openstack-cmd" for this monitor.                      |
+|              |    2) command_name: which is the command name used for       |
+|              |       request                                                |
 |              |                                                              |
 |              | There are four instance of the "openstack-cmd" monitor:      |
 |              | monitor1:                                                    |
index 125fd59..90790e2 100644 (file)
@@ -7,7 +7,7 @@
 Yardstick Test Case Description TC027
 *************************************
 
-.. _ipv6: https://wiki.opnfv.org/ipv6_opnfv_project
+.. _ipv6: https://wiki.opnfv.org/display/ipv6
 
 +-----------------------------------------------------------------------------+
 |IPv6 connectivity between nodes on the tenant network                        |
index d62fbf7..4c73c96 100644 (file)
@@ -7,7 +7,7 @@
 Yardstick Test Case Description TC040
 *************************************
 
-.. _Parser: https://wiki.opnfv.org/parser
+.. _Parser: https://wiki.opnfv.org/display/parser
 
 +-----------------------------------------------------------------------------+
 |Verify Parser Yang-to-Tosca                                                  |
index a0c487c..23b98c8 100644 (file)
@@ -9,7 +9,7 @@ Yardstick Test Case Description TC042
 
 .. _DPDK: http://dpdk.org/doc/guides/index.html
 .. _Testpmd: http://dpdk.org/doc/guides/testpmd_app_ug/index.html
-.. _Pktgen-dpdk: http://pktgen.readthedocs.io/en/latest/index.html
+.. _Pktgen-dpdk: https://pktgen-dpdk.readthedocs.io/en/latest/index.html
 
 +-----------------------------------------------------------------------------+
 |Network Performance                                                          |
index 82a491b..7d01cb9 100644 (file)
@@ -35,18 +35,18 @@ Yardstick Test Case Description TC050
 |              | 3) interface: the network interface to be turned off.        |
 |              |                                                              |
 |              | The interface to be closed by the attacker can be set by the |
-|              | variable of "{{ interface_name }}"                           |
+|              | variable of "{{ interface_name }}"::                         |
 |              |                                                              |
-|              | attackers:                                                   |
-|              |   -                                                          |
-|              |     fault_type: "general-attacker"                           |
-|              |     host: {{ attack_host }}                                  |
-|              |     key: "close-br-public"                                   |
-|              |     attack_key: "close-interface"                            |
-|              |     action_parameter:                                        |
-|              |       interface: {{ interface_name }}                        |
-|              |     rollback_parameter:                                      |
-|              |       interface: {{ interface_name }}                        |
+|              |   attackers:                                                 |
+|              |     -                                                        |
+|              |       fault_type: "general-attacker"                         |
+|              |       host: {{ attack_host }}                                |
+|              |       key: "close-br-public"                                 |
+|              |       attack_key: "close-interface"                          |
+|              |       action_parameter:                                      |
+|              |         interface: {{ interface_name }}                      |
+|              |       rollback_parameter:                                    |
+|              |         interface: {{ interface_name }}                      |
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |monitors      | In this test case, the monitor named "openstack-cmd" is      |
@@ -56,19 +56,20 @@ Yardstick Test Case Description TC050
 |              | "openstack-cmd" for this monitor.                            |
 |              | 2) command_name: which is the command name used for request  |
 |              |                                                              |
-|              | There are four instance of the "openstack-cmd" monitor:      |
-|              | monitor1:                                                    |
-|              |     - monitor_type: "openstack-cmd"                          |
-|              |     - command_name: "nova image-list"                        |
-|              | monitor2:                                                    |
-|              |     - monitor_type: "openstack-cmd"                          |
-|              |     - command_name: "neutron router-list"                    |
-|              | monitor3:                                                    |
-|              |     - monitor_type: "openstack-cmd"                          |
-|              |     - command_name: "heat stack-list"                        |
-|              | monitor4:                                                    |
-|              |     - monitor_type: "openstack-cmd"                          |
-|              |     - command_name: "cinder list"                            |
+|              | There are four instance of the "openstack-cmd" monitor::     |
+|              |                                                              |
+|              |   monitor1:                                                  |
+|              |       - monitor_type: "openstack-cmd"                        |
+|              |       - command_name: "nova image-list"                      |
+|              |   monitor2:                                                  |
+|              |       - monitor_type: "openstack-cmd"                        |
+|              |       - command_name: "neutron router-list"                  |
+|              |   monitor3:                                                  |
+|              |       - monitor_type: "openstack-cmd"                        |
+|              |       - command_name: "heat stack-list"                      |
+|              |   monitor4:                                                  |
+|              |       - monitor_type: "openstack-cmd"                        |
+|              |       - command_name: "cinder list"                          |
 +--------------+--------------------------------------------------------------+
 |metrics       | In this test case, there is one metric:                      |
 |              | 1)service_outage_time: which indicates the maximum outage    |
index 9514b68..7f2be6e 100644 (file)
@@ -65,15 +65,16 @@ Yardstick Test Case Description TC052
 |              |                                                              |
 |              | In this case, the "operation" adds a flavor and the "result  |
 |              | checker" checks whether ths flavor is created. Their         |
-|              | parameters show as follows:                                  |
-|              | operation:                                                   |
-|              | -operation_type: "nova-create-flavor"                        |
-|              | -action_parameter:                                           |
-|              |    flavorconfig: "test-001 test-001 100 1 1"                 |
-|              | result checker:                                              |
-|              | -checker_type: "check-flavor"                                |
-|              | -expectedValue: "test-001"                                   |
-|              | -condition: "in"                                             |
+|              | parameters show as follows::                                 |
+|              |                                                              |
+|              |   operation:                                                 |
+|              |   -operation_type: "nova-create-flavor"                      |
+|              |   -action_parameter:                                         |
+|              |      flavorconfig: "test-001 test-001 100 1 1"               |
+|              |   result checker:                                            |
+|              |   -checker_type: "check-flavor"                              |
+|              |   -expectedValue: "test-001"                                 |
+|              |   -condition: "in"                                           |
 +--------------+--------------------------------------------------------------+
 |metrics       | In this test case, there is one metric:                      |
 |              | 1)service_outage_time: which indicates the maximum outage    |
index c861ca9..25703d3 100644 (file)
@@ -7,7 +7,7 @@
 Yardstick Test Case Description TC055
 *************************************
 
-.. _/proc/cpuinfo: http://www.linfo.org/proc_cpuinfo.html
+.. _`/proc/cpuinfo`: http://www.linfo.org/proc_cpuinfo.html
 
 +-----------------------------------------------------------------------------+
 |Compute Capacity                                                             |
@@ -41,7 +41,7 @@ Yardstick Test Case Description TC055
 |              | capacity output.                                             |
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
-|references    | /proc/cpuinfo_                                               |
+|references    | `/proc/cpuinfo`_                                             |
 |              |                                                              |
 |              | ETSI-NFV-TST001                                              |
 |              |                                                              |
index 1bb43c9..245a58e 100644 (file)
@@ -49,12 +49,15 @@ Yardstick Test Case Description TC057
 |              | -host: node1                                                 |
 +--------------+--------------------------------------------------------------+
 |monitors      | In this test case, a kind of monitor is needed:              |
+|              |                                                              |
 |              | 1. the "openstack-cmd" monitor constantly request a specific |
 |              |    Openstack command, which needs two parameters:            |
-|              | 1) monitor_type: which is used for finding the monitor class |
-|              | and related scripts. It should be always set to              |
-|              | "openstack-cmd" for this monitor.                            |
-|              | 2) command_name: which is the command name used for request  |
+|              |                                                              |
+|              |    1. monitor_type: which is used for finding the monitor    |
+|              |       class and related scripts. It should be always set to  |
+|              |       "openstack-cmd" for this monitor.                      |
+|              |    2. command_name: which is the command name used for       |
+|              |       request                                                |
 |              |                                                              |
 |              | In this case, the command_name of monitor1 should be         |
 |              | services that are managed by the cluster manager.            |
index a77653a..7b8ee06 100644 (file)
@@ -58,6 +58,7 @@ Yardstick Test Case Description TC063
 |              |  * count: 15 - how many times to stat disk utilization       |
 |              |     type: int                                                |
 |              |     unit: na                                                 |
+|              |                                                              |
 |              | There are default values for each above-mentioned option.    |
 |              | Run in background with other test cases.                     |
 |              |                                                              |
index af0e64f..e1bfd53 100644 (file)
@@ -9,9 +9,6 @@ Yardstick Test Case Description TC069
 
 .. _RAMspeed: http://alasir.com/software/ramspeed/
 
-.. table::
-    :class: longtable
-
 +-----------------------------------------------------------------------------+
 |Memory Bandwidth                                                             |
 |                                                                             |
@@ -41,7 +38,8 @@ Yardstick Test Case Description TC069
 |              | * SLA (optional): 7000 (MBps) min_bandwidth: The minimum     |
 |              |   amount of memory bandwidth that is accepted.               |
 |              | * type_id: 1 - runs a specified benchmark                    |
-|              |   (by an ID number):                                         |
+|              |   (by an ID number)::                                        |
+|              |                                                              |
 |              |     1 -- INTmark [writing]          4 -- FLOATmark [writing] |
 |              |     2 -- INTmark [reading]          5 -- FLOATmark [reading] |
 |              |     3 -- INTmem                     6 -- FLOATmem            |
index ad45264..873c5c9 100644 (file)
@@ -7,7 +7,7 @@
 Yardstick Test Case Description TC073
 *************************************
 
-.. _netperf: http://www.netperf.org/netperf/training/Netperf.html
+.. _netperf: https://hewlettpackard.github.io/netperf/
 
 +-----------------------------------------------------------------------------+
 |Throughput per NFVI node test                                                |
index d6beeaf..8d025ee 100644 (file)
@@ -91,12 +91,15 @@ Yardstick Test Case Description TC074
 |              | * workload=[workload module]                                 |
 |              |   If not specified, the default is to run all workloads. The |
 |              |   workload types are:                                        |
+|              |                                                              |
 |              |      - rs: 100% Read, sequential data                        |
 |              |      - ws: 100% Write, sequential data                       |
 |              |      - rr: 100% Read, random access                          |
 |              |      - wr: 100% Write, random access                         |
 |              |      - rw: 70% Read / 30% write, random access               |
+|              |                                                              |
 |              |   measurements.                                              |
+|              |                                                              |
 |              | * workloads={json maps}                                      |
 |              |   This parameter supercedes the workload and calls the V2.0  |
 |              |   API in StorPerf. It allows for greater control of the      |
@@ -131,11 +134,13 @@ Yardstick Test Case Description TC074
 |              |                                                              |
 |              | Storperf is required to be installed in the environment.     |
 |              | There are two possible methods for Storperf installation:    |
-|              |     Run container on Jump Host                               |
-|              |     Run container in a VM                                    |
+|              |                                                              |
+|              |     - Run container on Jump Host                             |
+|              |     - Run container in a VM                                  |
 |              |                                                              |
 |              | Running StorPerf on Jump Host                                |
 |              | Requirements:                                                |
+|              |                                                              |
 |              |     - Docker must be installed                               |
 |              |     - Jump Host must have access to the OpenStack Controller |
 |              |       API                                                    |
@@ -146,6 +151,7 @@ Yardstick Test Case Description TC074
 |              |                                                              |
 |              | Running StorPerf in a VM                                     |
 |              | Requirements:                                                |
+|              |                                                              |
 |              |     - VM has docker installed                                |
 |              |     - VM has OpenStack Controller credentials and can        |
 |              |       communicate with the Controller API                    |
index 793c3fd..df21923 100644 (file)
@@ -14,8 +14,8 @@ Yardstick Test Case Description TC081
 |Network Latency                                                              |
 |                                                                             |
 +--------------+--------------------------------------------------------------+
-|test case id  | OPNFV_YARDSTICK_TC081_NETWORK_LATENCY_BETWEEN_CONTAINER_AND_ |
-|              | VM                                                           |
+|test case id  | OPNFV_YARDSTICK_TC081_NETWORK_LATENCY_BETWEEN_CONTAINER_AND  |
+|              | _VM                                                          |
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |metric        | RTT (Round Trip Time)                                        |
index 2e7b28e..b3d44c4 100644 (file)
@@ -92,18 +92,19 @@ Yardstick Test Case Description TC084
 +--------------+--------------------------------------------------------------+
 |pre-test      | To run and install SPEC CPU 2006, the following are          |
 |conditions    | required:                                                    |
-|              |  * For SPECint 2006: Both C99 and C++98 compilers are        |
-|              |    installed in VM images;                                   |
-|              |  * For SPECfp 2006: All three of C99, C++98 and Fortran-95   |
-|              |    compilers installed in VM images;                         |
-|              |  * At least 4GB of disk space availabile on VM.              |
-|              |                                                              |
-|              |  gcc 4.8.* and g++ 4.8.* version have been tested in Ubuntu  |
-|              |  14.04, Ubuntu 16.04 and Redhat Enterprise Linux 7.4 image.  |
-|              |  Higher gcc and g++ version may cause compiling error.       |
-|              |                                                              |
-|              |  For more SPEC CPU 2006 dependencies please visit            |
-|              |  (https://www.spec.org/cpu2006/Docs/techsupport.html)        |
+|              |                                                              |
+|              | * For SPECint 2006: Both C99 and C++98 compilers are         |
+|              |   installed in VM images;                                    |
+|              | * For SPECfp 2006: All three of C99, C++98 and Fortran-95    |
+|              |   compilers installed in VM images;                          |
+|              | * At least 4GB of disk space availabile on VM.               |
+|              |                                                              |
+|              | gcc 4.8.* and g++ 4.8.* version have been tested in Ubuntu   |
+|              | 14.04, Ubuntu 16.04 and Redhat Enterprise Linux 7.4 image.   |
+|              | Higher gcc and g++ version may cause compiling error.        |
+|              |                                                              |
+|              | For more SPEC CPU 2006 dependencies please visit             |
+|              | (https://www.spec.org/cpu2006/Docs/techsupport.html)         |
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |test sequence | description and expected result                              |
index 99bfeeb..c112526 100644 (file)
@@ -41,6 +41,7 @@ Yardstick Test Case Description TC087
 +--------------+--------------------------------------------------------------+
 |attackers     | In this test case, an attacker called “kill-process” is      |
 |              | needed. This attacker includes three parameters:             |
+|              |                                                              |
 |              |  1. fault_type: which is used for finding the attacker's     |
 |              |     scripts. It should be set to 'kill-process' in this test |
 |              |                                                              |
@@ -58,6 +59,7 @@ Yardstick Test Case Description TC087
 |monitors      | This test case utilizes two monitors of type "ip-status"     |
 |              | and one monitor of type "process" to track the following     |
 |              | conditions:                                                  |
+|              |                                                              |
 |              |  1. "ping_same_network_l2": monitor ICMP traffic between     |
 |              |     VMs in the same Neutron network                          |
 |              |                                                              |
@@ -74,11 +76,13 @@ Yardstick Test Case Description TC087
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |operations    | In this test case, the following operations are needed:      |
+|              |                                                              |
 |              |  1. "nova-create-instance-in_network": create a VM instance  |
 |              |     in one of the existing Neutron network.                  |
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |metrics       | In this test case, there are two metrics:                    |
+|              |                                                              |
 |              |  1. process_recover_time: which indicates the maximun        |
 |              |     time (seconds) from the process being killed to          |
 |              |     recovered                                                |
@@ -95,7 +99,9 @@ Yardstick Test Case Description TC087
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |configuration | This test case needs two configuration files:                |
+|              |                                                              |
 |              |  1. test case file: opnfv_yardstick_tc087.yaml               |
+|              |                                                              |
 |              |     - Attackers: see above “attackers” discription           |
 |              |     - waiting_time: which is the time (seconds) from the     |
 |              |       process being killed to stoping monitors the monitors  |
@@ -126,7 +132,7 @@ Yardstick Test Case Description TC087
 |              |     Neutron network.                                         |
 |              |                                                              |
 |              |  2. Check connectivity from one VM to an external host on    |
-|              |     the Internet to verify SNAT functionality.
+|              |     the Internet to verify SNAT functionality.               |
 |              |                                                              |
 |              | Result: The monitor info will be collected.                  |
 |              |                                                              |
@@ -171,11 +177,14 @@ Yardstick Test Case Description TC087
 |test verdict  | This test fails if the SLAs are not met or if there is a     |
 |              | test case execution problem. The SLAs are define as follows  |
 |              | for this test:                                               |
+|              |                                                              |
 |              |  * SDN Controller recovery                                   |
+|              |                                                              |
 |              |    * process_recover_time <= 30 sec                          |
 |              |                                                              |
 |              |  * no impact on data plane connectivity during SDN           |
 |              |    controller failure and recovery.                          |
+|              |                                                              |
 |              |    * packet_drop == 0                                        |
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
index 895074a..9c833fa 100644 (file)
@@ -43,6 +43,7 @@ Yardstick Test Case Description TC092
 +--------------+--------------------------------------------------------------+
 |attackers     | In this test case, an attacker called “kill-process” is      |
 |              | needed. This attacker includes three parameters:             |
+|              |                                                              |
 |              |  1. ``fault_type``: which is used for finding the attacker's |
 |              |     scripts. It should be set to 'kill-process' in this test |
 |              |                                                              |
@@ -92,17 +93,20 @@ Yardstick Test Case Description TC092
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |configuration | This test case needs two configuration files:                |
-|              |  1. test case file: opnfv_yardstick_tc092.yaml               |
-|              |     - Attackers: see above “attackers” discription           |
-|              |     - Monitors: see above “monitors” discription             |
-|              |       - waiting_time: which is the time (seconds) from the   |
-|              |         process being killed to stoping monitors the         |
-|              |         monitors                                             |
-|              |     - SLA: see above “metrics” discription                   |
+|              | 1. test case file: opnfv_yardstick_tc092.yaml                |
+|              |                                                              |
+|              |    - Attackers: see above “attackers” discription            |
+|              |    - Monitors: see above “monitors” discription              |
+|              |                                                              |
+|              |      - waiting_time: which is the time (seconds) from the    |
+|              |        process being killed to stoping monitors the          |
+|              |        monitors                                              |
 |              |                                                              |
-|              |  2. POD file: pod.yaml The POD configuration should record   |
-|              |     on pod.yaml first. the “host” item in this test case     |
-|              |     will use the node name in the pod.yaml.                  |
+|              |    - SLA: see above “metrics” discription                    |
+|              |                                                              |
+|              | 2. POD file: pod.yaml The POD configuration should record    |
+|              |    on pod.yaml first. the “host” item in this test case      |
+|              |    will use the node name in the pod.yaml.                   |
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |test sequence | Description and expected result                              |
@@ -168,11 +172,12 @@ Yardstick Test Case Description TC092
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 |step 8        | Start IP connectivity monitors for the  new VM:              |
-|              |  1. Check the L2 connectivity from the existing VMs to the   |
-|              |     new VM in the Neutron network.                           |
 |              |                                                              |
-|              |  2. Check connectivity from one VM to an external host on    |
-|              |     the Internet to verify SNAT functionality.               |
+|              | 1. Check the L2 connectivity from the existing VMs to the    |
+|              |    new VM in the Neutron network.                            |
+|              |                                                              |
+|              | 2. Check connectivity from one VM to an external host on     |
+|              |    the Internet to verify SNAT functionality.                |
 |              |                                                              |
 |              | Result: The monitor info will be collected.                  |
 |              |                                                              |
index 31fa5d3..4e22e8b 100644 (file)
@@ -43,14 +43,15 @@ Yardstick Test Case Description TC093
 +--------------+--------------------------------------------------------------+
 |attackers     | In this test case, two attackers called “kill-process” are   |
 |              | needed. These attackers include three parameters:            |
-|              |  1. fault_type: which is used for finding the attacker's     |
-|              |     scripts. It should be set to 'kill-process' in this test |
 |              |                                                              |
-|              |  2. process_name: should be set to the name of the Vswitch   |
-|              |     process                                                  |
+|              | 1. fault_type: which is used for finding the attacker's      |
+|              |    scripts. It should be set to 'kill-process' in this test  |
 |              |                                                              |
-|              |  3. host: which is the name of the compute node where the    |
-|              |     Vswitch process is running                               |
+|              | 2. process_name: should be set to the name of the Vswitch    |
+|              |    process                                                   |
+|              |                                                              |
+|              | 3. host: which is the name of the compute node where the     |
+|              |    Vswitch process is running                                |
 |              |                                                              |
 |              | e.g. -fault_type: "kill-process"                             |
 |              |      -process_name: "openvswitch"                            |
@@ -60,16 +61,17 @@ Yardstick Test Case Description TC093
 |monitors      | This test case utilizes two monitors of type "ip-status"     |
 |              | and one monitor of type "process" to track the following     |
 |              | conditions:                                                  |
-|              |  1. "ping_same_network_l2": monitor ICMP traffic between     |
-|              |     VMs in the same Neutron network                          |
 |              |                                                              |
-|              |  2. "ping_external_snat": monitor ICMP traffic from VMs to   |
-|              |     an external host on the Internet to verify SNAT          |
-|              |     functionality.                                           |
+|              | 1. "ping_same_network_l2": monitor ICMP traffic between      |
+|              |    VMs in the same Neutron network                           |
+|              |                                                              |
+|              | 2. "ping_external_snat": monitor ICMP traffic from VMs to    |
+|              |    an external host on the Internet to verify SNAT           |
+|              |    functionality.                                            |
 |              |                                                              |
-|              |  3. "Vswitch process monitor": a monitor checking the        |
-|              |     state of the specified Vswitch process. It measures      |
-|              |     the recovery time of the given process.                  |
+|              | 3. "Vswitch process monitor": a monitor checking the         |
+|              |    state of the specified Vswitch process. It measures       |
+|              |    the recovery time of the given process.                   |
 |              |                                                              |
 |              | Monitors of type "ip-status" use the "ping" utility to       |
 |              | verify reachability of a given target IP.                    |
@@ -99,6 +101,7 @@ Yardstick Test Case Description TC093
 +--------------+--------------------------------------------------------------+
 |configuration | This test case needs two configuration files:                |
 |              |  1. test case file: opnfv_yardstick_tc093.yaml               |
+|              |                                                              |
 |              |     - Attackers: see above “attackers” description           |
 |              |     - monitor_time: which is the time (seconds) from         |
 |              |       starting to stoping the monitors                       |
@@ -173,12 +176,14 @@ Yardstick Test Case Description TC093
 |test verdict  | This test fails if the SLAs are not met or if there is a     |
 |              | test case execution problem. The SLAs are define as follows  |
 |              | for this test:                                               |
-|              |  * SDN Vswitch recovery                                      |
-|              |    * process_recover_time <= 30 sec                          |
+|              | * SDN Vswitch recovery                                       |
+|              |                                                              |
+|              |   * process_recover_time <= 30 sec                           |
+|              |                                                              |
+|              | * no impact on data plane connectivity during SDN            |
+|              |   Vswitch failure and recovery.                              |
 |              |                                                              |
-|              |  * no impact on data plane connectivity during SDN           |
-|              |    Vswitch failure and recovery.                             |
-|              |    * packet_drop == 0                                        |
+|              |   * packet_drop == 0                                         |
 |              |                                                              |
 +--------------+--------------------------------------------------------------+
 
index 3e18c96..e6bc719 100644 (file)
@@ -11,12 +11,12 @@ References
 OPNFV
 =====
 
-* Parser wiki: https://wiki.opnfv.org/parser
-* Pharos wiki: https://wiki.opnfv.org/pharos
+* Parser wiki: https://wiki.opnfv.org/display/parser
+* Pharos wiki: https://wiki.opnfv.org/display/pharos
 * Yardstick CI: https://build.opnfv.org/ci/view/yardstick/
 * Yardstick and ETSI TST001 presentation: https://wiki.opnfv.org/display/yardstick/Yardstick?preview=%2F2925202%2F2925205%2Fopnfv_summit_-_bridging_opnfv_and_etsi.pdf
 * Yardstick Project presentation: https://wiki.opnfv.org/display/yardstick/Yardstick?preview=%2F2925202%2F2925208%2Fopnfv_summit_-_yardstick_project.pdf
-* Yardstick wiki: https://wiki.opnfv.org/yardstick
+* Yardstick wiki: https://wiki.opnfv.org/display/yardstick
 
 References used in Test Cases
 =============================
@@ -25,22 +25,22 @@ References used in Test Cases
 * cirros-image: https://download.cirros-cloud.net
 * cyclictest: https://rt.wiki.kernel.org/index.php/Cyclictest
 * DPDKpktgen: https://github.com/Pktgen/Pktgen-DPDK/
-* DPDK supported NICs: http://dpdk.org/doc/nics
+* DPDK supported NICs: http://core.dpdk.org/supported/
 * fdisk: http://www.tldp.org/HOWTO/Partition/fdisk_partitioning.html
-* fio: http://www.bluestop.org/fio/HOWTO.txt
+* fio: https://bluestop.org/files/fio/HOWTO.txt
 * free: http://manpages.ubuntu.com/manpages/trusty/en/man1/free.1.html
 * iperf3: https://iperf.fr/
-* iostat: http://linux.die.net/man/1/iostat
+* iostat: https://linux.die.net/man/1/iostat
 * Lmbench man-pages: http://manpages.ubuntu.com/manpages/trusty/lat_mem_rd.8.html
 * Memory bandwidth man-pages: http://manpages.ubuntu.com/manpages/trusty/bw_mem.8.html
 * mpstat man-pages: http://manpages.ubuntu.com/manpages/trusty/man1/mpstat.1.html
-* netperf: http://www.netperf.org/netperf/training/Netperf.html
+* netperf: https://hewlettpackard.github.io/netperf/
 * pktgen: https://www.kernel.org/doc/Documentation/networking/pktgen.txt
 * RAMspeed: http://alasir.com/software/ramspeed/
-* sar: http://linux.die.net/man/1/sar
+* sar: https://linux.die.net/man/1/sar
 * SR-IOV: https://wiki.openstack.org/wiki/SR-IOV-Passthrough-For-Networking
 * Storperf: https://wiki.opnfv.org/display/storperf/Storperf
-* unixbench: https://github.com/kdlucas/byte-unixbench/blob/master/UnixBench
+* unixbench: https://github.com/kdlucas/byte-unixbench/tree/master/UnixBench
 
 
 Research
@@ -53,7 +53,7 @@ Research
 Standards
 =========
 
-* ETSI NFV: http://www.etsi.org/technologies-clusters/technologies/nfv
-* ETSI GS-NFV TST 001: http://www.etsi.org/deliver/etsi_gs/NFV-TST/001_099/001/01.01.01_60/gs_NFV-TST001v010101p.pdf
+* ETSI NFV: https://www.etsi.org/technologies-clusters/technologies/nfv
+* ETSI GS-NFV TST 001: https://www.etsi.org/deliver/etsi_gs/NFV-TST/001_099/001/01.01.01_60/gs_NFV-TST001v010101p.pdf
 * RFC2544: https://www.ietf.org/rfc/rfc2544.txt
 
diff --git a/samples/vnf_samples/nsut/agnostic/HTTP_requests_concurrency.yaml b/samples/vnf_samples/nsut/agnostic/HTTP_requests_concurrency.yaml
new file mode 100755 (executable)
index 0000000..1e9b1e8
--- /dev/null
@@ -0,0 +1,56 @@
+# Copyright (c) 2018 Intel Corporation\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#      http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or imp\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+schema: "nsb:traffic_profile:0.1"\r
+\r
+name:            TrafficProfileGenericHTTP\r
+description:     Traffic profile to run HTTP test\r
+traffic_profile:\r
+  traffic_type: TrafficProfileGenericHTTP\r
+\r
+uplink_0:\r
+    ip:\r
+        address: "152.16.100.32"          # must be in same subnet with gateway\r
+        subnet_prefix: 24                 # subnet prefix\r
+        mac: "Auto"                       # port mac addr or auto to generate automatically\r
+        gateway: <GATEWAY_ADDR>           # will be taken from pod file\r
+\r
+    http_client:\r
+        simulated_users: {{ get(simulated_users, 'simulated_users.uplink_0', '65000') }} # number of threads to be run\r
+        page_object:  {{ get(page_object, 'page_object.uplink_0', '/1b.html') }} # http locator to be read\r
+\r
+downlink_0:\r
+    ip:\r
+        address: "152.40.40.32"           # must be in same subnet with gateway\r
+        subnet_prefix: 24                 # subnet prefix\r
+        mac: "Auto"                       # port mac addr or auto to generate automatically\r
+        gateway: <GATEWAY_ADDR>           # will be taken from pod file\r
+\r
+uplink_1:\r
+    ip:\r
+        address: "12.12.12.32"\r
+        subnet_prefix: 24\r
+        mac: "00:00:00:00:00:01"\r
+        gateway: <GATEWAY_ADDR>\r
+\r
+    http_client:\r
+        simulated_users: {{ get(simulated_users, 'simulated_users.uplink_1', '65000') }} # number of threads to be run\r
+        page_object:  {{ get(page_object, 'page_object.uplink_1', '/1b.html') }} # http locator to be read\r
+\r
+downlink_1:\r
+    ip:\r
+        address: "13.13.13.32"\r
+        subnet_prefix: 24\r
+        mac: "00:00:00:00:00:02"\r
+        gateway: <GATEWAY_ADDR>
\ No newline at end of file
diff --git a/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixload_2ports.yaml b/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixload_2ports.yaml
new file mode 100755 (executable)
index 0000000..80f6dcf
--- /dev/null
@@ -0,0 +1,50 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+nsd:nsd-catalog:
+    nsd:
+    -   id: agnostic-topology
+        name: agnostic-topology
+        short-name: agnostic-topology
+        description: scenario with HTTP and Agnostic VNF
+        constituent-vnfd:
+        -   member-vnf-index: '1'
+            vnfd-id-ref: tg__0
+            VNF model: ../../vnf_descriptors/tg_ixload.yaml
+        -   member-vnf-index: '2'
+            vnfd-id-ref: vnf__0
+            VNF model: ../../vnf_descriptors/agnostic_vnf.yaml
+
+        vld:
+        -   id: uplink_0
+            name: tg__0 to vnf__0 link 1
+            type: ELAN
+            vnfd-connection-point-ref:
+            -   member-vnf-index-ref: '1'
+                vnfd-connection-point-ref: xe0
+                vnfd-id-ref: tg__0                   # HTTP Client
+            -   member-vnf-index-ref: '2'
+                vnfd-connection-point-ref: xe0
+                vnfd-id-ref: vnf__0                  # VNF
+
+        -   id: downlink_0
+            name: vnf__0 to tg__0 link 2
+            type: ELAN
+            vnfd-connection-point-ref:
+            -   member-vnf-index-ref: '2'
+                vnfd-connection-point-ref: xe1
+                vnfd-id-ref: vnf__0                  # HTTP Server
+            -   member-vnf-index-ref: '1'
+                vnfd-connection-point-ref: xe1
+                vnfd-id-ref: tg__0                   # VNF
diff --git a/samples/vnf_samples/nsut/agnostic/tc_baremetal_http_ixload__Requests_Concurrency_suite.yaml b/samples/vnf_samples/nsut/agnostic/tc_baremetal_http_ixload__Requests_Concurrency_suite.yaml
new file mode 100755 (executable)
index 0000000..d3c75eb
--- /dev/null
@@ -0,0 +1,27 @@
+# Copyright (c) 2018 Intel Corporation\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#      http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+schema: "yardstick:suite:0.1"\r
+\r
+name: "http test suite"\r
+test_cases_dir: "samples/"\r
+test_cases:\r
+-\r
+  file_name: vnf_samples/nsut/agnostic/tc_baremetal_http_ixload__Requests_Concurrency_template.yaml\r
+  task_args:\r
+    default: '{"page": "/1b.html", "users" : "5000"}'\r
+-\r
+  file_name: vnf_samples/nsut/agnostic/tc_baremetal_http_ixload__Requests_Concurrency_template.yaml\r
+  task_args:\r
+    default: '{"page": "/1b.html", "users" : "6000"}'\r
diff --git a/samples/vnf_samples/nsut/agnostic/tc_baremetal_http_ixload__Requests_Concurrency_template.yaml b/samples/vnf_samples/nsut/agnostic/tc_baremetal_http_ixload__Requests_Concurrency_template.yaml
new file mode 100755 (executable)
index 0000000..de2a779
--- /dev/null
@@ -0,0 +1,40 @@
+# Copyright (c) 2018 Intel Corporation\r
+#\r
+# Licensed under the Apache License, Version 2.0 (the "License");\r
+# you may not use this file except in compliance with the License.\r
+# You may obtain a copy of the License at\r
+#\r
+#      http://www.apache.org/licenses/LICENSE-2.0\r
+#\r
+# Unless required by applicable law or agreed to in writing, software\r
+# distributed under the License is distributed on an "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+# See the License for the specific language governing permissions and\r
+# limitations under the License.\r
+\r
+---\r
+schema: yardstick:task:0.1\r
+{% set users = users or "10000" %}\r
+{% set page = page or "/1b.html" %}\r
+scenarios:\r
+- type: NSPerf\r
+  traffic_profile: "HTTP_requests_concurrency.yaml"\r
+  topology: agnostic_vnf_topology_ixload_2ports.yaml\r
+  nodes:\r
+    tg__0: trafficgen_1.yardstick\r
+    vnf__0: vnf.yardstick\r
+  options:\r
+    simulated_users:\r
+      uplink: [{{users}}]\r
+    page_object:\r
+      uplink: [{{page}}]\r
+    vnf__0: []\r
+  runner:\r
+    type: Duration\r
+    duration: 2\r
+  ixia_profile: ../../traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports_Concurrency.rxf # Need vlan update\r
+context:\r
+  type: Node\r
+  name: yardstick\r
+  nfvi_type: baremetal\r
+  file: /etc/yardstick/nodes/pod_ixia.yaml\r
index 20fff61..d8f0625 100644 (file)
@@ -161,8 +161,17 @@ class NetworkServiceTestCase(scenario_base.Scenario):
             tprofile_base.TrafficProfile.DOWNLINK: {},
             'extra_args': extra_args,
             'duration': self._get_duration()}
+
         traffic_vnfd = vnfdgen.generate_vnfd(tprofile, tprofile_data)
-        self.traffic_profile = tprofile_base.TrafficProfile.get(traffic_vnfd)
+
+        traffic_config = \
+            self.scenario_cfg.get("options", {}).get("traffic_config", {})
+
+        traffic_vnfd.setdefault("traffic_profile", {})
+        traffic_vnfd["traffic_profile"].update(traffic_config)
+
+        self.traffic_profile = \
+            tprofile_base.TrafficProfile.get(traffic_vnfd)
 
     def _get_topology(self):
         topology = self.scenario_cfg["topology"]
index 5b2b49c..a0f8e9e 100644 (file)
@@ -20,7 +20,7 @@ class Parser(base.Scenario):
     """running Parser Yang-to-Tosca module as a tool
     validating output against expected outcome
 
-    more info https://wiki.opnfv.org/parser
+    more info https://wiki.opnfv.org/display/parser
     """
     __scenario_type__ = "Parser"
 
index 3ccec63..9210f3c 100644 (file)
@@ -16,6 +16,14 @@ import sys
 import os
 import logging
 import collections
+import subprocess
+try:
+    libs = subprocess.check_output(
+        'python -c "import site; print(site.getsitepackages())"', shell=True)
+
+    sys.path.extend(libs[1:-1].replace("'", "").split(','))
+except subprocess.CalledProcessError:
+    pass
 
 # ixload uses its own py2. So importing jsonutils fails. So adding below
 # workaround to support call from yardstick
@@ -24,7 +32,7 @@ try:
 except ImportError:
     import json as jsonutils
 
-from yardstick.common import exceptions
+from yardstick.common import exceptions #pylint: disable=wrong-import-position
 
 try:
     from IxLoad import IxLoad, StatCollectorUtils
index 6bf2f2c..90248d1 100644 (file)
@@ -629,7 +629,7 @@ class TestNetworkServiceTestCase(unittest.TestCase):
     @mock.patch.object(vnfdgen, 'generate_vnfd')
     def test__fill_traffic_profile(self, mock_generate, mock_tprofile_get):
         fake_tprofile = mock.Mock()
-        fake_vnfd = mock.Mock()
+        fake_vnfd = mock.MagicMock()
         with mock.patch.object(self.s, '_get_traffic_profile',
                                return_value=fake_tprofile) as mock_get_tp:
             mock_generate.return_value = fake_vnfd
@@ -646,6 +646,22 @@ class TestNetworkServiceTestCase(unittest.TestCase):
             )
             mock_tprofile_get.assert_called_once_with(fake_vnfd)
 
+    @mock.patch.object(base.TrafficProfile, 'get')
+    @mock.patch.object(vnfdgen, 'generate_vnfd')
+    def test__fill_traffic_profile2(self, mock_generate, mock_tprofile_get):
+        fake_tprofile = mock.Mock()
+        fake_vnfd = {}
+        with mock.patch.object(self.s, '_get_traffic_profile',
+                               return_value=fake_tprofile) as mock_get_tp:
+            mock_generate.return_value = fake_vnfd
+
+            self.s.scenario_cfg["options"] = {"traffic_config": {"duration": 99899}}
+            self.s._fill_traffic_profile()
+            mock_get_tp.assert_called_once()
+            self.assertIn("traffic_profile", fake_vnfd)
+            self.assertIn("duration", fake_vnfd["traffic_profile"])
+            self.assertEqual(99899, fake_vnfd["traffic_profile"]["duration"])
+
     @mock.patch.object(utils, 'open_relative_file')
     def test__get_topology(self, mock_open_path):
         self.s.scenario_cfg['topology'] = 'fake_topology'
index c099033..4524eb7 100644 (file)
@@ -38,6 +38,12 @@ class TestProxBinSearchProfile(unittest.TestCase):
                 return fail_tuple, {}
             return success_tuple, {}
 
+        def side_effect_func(arg1, arg2):
+            if arg1 == "confirmation":
+                return arg2
+            else:
+                return {}
+
         tp_config = {
             'traffic_profile': {
                 'packet_sizes': [200],
@@ -51,11 +57,13 @@ class TestProxBinSearchProfile(unittest.TestCase):
         fail_tuple = ProxTestDataTuple(10.0, 1, 2, 3, 4, [5.6, 5.7, 5.8], 850, 1000, 123.4)
 
         traffic_generator = mock.MagicMock()
-        attrs1 = {'get.return_value' : 10}
+        attrs1 = {'get.return_value': 10}
         traffic_generator.scenario_helper.all_options.configure_mock(**attrs1)
 
-        attrs2 = {'__getitem__.return_value' : 10, 'get.return_value': 10}
+        attrs2 = {'__getitem__.return_value': 10, 'get.return_value': 10}
+        attrs3 = {'get.side_effect': side_effect_func}
         traffic_generator.scenario_helper.scenario_cfg["runner"].configure_mock(**attrs2)
+        traffic_generator.scenario_helper.scenario_cfg["options"].configure_mock(**attrs3)
 
         profile_helper = mock.MagicMock()
         profile_helper.run_test = target
@@ -68,7 +76,7 @@ class TestProxBinSearchProfile(unittest.TestCase):
 
         self.assertEqual(round(profile.current_lower, 2), 74.69)
         self.assertEqual(round(profile.current_upper, 2), 76.09)
-        self.assertEqual(len(runs), 77)
+        self.assertEqual(len(runs), 7)
 
         # Result Samples inc theor_max
         result_tuple = {'Actual_throughput': 5e-07,
@@ -121,6 +129,12 @@ class TestProxBinSearchProfile(unittest.TestCase):
                 return fail_tuple, {}
             return success_tuple, {}
 
+        def side_effect_func(arg1, _):
+            if arg1 == "confirmation":
+                return 2
+            else:
+                return {}
+
         tp_config = {
             'traffic_profile': {
                 'packet_sizes': [200],
@@ -138,7 +152,10 @@ class TestProxBinSearchProfile(unittest.TestCase):
         traffic_generator.scenario_helper.all_options.configure_mock(**attrs1)
 
         attrs2 = {'__getitem__.return_value': 0, 'get.return_value': 0}
+        attrs3 = {'get.side_effect': side_effect_func}
+
         traffic_generator.scenario_helper.scenario_cfg["runner"].configure_mock(**attrs2)
+        traffic_generator.scenario_helper.scenario_cfg["options"].configure_mock(**attrs3)
 
         profile_helper = mock.MagicMock()
         profile_helper.run_test = target
@@ -150,7 +167,7 @@ class TestProxBinSearchProfile(unittest.TestCase):
         profile.execute_traffic(traffic_generator)
         self.assertEqual(round(profile.current_lower, 2), 24.06)
         self.assertEqual(round(profile.current_upper, 2), 25.47)
-        self.assertEqual(len(runs), 7)
+        self.assertEqual(len(runs), 21)
 
     def test_execute_3(self):
         def target(*args, **_):
@@ -186,8 +203,6 @@ class TestProxBinSearchProfile(unittest.TestCase):
         profile.lower_bound = 99.0
         profile.execute_traffic(traffic_generator)
 
-
-        # Result Samples
         result_tuple = {'Actual_throughput': 0, 'theor_max_throughput': 0,
                         "Status": 'Result', "Next_Step": ''}
         profile.queue.put.assert_called_with(result_tuple)
@@ -226,6 +241,7 @@ class TestProxBinSearchProfile(unittest.TestCase):
         traffic_generator.scenario_helper.all_options.configure_mock(**attrs1)
 
         attrs2 = {'__getitem__.return_value': 0, 'get.return_value': 0}
+
         traffic_generator.scenario_helper.scenario_cfg["runner"].configure_mock(**attrs2)
 
         profile_helper = mock.MagicMock()