diff options
author | Sridhar K. N. Rao <sridhar.rao@spirent.com> | 2021-06-22 14:48:01 +0530 |
---|---|---|
committer | Sridhar K. N. Rao <sridhar.rao@spirent.com> | 2021-06-23 11:59:02 +0530 |
commit | d5c0a03054f720da2a5ff9eba74feee57fb0296d (patch) | |
tree | 9aa3b35f7e6cb82158ab364e8e855b4c8f23649c /docs | |
parent | 8af88b77b668bf2c6bdf61d4bc777f414c935f6c (diff) |
DOCS: Thorough update of ViNePerf Documentation.
Included Kali release notes too.
Made changes based on review from Al.
More changes - thanks to Al.
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
Change-Id: I50b02c2389ddad9596433fd33430270da0fab5db
Diffstat (limited to 'docs')
33 files changed, 391 insertions, 292 deletions
diff --git a/docs/index.rst b/docs/index.rst index c8a400f8..3323e43d 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -6,7 +6,7 @@ .. (c) Open Platform for NFV Project, Inc. and its contributors ********************************* -OPNFV Vswitchperf +Anuket ViNePerf ********************************* .. toctree:: @@ -14,11 +14,12 @@ OPNFV Vswitchperf :maxdepth: 3 release/release-notes/index + renaming/index testing/developer/devguide/index testing/developer/devguide/results/index + testing/user/userguide/index testing/user/configguide/index lma/index openstack/index k8s/index xtesting/index - diff --git a/docs/k8s/index.rst b/docs/k8s/index.rst index 872a3280..22d459da 100644 --- a/docs/k8s/index.rst +++ b/docs/k8s/index.rst @@ -1,25 +1,36 @@ .. This work is licensed under a Creative Commons Attribution 4.0 International License. .. http://creativecommons.org/licenses/by/4.0 -.. (c) OPNFV, Spirent, AT&T, Ixia and others. +.. (c) Anuket, Spirent, AT&T, Ixia and others. -.. OPNFV VSPERF Documentation master file. +.. Anuket ViNePerf Documentation master file. -========================================================= -OPNFV VSPERF Kubernetes Container Networking Benchmarking -========================================================= -VSPERF supports testing and benchmarking of kubernetes container networking solution, referred as kubernetes Container Networking Benchmarking (CNB). The process can be broadly classified into following four operations. +============================================================ +Anuket ViNePerf Kubernetes Container Networking Benchmarking +============================================================ +ViNePerf supports testing and benchmarking of kubernetes container networking solution, referred as kubernetes Container Networking Benchmarking (CNB). The process can be broadly classified into following four operations. 1. Setting up of Kubernetes Cluster. 2. Deploying container networking solution. 3. Deploying pod(s). 4. Running tests. -First step is achieved through the tool present in *tools/k8s/cluster-deployment* folder. Please refer to the documentation present in that folder for automated kubernetes cluster setup. To perform the remaining steps, the user has to run the following command. +First step is achieved through the tool present in *tools/k8s/cluster-deployment* folder. Please refer to the documentation present in that folder for automated kubernetes cluster setup. + +User can choose to perform all the remaining steps (2, 3, and 4), by running the following command. .. code-block:: console vsperf --k8s --conf-file k8s.conf pcp_tput +User can also chose to perform only steps 3 and 4, by choosing to run following test cases. + +.. code-block:: console + + vsperf --k8s --conf-file k8s.conf pcp_evs_tput + or + vsperf --k8s --conf-file k8s.conf pccp_evs_tput + + ************************ Important Configurations ************************ @@ -37,4 +48,10 @@ VSPERF has introduced a new configuration parameters, as listed below, for kuber ********* Testcases ********* -Kubernetes CNB will be done through new testcases. For Jerma release, only pcp_tput will be supported. This testcase, will be similar to pvp_tput, where VNF is replaced with a pod/container. The pcp_tput testcase, will still use phy2phy as deployment. In future releases, a new deployment model will be added to support more testcases for kubernetes +Kubernetes CNB will be done through new testcases. For Jerma release, only pcp_tput will be supported. This testcase, will be similar to pvp_tput, where VNF is replaced with a pod/container. The pcp_tput testcase, will still use phy2phy as deployment. +In Kali release, two testscases were added: + +1. pcp_evs_tput: Single-Pod throughput test, where virtual switch is externally deployed and managed. +2. pccp_evs_tput: Two-Pod throughput test, where virtual switch is externally deployed and managed. + +In future releases, more testcases for kubernetes will be added. diff --git a/docs/lma/index.rst b/docs/lma/index.rst index dd6be47b..9886228a 100644 --- a/docs/lma/index.rst +++ b/docs/lma/index.rst @@ -1,12 +1,12 @@ .. This work is licensed under a Creative Commons Attribution 4.0 International License. .. http://creativecommons.org/licenses/by/4.0 -.. (c) OPNFV, Intel Corporation, AT&T, Red Hat, Spirent, Ixia and others. +.. (c) OPNFV, Spirent, AT&T, Ixia and others. -.. OPNFV VSPERF LMA Documentation master file. +.. Anuket ViNePerf LMA Documentation master file. -*********************** -OPNFV VSPERF LMA Guides -*********************** +************************** +Anuket ViNePerf LMA Guides +************************** .. toctree:: :caption: Developer Guide for Monitoring Tools diff --git a/docs/lma/logs/devguide.rst b/docs/lma/logs/devguide.rst index 7aeaad29..e2a7bad7 100644 --- a/docs/lma/logs/devguide.rst +++ b/docs/lma/logs/devguide.rst @@ -1,3 +1,9 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. (c) OPNFV, Spirent, AT&T, Ixia and others. + +.. Anuket ViNePerf LMA Documentation master file. + ==================== Logs Developer Guide ==================== diff --git a/docs/lma/logs/userguide.rst b/docs/lma/logs/userguide.rst index 9b616fe7..e33b7f57 100644 --- a/docs/lma/logs/userguide.rst +++ b/docs/lma/logs/userguide.rst @@ -1,8 +1,8 @@ .. This work is licensed under a Creative Commons Attribution 4.0 International License. .. http://creativecommons.org/licenses/by/4.0 -.. (c) OPNFV, Intel Corporation, AT&T, Red Hat, Spirent, Ixia and others. +.. (c) OPNFV, Spirent, AT&T, Ixia and others. -.. OPNFV VSPERF Documentation master file. +.. Anuket ViNePerf LMA Documentation master file. *************** Logs User Guide diff --git a/docs/openstack/index.rst b/docs/openstack/index.rst index 6009e669..648ceb07 100644 --- a/docs/openstack/index.rst +++ b/docs/openstack/index.rst @@ -2,20 +2,20 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Spirent Communications, AT&T, Ixia and others. -.. OPNFV VSPERF With Openstack master file. +.. Anuket ViNePerf With Openstack master file. -*************************** -OPNFV VSPERF with OPENSTACK -*************************** +******************************* +Anuket ViNePerf with OPENSTACK +******************************* Introduction ------------ -VSPERF performs the following, when run with openstack: +ViNePerf performs the following, when run with openstack: 1. Connect to Openstack (using the credentials) 2. Deploy Traffic-Generators in a required way (defined by scenarios) -3. Update the VSPERF configuration based on the deployment. -4. Use the updated configuration to run test in "Trafficgen" Mode. +3. Update the ViNePerf configuration based on the deployment. +4. Use the updated configuration to run test in "Trafficgen" Mode. 5. Publish and store results. diff --git a/docs/release/release-notes/index.rst b/docs/release/release-notes/index.rst index 84f350c4..bb7a2105 100644 --- a/docs/release/release-notes/index.rst +++ b/docs/release/release-notes/index.rst @@ -5,7 +5,7 @@ .. _vswitchperf-releasenotes: ================================================== -VSPERF Release Notes +ViNePerf Release Notes ================================================== .. toctree:: diff --git a/docs/release/release-notes/release-notes.rst b/docs/release/release-notes/release-notes.rst index 486beaf0..b730e2ad 100644 --- a/docs/release/release-notes/release-notes.rst +++ b/docs/release/release-notes/release-notes.rst @@ -2,6 +2,33 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, Spirent Communications, AT&T and others. + +Anuket Kali Release +=================== + +* Project Renaming: Project is renamed to ViNePerf from VswitchPerf + +* Supported Versions - DPDK:20.05, OVS:2.14.0, VPP:21.01, QEMU:3.1.1, Trex:2.86 + +* Supported Release-Requirements. + + * Kubernetes container-networking benchmarking. + * Tested Versions of Kubernetes: 1.19 + +* Additional Features + + * Enhancement to core parts to support Kubernetes usecases. + * Support newer versions of Ubuntu (20.04) and Fedora (33). + * Enhance reporting to support Openstack and Kubernetes. + * Added reference definition-files (network attachment, pod, etc) + for kuberentes usecases. + +* Minor bugfixes + + * Avoiding some tasks for Kubernetes usecases. + * Newer version of some python packages + + OPNFV Jerma Release =================== @@ -45,18 +72,18 @@ OPNFV Iruya Release * Supported Versions - DPDK:18.11, OVS:2.12.0, VPP:19.08.1, QEMU:3.1.1 * Few bugfixes and minor improvements -* New Feature: Containers to manage VSPERF. +* New Feature: Containers to manage ViNePerf. - * VSPERF Containers for both deployment and test runs + * ViNePerf Containers for both deployment and test runs * Improvement - + * Results Analysis to include all 5 types of data. * Infrastructure data * End-Of-Test Results * Live-Results - * Events from VSPERF Logs + * Events from ViNePerf Logs * Test Environment * Usability @@ -98,7 +125,7 @@ OPNFV Gambia Release * OVS-Enhancement: default bridge name and offload support. * OVS-Enhancement: proper deletion of flows and bridges after stop. - * VSPERF-vSwitch Architecture Improvement + * ViNePerf-vSwitch Architecture Improvement * Tools @@ -340,8 +367,7 @@ Supported traffic generators: * Spirent. * Dummy. -Release Data -~~~~~~~~~~~~ +Release Data: +--------------------------------------+--------------------------------------+ | **Project** | vswitchperf | diff --git a/docs/renaming/index.rst b/docs/renaming/index.rst new file mode 100644 index 00000000..bab1f064 --- /dev/null +++ b/docs/renaming/index.rst @@ -0,0 +1,18 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. (c) Anuket, Spirent, AT&T, Ixia and others. + +.. Anuket ViNePerf Renaming Declaration file. + +**************************************************** +OPNFV VswitchPerf or OPNFV VSPerf to Anuket ViNePerf +**************************************************** + +.. toctree:: + :numbered: + :maxdepth: 2 + + renaming.rst + +Build date: |today| + diff --git a/docs/renaming/renaming.rst b/docs/renaming/renaming.rst new file mode 100644 index 00000000..e898f1c1 --- /dev/null +++ b/docs/renaming/renaming.rst @@ -0,0 +1,8 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. (c) OPNFV, Spirent and others. + +Renaming Notice +=============== + +VSwitchperf or VSPEerf project in renamed to ViNePerf. User might find some references to older names in documentation or source-code. For Kali Release, these references are not migrated to avoid any hyperlinks or code breakdowns. diff --git a/docs/testing/developer/devguide/design/trafficgen_integration_guide.rst b/docs/testing/developer/devguide/design/trafficgen_integration_guide.rst index 671c7fd8..0ab5b848 100644 --- a/docs/testing/developer/devguide/design/trafficgen_integration_guide.rst +++ b/docs/testing/developer/devguide/design/trafficgen_integration_guide.rst @@ -33,7 +33,7 @@ Step 2 - create a trafficgen module =================================== Every trafficgen class must inherit from generic **ITrafficGenerator** -interface class. VSPERF during its initialization scans content of pkt_gen +interface class. ViNePerf during its initialization scans content of pkt_gen directory for all python modules, that inherit from **ITrafficGenerator**. These modules are automatically added into the list of supported traffic generators. @@ -51,7 +51,7 @@ Let us create a draft of tools/pkt_gen/sample_tg/sample_tg.py module. """ pass -VSPERF is immediately aware of the new class: +ViNePerf is immediately aware of the new class: .. code-block:: console @@ -83,14 +83,14 @@ Step 3 - configuration ====================== All configuration values, required for correct traffic generator function, are passed -from VSPERF to the traffic generator in a dictionary. Default values shared among +from ViNePerf to the traffic generator in a dictionary. Default values shared among all traffic generators are defined in **conf/03_traffic.conf** within **TRAFFIC** dictionary. Default values are loaded by **ITrafficGenerator** interface class automatically, so it is not needed to load them explicitly. In case that there are any traffic generator specific default values, then they should be set within class specific **__init__** function. -VSPERF passes test specific configuration within **traffic** dictionary to every +ViNePerf passes test specific configuration within **traffic** dictionary to every start and send function. So implementation of these functions must ensure, that default values are updated with the testcase specific values. Proper merge of values is assured by call of **merge_spec** function from **conf** module. @@ -140,7 +140,7 @@ Example in **tools/pkt_gen/sample_tg/sample_tg.py** module: Step 5 - supported traffic types ================================ -Currently VSPERF supports three different types of tests for traffic generators, +Currently ViNePerf supports three different types of tests for traffic generators, these are identified in vsperf through the traffic type, which include: * RFC2544 throughput - Send fixed size packets at different rates, using diff --git a/docs/testing/developer/devguide/design/vswitchperf_design.rst b/docs/testing/developer/devguide/design/vswitchperf_design.rst index 5fa892e0..f0f9401d 100644 --- a/docs/testing/developer/devguide/design/vswitchperf_design.rst +++ b/docs/testing/developer/devguide/design/vswitchperf_design.rst @@ -4,9 +4,9 @@ .. _vsperf-design: -====================== -VSPERF Design Document -====================== +======================== +ViNePerf Design Document +======================== Intended Audience ================= @@ -21,11 +21,11 @@ Usage Example Connectivity to DUT --------------------------- -Establish connectivity to the VSPERF DUT Linux host. If this is in an OPNFV lab +Establish connectivity to the ViNePerf DUT Linux host. If this is in an OPNFV lab following the steps provided by `Pharos <https://www.opnfv.org/community/projects/pharos>`_ to `access the POD <https://wiki.opnfv.org/display/INF/INFRA+Lab+Support>`_ -The followign steps establish the VSPERF environment. +The followign steps establish the ViNePerf environment. Example Command Lines --------------------- @@ -111,13 +111,13 @@ convention. Configuration of PATHS dictionary --------------------------------- -VSPERF uses external tools like Open vSwitch and Qemu for execution of testcases. These +ViNePerf uses external tools like Open vSwitch and Qemu for execution of testcases. These tools may be downloaded and built automatically (see :ref:`vsperf-installation-script`) or installed manually by user from binary packages. It is also possible to use a combination of both approaches, but it is essential to correctly set paths to all required tools. These paths are stored within a PATHS dictionary, which is evaluated before execution of each testcase, in order to setup testcase specific environment. Values selected for testcase -execution are internally stored inside TOOLS dictionary, which is used by VSPERF to execute +execution are internally stored inside TOOLS dictionary, which is used by ViNePerf to execute external tools, load kernel modules, etc. The default configuration of PATHS dictionary is spread among three different configuration files @@ -180,11 +180,11 @@ of configuration options: * option ``type`` - is a string, which defines the type of configured paths ('src' or 'bin') to be selected for a given section: - * value ``src`` means, that VSPERF will use vswitch, DPDK or QEMU built from sources - e.g. by execution of ``systems/build_base_machine.sh`` script during VSPERF + * value ``src`` means, that ViNePerf will use vswitch, DPDK or QEMU built from sources + e.g. by execution of ``systems/build_base_machine.sh`` script during ViNePerf installation - * value ``bin`` means, that VSPERF will use vswitch, DPDK or QEMU binaries installed + * value ``bin`` means, that ViNePerf will use vswitch, DPDK or QEMU binaries installed directly in the operating system, e.g. via OS specific packaging system * option ``path`` - is a string with a valid system path; Its content is checked for @@ -258,7 +258,7 @@ of configuration options: TOOLS['ovsdb-server'] = '/tmp/vsperf/src_vanilla/ovs/ovs/ovsdb/ovsdb-server' Note: In case that ``bin`` type is set for DPDK, then ``TOOLS['dpdk_src']`` will be set to -the value of ``PATHS['dpdk']['src']['path']``. The reason is, that VSPERF uses downloaded +the value of ``PATHS['dpdk']['src']['path']``. The reason is, that ViNePerf uses downloaded DPDK sources to copy DPDK and testpmd into the GUEST, where testpmd is built. In case, that DPDK sources are not available, then vsperf will continue with test execution, but testpmd can't be used as a guest loopback. This is useful in case, that other guest @@ -497,11 +497,11 @@ Detailed description of ``TRAFFIC`` dictionary items follows: Configuration of GUEST options ------------------------------ -VSPERF is able to setup scenarios involving a number of VMs in series or in parallel. +ViNePerf is able to setup scenarios involving a number of VMs in series or in parallel. All configuration options related to a particular VM instance are defined as lists and prefixed with ``GUEST_`` label. It is essential, that there is enough items in all ``GUEST_`` options to cover all VM instances involved in the test. -In case there is not enough items, then VSPERF will use the first item of +In case there is not enough items, then ViNePerf will use the first item of particular ``GUEST_`` option to expand the list to required length. Example of option expansion for 4 VMs: @@ -605,7 +605,7 @@ PXP Deployment Every testcase uses one of the supported deployment scenarios to setup test environment. The controller responsible for a given scenario configures flows in the vswitch to route traffic among physical interfaces connected to the traffic generator and virtual -machines. VSPERF supports several deployments including PXP deployment, which can +machines. ViNePerf supports several deployments including PXP deployment, which can setup various scenarios with multiple VMs. These scenarios are realized by VswitchControllerPXP class, which can configure and @@ -716,7 +716,7 @@ by deployment name as follows: * ``pvpv[number]`` - configures scenario with VMs connected in parallel with optional ``number`` of VMs. In case that ``number`` is not specified, then 2 VMs will be used. Multistream feature is used to route traffic to particular - VMs (or NIC pairs of every VM). It means, that VSPERF will enable multistream + VMs (or NIC pairs of every VM). It means, that ViNePerf will enable multistream feature and sets the number of streams to the number of VMs and their NIC pairs. Traffic will be dispatched based on Stream Type, i.e. by UDP port, IP address or MAC address. @@ -805,7 +805,7 @@ are modified inside VM (e.g. MAC swap or IP change). VM, vSwitch, Traffic Generator Independence =========================================== -VSPERF supports different VSwitches, Traffic Generators, VNFs +ViNePerf supports different VSwitches, Traffic Generators, VNFs and Forwarding Applications by using standard object-oriented polymorphism: * Support for vSwitches is implemented by a class inheriting from IVSwitch. diff --git a/docs/testing/developer/devguide/index.rst b/docs/testing/developer/devguide/index.rst index 64a4758c..ad82e3ce 100644 --- a/docs/testing/developer/devguide/index.rst +++ b/docs/testing/developer/devguide/index.rst @@ -2,46 +2,46 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, AT&T, Red Hat, Spirent, Ixia and others. -.. OPNFV VSPERF Documentation master file. +.. Anuket ViNePerf Documentation master file. -**************************** -OPNFV VSPERF Developer Guide -**************************** +******************************* +Anuket ViNePerf Developer Guide +******************************* ============ Introduction ============ -VSPERF is an OPNFV testing project. +ViNePerf is an Anuket testing project. -VSPERF provides an automated test-framework and comprehensive test suite based on Industry +ViNePerf provides an automated test-framework and comprehensive test suite based on Industry Test Specifications for measuring NFVI data-plane performance. The data-path includes switching technologies with -physical and virtual network interfaces. The VSPERF architecture is switch and traffic generator agnostic and test -cases can be easily customized. VSPERF was designed to be independent of OpenStack therefore OPNFV installer scenarios -are not required. VSPERF can source, configure and deploy the device-under-test using specified software versions and -network topology. VSPERF is used as a development tool for optimizing switching technologies, qualification of packet +physical and virtual network interfaces. The ViNePerf architecture is switch and traffic generator agnostic and test +cases can be easily customized. ViNePerf was designed to be independent of OpenStack therefore OPNFV installer scenarios +are not required. ViNePerf can source, configure and deploy the device-under-test using specified software versions and +network topology. ViNePerf is used as a development tool for optimizing switching technologies, qualification of packet processing functions and for evaluation of data-path performance. The Euphrates release adds new features and improvements that will help advance high performance packet processing on Telco NFV platforms. This includes new test cases, flexibility in customizing test-cases, new results display options, improved tool resiliency, additional traffic generator support and VPP support. -VSPERF provides a framework where the entire NFV Industry can learn about NFVI data-plane performance and try-out -new techniques together. A new IETF benchmarking specification (RFC8204) is based on VSPERF work contributed since -2015. VSPERF is also contributing to development of ETSI NFV test specifications through the Test and Open Source +ViNePerf provides a framework where the entire NFV Industry can learn about NFVI data-plane performance and try-out +new techniques together. A new IETF benchmarking specification (RFC8204) is based on ViNePerf work contributed since +2015. ViNePerf is also contributing to development of ETSI NFV test specifications through the Test and Open Source Working Group. -* Wiki: https://wiki.opnfv.org/display/vsperf -* Repository: https://git.opnfv.org/vswitchperf +* Wiki: https://wiki.anuket.io/display/HOME/ViNePERF +* Repository: https://git.opnfv.org/vineperf * Artifacts: https://artifacts.opnfv.org/vswitchperf.html -* Continuous Integration: https://build.opnfv.org/ci/view/vswitchperf/ +* Continuous Integration: https://build.opnfv.org/ci/view/vineperf/ ============= Design Guides ============= .. toctree:: - :caption: Traffic Gen Integration, VSPERF Design, Test Design, Test Plan + :caption: Traffic Gen Integration, ViNePerf Design, Test Design, Test Plan :maxdepth: 2 ./design/trafficgen_integration_guide.rst @@ -55,22 +55,22 @@ IETF RFC 8204 ============= .. toctree:: - :caption: VSPERF contributions to Industry Specifications + :caption: ViNePerf contributions to Industry Specifications :maxdepth: 2 :numbered: The IETF Benchmarking Methodology Working Group (BMWG) was re-chartered in 2014 to include benchmarking for -Virtualized Network Functions (VNFs) and their infrastructure. A version of the VSPERF test specification was +Virtualized Network Functions (VNFs) and their infrastructure. A version of the ViNePerf test specification was summarized in an Internet Draft ... `Benchmarking Virtual Switches in OPNFV <https://tools.ietf.org/html/draft-ietf-bmwg-vswitch-opnfv-01>`_ and contributed to the BMWG. In June 2017 the Internet Engineering Steering Group of the IETF approved the most recent version of the draft for publication as a new test specification (RFC 8204). -==================== -VSPERF CI Test Cases -==================== +====================== +ViNePerf CI Test Cases +====================== .. toctree:: - :caption: VSPERF Scenarios & Results + :caption: ViNePerf Scenarios & Results :maxdepth: 2 :numbered: -CI Test cases run daily on the VSPERF Pharos POD for master and stable branches. +CI Test cases run daily on the ViNePerf Pharos POD for master and stable branches. diff --git a/docs/testing/developer/devguide/requirements/ietf_draft/rfc8204-vsperf-bmwg-vswitch-opnfv.rst b/docs/testing/developer/devguide/requirements/ietf_draft/rfc8204-vsperf-bmwg-vswitch-opnfv.rst index 10b07d54..201c8415 100644 --- a/docs/testing/developer/devguide/requirements/ietf_draft/rfc8204-vsperf-bmwg-vswitch-opnfv.rst +++ b/docs/testing/developer/devguide/requirements/ietf_draft/rfc8204-vsperf-bmwg-vswitch-opnfv.rst @@ -6,12 +6,12 @@ IETF benchmarking specification RFC8204 *************************************** -The directory /ietf_draft was used to store draft versions of the VSPERF test specification proposed +The directory /ietf_draft was used to store draft versions of the ViNePerf test specification proposed as an Internet Draft and subsequently approved for publication as RFC8204. The draft versions have been removed. "Benchmarking Virtual Switches in the Open Platform for NFV (OPNFV)" is an informational RFC published by the IETF available here https://tools.ietf.org/html/rfc8204. -For more information about VSPERF refer to: +For more information about ViNePerf refer to: * Wiki: https://wiki.opnfv.org/display/vsperf * Repository: https://git.opnfv.org/vswitchperf diff --git a/docs/testing/developer/devguide/requirements/vswitchperf_ltd.rst b/docs/testing/developer/devguide/requirements/vswitchperf_ltd.rst index 1ea99f7e..5796b399 100644 --- a/docs/testing/developer/devguide/requirements/vswitchperf_ltd.rst +++ b/docs/testing/developer/devguide/requirements/vswitchperf_ltd.rst @@ -2,9 +2,9 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, AT&T and others. -****************************** -VSPERF LEVEL TEST DESIGN (LTD) -****************************** +******************************** +ViNePerf LEVEL TEST DESIGN (LTD) +******************************** .. 3.1 diff --git a/docs/testing/developer/devguide/requirements/vswitchperf_ltp.rst b/docs/testing/developer/devguide/requirements/vswitchperf_ltp.rst index c0b63859..fe57ddc5 100644 --- a/docs/testing/developer/devguide/requirements/vswitchperf_ltp.rst +++ b/docs/testing/developer/devguide/requirements/vswitchperf_ltp.rst @@ -4,16 +4,16 @@ .. 3.1 -***************************** -VSPERF LEVEL TEST PLAN (LTP) -***************************** +****************************** +ViNePerf LEVEL TEST PLAN (LTP) +****************************** =============== Introduction =============== -The objective of the OPNFV project titled -**Characterize vSwitch Performance for Telco NFV Use Cases**, is to +The objective of the Anuket project titled +**Characterize Virtual Networking Performance for Telco NFV Use Cases**, is to evaluate the performance of virtual switches to identify its suitability for a Telco Network Function Virtualization (NFV) environment. The intention of this Level Test Plan (LTP) document is to specify the scope, approach, resources, @@ -1295,9 +1295,9 @@ vsperf also identified an alternative configuration for the final step: Environment/infrastructure ============================ -VSPERF CI jobs are run using the OPNFV lab infrastructure as described by the +ViNePerf CI jobs are run using the Anuket lab infrastructure as described by the 'Pharos Project <https://www.opnfv.org/community/projects/pharos>`_ . -A VSPERF POD is described here https://wiki.opnfv.org/display/pharos/VSPERF+in+Intel+Pharos+Lab+-+Pod+12 +A ViNePerf POD is described here https://wiki.opnfv.org/display/pharos/ViNePerf+in+Intel+Pharos+Lab+-+Pod+12 vsperf CI --------- @@ -1322,15 +1322,15 @@ vsperf CI jobs are broken down into: Scripts: -------- -There are 2 scripts that are part of VSPERFs CI: +There are 2 scripts that are part of ViNePerfs CI: - * build-vsperf.sh: Lives in the VSPERF repository in the ci/ directory and is + * build-vsperf.sh: Lives in the ViNePerf repository in the ci/ directory and is used to run vsperf with the appropriate cli parameters. * vswitchperf.yml: YAML description of our jenkins job. lives in the RELENG repository. More info on vsperf CI can be found here: -https://wiki.opnfv.org/display/vsperf/VSPERF+CI +https://wiki.opnfv.org/display/vsperf/ViNePerf+CI .. 3.3.3: diff --git a/docs/testing/developer/devguide/results/index.rst b/docs/testing/developer/devguide/results/index.rst index 04899b5a..d9ae1466 100644 --- a/docs/testing/developer/devguide/results/index.rst +++ b/docs/testing/developer/devguide/results/index.rst @@ -2,9 +2,9 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, AT&T and others. -************** -VSPERF Results -************** +**************** +ViNePerf Results +**************** .. toctree:: :numbered: @@ -12,3 +12,4 @@ VSPERF Results scenario.rst results.rst + osk8s.rst diff --git a/docs/testing/developer/devguide/results/osk8s.rst b/docs/testing/developer/devguide/results/osk8s.rst new file mode 100644 index 00000000..81d2f3c8 --- /dev/null +++ b/docs/testing/developer/devguide/results/osk8s.rst @@ -0,0 +1,15 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. (c) OPNFV, Spirent, AT&T, Ixia and others. + +.. Anuket ViNePerf Openstack/Kubernetes Documentation file + +Reporting for Openstack and Kubernetes Usecases +=============================================== + +For Openstack and Kubernetes scenarios, ViNePerf will providing for the following as part of the reporting: + +1. Cloud-Information: Detailed information about the Openstack or Kubernetes environment. +2. Cloud Identifier: Identifying whether the cloud was Openstack based or Kubernetes based. + +These information are saved in the same location as the test-results. diff --git a/docs/testing/developer/devguide/results/results.rst b/docs/testing/developer/devguide/results/results.rst index 0a0ab75d..ee99410f 100644 --- a/docs/testing/developer/devguide/results/results.rst +++ b/docs/testing/developer/devguide/results/results.rst @@ -2,13 +2,13 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, AT&T and others. -OPNFV Test Results +Anuket Test Results ========================= -VSPERF CI jobs are run daily and sample results can be found at +ViNePerf CI jobs are run daily and sample results can be found at https://wiki.opnfv.org/display/vsperf/Vsperf+Results Testcase names shown in the dashboard are combination of orignal testcase -name from VSPERF framework and indication of used vswitch. +name from ViNePerf framework and indication of used vswitch. Example: diff --git a/docs/testing/developer/devguide/results/scenario.rst b/docs/testing/developer/devguide/results/scenario.rst index f7eadd33..99ba19ff 100644 --- a/docs/testing/developer/devguide/results/scenario.rst +++ b/docs/testing/developer/devguide/results/scenario.rst @@ -2,8 +2,8 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, AT&T and others. -VSPERF Test Scenarios -===================== +ViNePerf Test Scenarios +======================= Predefined Tests suitable for automated execution with CI: diff --git a/docs/testing/user/configguide/index.rst b/docs/testing/user/configguide/index.rst index 87c32d11..2a69cbe1 100644 --- a/docs/testing/user/configguide/index.rst +++ b/docs/testing/user/configguide/index.rst @@ -2,46 +2,48 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, AT&T, Red Hat, Spirent, Ixia and others. -.. OPNFV VSPERF Documentation master file. +.. Anuket ViNePerf Documentation master file. -*********************************** -VSPERF Configuration and User Guide -*********************************** +************************************* +ViNePerf Configuration and User Guide +************************************* ============ Introduction ============ -VSPERF is an OPNFV testing project. +ViNePerf is an OPNFV testing project. -VSPERF provides an automated test-framework and comprehensive test suite based on Industry +ViNePerf provides an automated test-framework and comprehensive test suite based on Industry Test Specifications for measuring NFVI data-plane performance. The data-path includes switching technologies with -physical and virtual network interfaces. The VSPERF architecture is switch and traffic generator agnostic and test -cases can be easily customized. VSPERF was designed to be independent of OpenStack therefore OPNFV installer scenarios -are not required. VSPERF can source, configure and deploy the device-under-test using specified software versions and -network topology. VSPERF is used as a development tool for optimizing switching technologies, qualification of packet +physical and virtual network interfaces. The ViNePerf architecture is switch and traffic generator agnostic and test +cases can be easily customized. ViNePerf was designed to be independent of OpenStack therefore OPNFV installer scenarios +are not required. ViNePerf can source, configure and deploy the device-under-test using specified software versions and +network topology. ViNePerf is used as a development tool for optimizing switching technologies, qualification of packet processing functions and for evaluation of data-path performance. -The Euphrates release adds new features and improvements that will help advance high performance packet processing +The Kali release adds new features and improvements that will help advance high performance packet processing on Telco NFV platforms. This includes new test cases, flexibility in customizing test-cases, new results display options, improved tool resiliency, additional traffic generator support and VPP support. -VSPERF provides a framework where the entire NFV Industry can learn about NFVI data-plane performance and try-out -new techniques together. A new IETF benchmarking specification (RFC8204) is based on VSPERF work contributed since -2015. VSPERF is also contributing to development of ETSI NFV test specifications through the Test and Open Source +The support for Openstack and Kubernetes was added in Jerma release, and Kali release adds additional testcases to it. + +ViNePerf provides a framework where the entire NFV Industry can learn about NFVI data-plane performance and try-out +new techniques together. A new IETF benchmarking specification (RFC8204) is based on ViNePerf work contributed since +2015. ViNePerf is also contributing to development of ETSI NFV test specifications through the Test and Open Source Working Group. -* Wiki: https://wiki.opnfv.org/display/vsperf -* Repository: https://git.opnfv.org/vswitchperf +* Wiki: https://wiki.anuket.io/display/HOME/ViNePERF +* Repository: https://git.opnfv.org/vineperf * Artifacts: https://artifacts.opnfv.org/vswitchperf.html -* Continuous Integration: https://build.opnfv.org/ci/view/vswitchperf/ +* Continuous Integration: https://build.opnfv.org/ci/view/vineperf/ -================================ -VSPERF Install and Configuration -================================ +================================== +ViNePerf Install and Configuration +================================== .. toctree:: - :caption: VSPERF Install, Upgrade, Traffic Generator Guide + :caption: ViNePerf Install, Upgrade, Traffic Generator Guide :maxdepth: 2 :numbered: @@ -50,12 +52,12 @@ VSPERF Install and Configuration ./trafficgen.rst ./tools.rst -================= -VSPERF Test Guide -================= +=================== +ViNePerf Test Guide +=================== .. toctree:: - :caption: VSPERF Test Execution + :caption: ViNePerf Test Execution :maxdepth: 2 ../userguide/testusage.rst diff --git a/docs/testing/user/configguide/installation.rst b/docs/testing/user/configguide/installation.rst index b950442e..4665c9e9 100644 --- a/docs/testing/user/configguide/installation.rst +++ b/docs/testing/user/configguide/installation.rst @@ -5,15 +5,15 @@ .. _vsperf-installation: ====================== -Installing vswitchperf +Installing ViNePerf ====================== -Downloading vswitchperf +Downloading ViNeperf ----------------------- -The vswitchperf can be downloaded from its official git repository, which is +The ViNePerf can be downloaded from its official git repository, which is hosted by OPNFV. It is necessary to install a ``git`` at your DUT before downloading -vswitchperf. Installation of ``git`` is specific to the packaging system used by +vineperf. Installation of ``git`` is specific to the packaging system used by Linux OS installed at DUT. Example of installation of GIT package and its dependencies: @@ -31,14 +31,14 @@ Example of installation of GIT package and its dependencies: sudo apt-get install git -After the ``git`` is successfully installed at DUT, then vswitchperf can be downloaded +After the ``git`` is successfully installed at DUT, then vineperf can be downloaded as follows: .. code:: bash - git clone http://git.opnfv.org/vswitchperf + git clone https://gerrit.opnfv.org/gerrit/vineperf -The last command will create a directory ``vswitchperf`` with a local copy of vswitchperf +The last command will create a directory ``vineperf`` with a local copy of vineperf repository. Supported Operating Systems @@ -47,6 +47,7 @@ Supported Operating Systems * CentOS 7.3 * Fedora 24 (kernel 4.8 requires DPDK 16.11 and newer) * Fedora 25 (kernel 4.9 requires DPDK 16.11 and newer) +* Fedora 33 * openSUSE 42.2 * openSUSE 42.3 * openSUSE Tumbleweed @@ -57,6 +58,7 @@ Supported Operating Systems * Ubuntu 14.04 * Ubuntu 16.04 * Ubuntu 16.10 (kernel 4.8 requires DPDK 16.11 and newer) +* Ubuntu 20.04 Supported vSwitches ------------------- @@ -79,8 +81,8 @@ Supported VNFs In theory, it is possible to use any VNF image, which is compatible with supported hypervisor. However such VNF must ensure, that appropriate number of network interfaces is configured and that traffic is properly -forwarded among them. For new vswitchperf users it is recommended to start -with official vloop-vnf_ image, which is maintained by vswitchperf community. +forwarded among them. For new ViNePerf users it is recommended to start +with official vloop-vnf_ image, which is maintained by ViNePerf community. .. _vloop-vnf: @@ -162,23 +164,23 @@ automatically. Script **build_base_machine.sh** will install all the vsperf dependencies in terms of system packages, Python 3.x and required Python modules. -In case of CentOS 7 or RHEL it will install Python 3.3 from an additional +In case of CentOS 7 or RHEL it will install Python 3.8 from an additional repository provided by Software Collections (`a link`_). The installation script will also use `virtualenv`_ to create a vsperf virtual environment, which is isolated from the default Python environment, using the Python3 package located in **/usr/bin/python3**. This environment will reside in a directory called -**vsperfenv** in $HOME. +**vsperfenv** in $HOME. It will ensure, that system wide Python installation is not modified or -broken by VSPERF installation. +broken by ViNePerf installation. The complete list of Python packages installed inside virtualenv can be found in the file -``requirements.txt``, which is located at the vswitchperf repository. +``requirements.txt``, which is located at the ViNePerf repository. **NOTE:** For RHEL 7.3 Enterprise and CentOS 7.3 OVS Vanilla is not built from upstream source due to kernel incompatibilities. Please see the -instructions in the vswitchperf_design document for details on configuring +instructions in the ViNePerf_design document for details on configuring OVS Vanilla for binary package usage. **NOTE:** For RHEL 7.5 Enterprise DPDK and Openvswitch are not built from @@ -202,7 +204,7 @@ issue by simply downloading the file. $ wget https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7 -Using vswitchperf +Using ViNePerf ----------------- You will need to activate the virtual environment every time you start a @@ -221,12 +223,12 @@ new shell session. Its activation is specific to your OS: $ source $HOME/vsperfenv/bin/activate -After the virtual environment is configued, then VSPERF can be used. +After the virtual environment is configued, then ViNePerf can be used. For example: .. code:: bash - (vsperfenv) $ cd vswitchperf + (vsperfenv) $ cd vineperf (vsperfenv) $ ./vsperf --help Gotcha @@ -237,7 +239,7 @@ In case you will see following error during environment activation: .. code:: bash $ source $HOME/vsperfenv/bin/activate - Badly placed ()'s. + Badly placed ()s. then check what type of shell you are using: @@ -284,7 +286,7 @@ VSPerf supports the default DPDK bind tool, but also supports driverctl. The driverctl tool is a new tool being used that allows driver binding to be persistent across reboots. The driverctl tool is not provided by VSPerf, but can be downloaded from upstream sources. Once installed set the bind tool to -driverctl to allow VSPERF to correctly bind cards for DPDK tests. +driverctl to allow ViNePerf to correctly bind cards for DPDK tests. .. code:: python diff --git a/docs/testing/user/configguide/tools.rst b/docs/testing/user/configguide/tools.rst index 72e515fa..617d67bc 100644 --- a/docs/testing/user/configguide/tools.rst +++ b/docs/testing/user/configguide/tools.rst @@ -5,19 +5,19 @@ .. _additional-tools-configuration: ============================================= -'vsperf' Additional Tools Configuration Guide +ViNePerf Additional Tools Configuration Guide ============================================= Overview -------- -VSPERF supports the following categories additional tools: +ViNePerf supports the following categories additional tools: * `Infrastructure Metrics Collectors`_ * `Load Generators`_ * `L3 Cache Management`_ -Under each category, there are one or more tools supported by VSPERF. +Under each category, there are one or more tools supported by ViNePerf. This guide provides the details of how to install (if required) and configure the above mentioned tools. @@ -26,13 +26,13 @@ and configure the above mentioned tools. Infrastructure Metrics Collection --------------------------------- -VSPERF supports following two tools for collecting and reporting the metrics: +ViNePerf supports following two tools for collecting and reporting the metrics: * pidstat * collectd *pidstat* is a command in linux systems, which is used for monitoring individual -tasks currently being managed by Linux kernel. In VSPERF this command is used to +tasks currently being managed by Linux kernel. In ViNePerf this command is used to monitor *ovs-vswitchd*, *ovsdb-server* and *kvm* processes. *collectd* is linux application that collects, stores and transfers various system @@ -46,10 +46,10 @@ Installation No installation is required for *pidstat*, whereas, collectd has to be installed separately. For installation of collectd, we recommend to follow the process described -in *OPNFV-Barometer* project, which can be found here `Barometer <https://opnfv-barometer.readthedocs.io/en/latest/release/userguide>`_ +in *Anuket-Barometer* project, which can be found here `Barometer <https://opnfv-barometer.readthedocs.io/en/latest/release/userguide>`_ recent release. -VSPERF assumes that collectd is installed and configured to send metrics over localhost. +ViNePerf assumes that collectd is installed and configured to send metrics over localhost. The metrics sent should be for the following categories: CPU, Processes, Interface, OVS, DPDK, Intel-RDT. @@ -97,9 +97,9 @@ The *collectd* configuration option includes: Load Generation --------------- -In VSPERF, load generation refers to creating background cpu and memory loads to +In ViNePerf, load generation refers to creating background cpu and memory loads to study the impact of these loads on system under test. There are two options to -create loads in VSPERF. These options are used for different use-cases. The options are: +create loads in ViNePerf. These options are used for different use-cases. The options are: * stress or stress-ng * Stressor-VMs @@ -148,12 +148,12 @@ load-generation. However, for StressorVMs, following configurations apply: Last Level Cache Management --------------------------- -VSPERF support last-level cache management using Intel's RDT tool(s) - the +ViNePerf support last-level cache management using Intel's RDT tool(s) - the relavant ones are `Intel CAT-CMT <https://github.com/intel/intel-cmt-cat>`_ and `Intel RMD <https://github.com/intel/rmd>`_. RMD is a linux daemon that runs on individual hosts, and provides a REST API for control/orchestration layer to request LLC for the VMs/Containers/Applications. RDT receives resource policy -form orchestration layer - in this case, from VSPERF - and enforce it on the host. +form orchestration layer - in this case, from ViNePerf - and enforce it on the host. It achieves this enforcement via kernel interfaces such as resctrlfs and libpqos. The resource here refer to the last-level cache. User can configure policies to define how much of cache a CPU can get. The policy configuration is described below. @@ -170,7 +170,7 @@ Configuration The configuration file for cache management can be found in **conf/08_llcmanagement.conf**. -VSPERF provides following configuration options, for user to define and enforce policies via RMD. +ViNePerf provides following configuration options, for user to define and enforce policies via RMD. * ``LLC_ALLOCATION`` - Enable or Disable LLC management. * ``RMD_PORT`` - RMD port (port number on which API server is listening) @@ -186,15 +186,15 @@ VSPERF provides following configuration options, for user to define and enforce * ``PMD_CA`` - [min-cache-value, max-cache-value] for PMD * ``NOISEVM_CA`` - [min-cache-value, max-cache-value] for Noisy VM -VSPERF Containers ------------------ +ViNePerf Containers +------------------- -VSPERF containers are found in tools/docker folder. +ViNePerf containers are found in tools/docker folder. RESULTS CONTAINER ^^^^^^^^^^^^^^^^^ -The results container includes multiple services - ELK Stack, Barometer-Grafana, OPNFV-TestAPI & Jupyter. +The results container includes multiple services - ELK Stack, Barometer-Grafana, Anuket-TestAPI & Jupyter. Pre-Deployment Configuration ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -205,7 +205,7 @@ Pre-Deployment Configuration 2. You may want to modify the IP address from 0.0.0.0 to appropriate host-ip in ``docker-compose.yml`` -3. Please add dashboards folder from OPNFV-Barometer-Grafana into the grafana folder. It can be found in `Barometer Grafana <https://github.com/opnfv/barometer/tree/master/docker/barometer-grafana` +3. Please add dashboards folder from Anuket-Barometer-Grafana into the grafana folder. It can be found in `Barometer Grafana <https://github.com/opnfv/barometer/tree/master/docker/barometer-grafana` Build ~~~~~ diff --git a/docs/testing/user/configguide/trafficgen.rst b/docs/testing/user/configguide/trafficgen.rst index 3bb09d52..b018d37d 100644 --- a/docs/testing/user/configguide/trafficgen.rst +++ b/docs/testing/user/configguide/trafficgen.rst @@ -5,13 +5,13 @@ .. _trafficgen-installation: =========================== -'vsperf' Traffic Gen Guide +ViNePerf Traffic Gen Guide =========================== Overview -------- -VSPERF supports the following traffic generators: +ViNePerf supports the following traffic generators: * Dummy_ (DEFAULT) * Ixia_ @@ -136,15 +136,15 @@ If you use imix, set the TRAFFICGEN_PKT_SIZES to 0. Dummy ----- -The Dummy traffic generator can be used to test VSPERF installation or -to demonstrate VSPERF functionality at DUT without connection +The Dummy traffic generator can be used to test ViNePerf installation or +to demonstrate ViNePerf functionality at DUT without connection to a real traffic generator. You could also use the Dummy generator in case, that your external -traffic generator is not supported by VSPERF. In such case you could -use VSPERF to setup your test scenario and then transmit the traffic. +traffic generator is not supported by ViNePerf. In such case you could +use ViNePerf to setup your test scenario and then transmit the traffic. After the transmission is completed you could specify values for all -collected metrics and VSPERF will use them to generate final reports. +collected metrics and ViNePerf will use them to generate final reports. Setup ~~~~~ @@ -204,7 +204,7 @@ when the setup is complete. What was the result for 'frames tx'? When your traffic generator has completed traffic transmission and provided -the results please input these at the VSPERF prompt. VSPERF will try +the results please input these at the ViNePerf prompt. ViNePerf will try to verify the input: .. code-block:: console @@ -213,7 +213,7 @@ to verify the input: Please answer with y OR n. -VSPERF will ask you to provide a value for every of collected metrics. The list +ViNePerf will ask you to provide a value for every of collected metrics. The list of metrics can be found at traffic-type-metrics_. Finally vsperf will print out the results for your test and generate the appropriate logs and report files. @@ -223,7 +223,7 @@ appropriate logs and report files. Metrics collected for supported traffic types ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Below you could find a list of metrics collected by VSPERF for each of supported +Below you could find a list of metrics collected by ViNePerf for each of supported traffic types. RFC2544 Throughput and Continuous: @@ -286,9 +286,9 @@ in case, that the Dummy traffic generator is used. Otherwise the option Ixia ---- -VSPERF can use both IxNetwork and IxExplorer TCL servers to control Ixia chassis. +ViNePerf can use both IxNetwork and IxExplorer TCL servers to control Ixia chassis. However, usage of IxNetwork TCL server is a preferred option. The following sections -will describe installation and configuration of IxNetwork components used by VSPERF. +will describe installation and configuration of IxNetwork components used by ViNePerf. Installation ~~~~~~~~~~~~ @@ -309,11 +309,11 @@ installation you should configure it as follows: 3. Hit Ok and start the TCL server application -VSPERF configuration -~~~~~~~~~~~~~~~~~~~~ +ViNePerf configuration +~~~~~~~~~~~~~~~~~~~~~~ There are several configuration options specific to the IxNetwork traffic generator -from IXIA. It is essential to set them correctly, before the VSPERF is executed +from IXIA. It is essential to set them correctly, before the ViNePerf is executed for the first time. Detailed description of options follows: @@ -326,25 +326,25 @@ Detailed description of options follows: * ``TRAFFICGEN_IXIA_HOST`` - IP address of IXIA traffic generator chassis * ``TRAFFICGEN_IXIA_CARD`` - identification of card with dedicated ports at IXIA chassis * ``TRAFFICGEN_IXIA_PORT1`` - identification of the first dedicated port at ``TRAFFICGEN_IXIA_CARD`` - at IXIA chassis; VSPERF uses two separated ports for traffic generation. In case of + at IXIA chassis; ViNePerf uses two separated ports for traffic generation. In case of unidirectional traffic, it is essential to correctly connect 1st IXIA port to the 1st NIC at DUT, i.e. to the first PCI handle from ``WHITELIST_NICS`` list. Otherwise traffic may not be able to pass through the vSwitch. **NOTE**: In case that ``TRAFFICGEN_IXIA_PORT1`` and ``TRAFFICGEN_IXIA_PORT2`` are set to the - same value, then VSPERF will assume, that there is only one port connection between IXIA + same value, then ViNePerf will assume, that there is only one port connection between IXIA and DUT. In this case it must be ensured, that chosen IXIA port is physically connected to the first NIC from ``WHITELIST_NICS`` list. * ``TRAFFICGEN_IXIA_PORT2`` - identification of the second dedicated port at ``TRAFFICGEN_IXIA_CARD`` - at IXIA chassis; VSPERF uses two separated ports for traffic generation. In case of + at IXIA chassis; ViNePerf uses two separated ports for traffic generation. In case of unidirectional traffic, it is essential to correctly connect 2nd IXIA port to the 2nd NIC at DUT, i.e. to the second PCI handle from ``WHITELIST_NICS`` list. Otherwise traffic may not be able to pass through the vSwitch. **NOTE**: In case that ``TRAFFICGEN_IXIA_PORT1`` and ``TRAFFICGEN_IXIA_PORT2`` are set to the - same value, then VSPERF will assume, that there is only one port connection between IXIA + same value, then ViNePerf will assume, that there is only one port connection between IXIA and DUT. In this case it must be ensured, that chosen IXIA port is physically connected to the first NIC from ``WHITELIST_NICS`` list. * ``TRAFFICGEN_IXNET_LIB_PATH`` - path to the DUT specific installation of IxNetwork TCL API - * ``TRAFFICGEN_IXNET_TCL_SCRIPT`` - name of the TCL script, which VSPERF will use for + * ``TRAFFICGEN_IXNET_TCL_SCRIPT`` - name of the TCL script, which ViNePerf will use for communication with IXIA TCL server * ``TRAFFICGEN_IXNET_TESTER_RESULT_DIR`` - folder accessible from IxNetwork TCL server, where test results are stored, e.g. ``c:/ixia_results``; see test-results-share_ @@ -357,11 +357,11 @@ Detailed description of options follows: Test results share ~~~~~~~~~~~~~~~~~~ -VSPERF is not able to retrieve test results via TCL API directly. Instead, all test +ViNePerf is not able to retrieve test results via TCL API directly. Instead, all test results are stored at IxNetwork TCL server. Results are stored at folder defined by ``TRAFFICGEN_IXNET_TESTER_RESULT_DIR`` configuration parameter. Content of this folder must be shared (e.g. via samba protocol) between TCL Server and DUT, where -VSPERF is executed. VSPERF expects, that test results will be available at directory +ViNePerf is executed. ViNePerf expects, that test results will be available at directory configured by ``TRAFFICGEN_IXNET_DUT_RESULT_DIR`` configuration parameter. Example of sharing configuration: @@ -370,7 +370,7 @@ Example of sharing configuration: * Modify sharing options of ``ixia_results`` folder to share it with everybody * Create a new directory at DUT, where shared directory with results will be mounted, e.g. ``/mnt/ixia_results`` - * Update your custom VSPERF configuration file as follows: + * Update your custom ViNePerf configuration file as follows: .. code-block:: python @@ -387,7 +387,7 @@ Example of sharing configuration: yum install cifs-utils - * Mount shared directory, so VSPERF can access test results. + * Mount shared directory, so ViNePerf can access test results. e.g. by adding new record into ``/etc/fstab`` @@ -733,9 +733,9 @@ can be found here: https://github.com/emmericp/MoonGen -* Note: Today, MoonGen with VSPERF only supports 10Gbps line speeds. +* Note: Today, MoonGen with ViNePerf only supports 10Gbps line speeds. -For VSPERF use, MoonGen should be cloned from here (as opposed to the +For ViNePerf use, MoonGen should be cloned from here (as opposed to the previously mentioned GitHub): .. code-block:: console @@ -748,7 +748,7 @@ and use the master branch: git checkout master -VSPERF uses a particular Lua script with the MoonGen project: +ViNePerf uses a particular Lua script with the MoonGen project: trafficgen.lua @@ -757,8 +757,8 @@ Follow MoonGen set up and execution instructions here: https://github.com/atheurer/trafficgen/blob/master/README.md Note one will need to set up ssh login to not use passwords between the server -running MoonGen and the device under test (running the VSPERF test -infrastructure). This is because VSPERF on one server uses 'ssh' to +running MoonGen and the device under test (running the ViNePerf test +infrastructure). This is because ViNePerf on one server uses 'ssh' to configure and run MoonGen upon the other server. One can set up this ssh access by doing the following on both servers: @@ -802,7 +802,7 @@ You can directly download from GitHub: and use the same Trex version for both server and client API. -**NOTE:** The Trex API version used by VSPERF is defined by variable ``TREX_TAG`` +**NOTE:** The Trex API version used by ViNePerf is defined by variable ``TREX_TAG`` in file ``src/package-list.mk``. .. code-block:: console @@ -842,7 +842,7 @@ For additional information about configuration file see official documentation ( https://trex-tgn.cisco.com/trex/doc/trex_manual.html#_creating_minimum_configuration_file After compilation and configuration it is possible to run trex server in stateless mode. -It is neccesary for proper connection between Trex server and VSPERF. +It is neccesary for proper connection between Trex server and ViNePerf. .. code-block:: console @@ -850,7 +850,7 @@ It is neccesary for proper connection between Trex server and VSPERF. ./t-rex-64 -i **NOTE:** Please check your firewall settings at both DUT and T-Rex server. -Firewall must allow a connection from DUT (VSPERF) to the T-Rex server running +Firewall must allow a connection from DUT (ViNePerf) to the T-Rex server running at TCP port 4501. **NOTE:** For high speed cards it may be advantageous to start T-Rex with more transmit queues/cores. @@ -865,8 +865,8 @@ For additional information about Trex stateless mode see Trex stateless document https://trex-tgn.cisco.com/trex/doc/trex_stateless.html **NOTE:** One will need to set up ssh login to not use passwords between the server -running Trex and the device under test (running the VSPERF test -infrastructure). This is because VSPERF on one server uses 'ssh' to +running Trex and the device under test (running the ViNePerf test +infrastructure). This is because ViNePerf on one server uses 'ssh' to configure and run Trex upon the other server. One can set up this ssh access by doing the following on both servers: @@ -912,7 +912,7 @@ place. This can be adjusted with the following configurations: TRAFFICGEN_TREX_LEARNING_MODE=True TRAFFICGEN_TREX_LEARNING_DURATION=5 -Latency measurements have impact on T-Rex performance. Thus vswitchperf uses a separate +Latency measurements have impact on T-Rex performance. Thus ViNePerf uses a separate latency stream for each direction with limited speed. This workaround is used for RFC2544 **Throughput** and **Continuous** traffic types. In case of **Burst** traffic type, the latency statistics are measured for all frames in the burst. Collection of latency @@ -984,7 +984,7 @@ Scapy frame definition It is possible to use a SCAPY frame definition to generate various network protocols by the **T-Rex** traffic generator. In case that particular network protocol layer is disabled by the TRAFFIC dictionary (e.g. TRAFFIC['vlan']['enabled'] = False), -then disabled layer will be removed from the scapy format definition by VSPERF. +then disabled layer will be removed from the scapy format definition by ViNePerf. The scapy frame definition can refer to values defined by the TRAFFIC dictionary by following keywords. These keywords are used in next examples. diff --git a/docs/testing/user/configguide/upgrade.rst b/docs/testing/user/configguide/upgrade.rst index a41683ee..362de82b 100644 --- a/docs/testing/user/configguide/upgrade.rst +++ b/docs/testing/user/configguide/upgrade.rst @@ -3,20 +3,20 @@ .. (c) OPNFV, Intel Corporation, AT&T and others. ===================== -Upgrading vswitchperf +Upgrading ViNePerf ===================== Generic ------- -In case, that VSPERF is cloned from git repository, then it is easy to +In case, that ViNePerf is cloned from git repository, then it is easy to upgrade it to the newest stable version or to the development version. You could get a list of stable releases by ``git`` command. It is necessary to update local git repository first. -**NOTE:** Git commands must be executed from directory, where VSPERF repository -was cloned, e.g. ``vswitchperf``. +**NOTE:** Git commands must be executed from directory, where ViNePerf repository +was cloned, e.g. ``vineperf``. Update of local git repository: @@ -44,7 +44,7 @@ You could select which stable release should be used. For example, select ``danu $ git checkout danube.1.0 -Development version of VSPERF can be selected by: +Development version of ViNePerf can be selected by: .. code:: bash @@ -73,7 +73,7 @@ or In case that ``QemuDpdkVhostCuse`` is found, it must be modified to ``QemuDpdkVhostUser``. -**NOTE:** In case that execution of VSPERF is automated by scripts (e.g. for +**NOTE:** In case that execution of ViNePerf is automated by scripts (e.g. for CI purposes), then these scripts must be checked and updated too. It means, that any occurrence of: @@ -96,10 +96,10 @@ important changes are discussed below. Paths to DPDK, OVS and QEMU =========================== -VSPERF uses external tools for proper testcase execution. Thus it is important +ViNePerf uses external tools for proper testcase execution. Thus it is important to properly configure paths to these tools. In case that tools are installed by installation scripts and are located inside ``./src`` directory inside -VSPERF home, then no changes are needed. On the other hand, if path settings +ViNePerf home, then no changes are needed. On the other hand, if path settings was changed by custom configuration file, then it is required to update configuration accordingly. Please check your configuration files for following configuration options: @@ -135,7 +135,7 @@ and it is required to specify configuration parameter name in the same form as it is defined inside configuration file, i.e. in uppercase. Please refer to the :ref:`overriding-parameters-documentation` for additional details. -**NOTE:** In case that execution of VSPERF is automated by scripts (e.g. for +**NOTE:** In case that execution of ViNePerf is automated by scripts (e.g. for CI purposes), then these scripts must be checked and updated too. It means, that any occurrence of @@ -165,7 +165,7 @@ release and it is now possible to modify all traffic specific options via CLI or by ``TRAFFIC`` dictionary in configuration file. Detailed description is available at :ref:`configuration-of-traffic-dictionary` section of documentation. -Please check your automated scripts for VSPERF execution for following CLI +Please check your automated scripts for ViNePerf execution for following CLI parameters and update them according to the documentation: .. code:: bash diff --git a/docs/testing/user/userguide/index.rst b/docs/testing/user/userguide/index.rst index 2c7a78ff..de38db7e 100644 --- a/docs/testing/user/userguide/index.rst +++ b/docs/testing/user/userguide/index.rst @@ -2,14 +2,14 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, AT&T, Red Hat, Spirent, Ixia and others. -.. OPNFV VSPERF Documentation master file. +.. Anuket ViNePerf Documentation master file. -================= -VSPERF Test Guide -================= +=================== +ViNePerf Test Guide +=================== .. toctree:: - :caption: VSPERF Test Execution + :caption: ViNePerf Test Execution :maxdepth: 2 ./testusage.rst diff --git a/docs/testing/user/userguide/integration.rst b/docs/testing/user/userguide/integration.rst index 9d847fd8..0a7be40a 100644 --- a/docs/testing/user/userguide/integration.rst +++ b/docs/testing/user/userguide/integration.rst @@ -7,7 +7,7 @@ Integration tests ================= -VSPERF includes a set of integration tests defined in conf/integration. +ViNePerf includes a set of integration tests defined in conf/integration. These tests can be run by specifying --integration as a parameter to vsperf. Current tests in conf/integration include switch functionality and Overlay tests. @@ -15,7 +15,7 @@ tests. Tests in the conf/integration can be used to test scaling of different switch configurations by adding steps into the test case. -For the overlay tests VSPERF supports VXLAN, GRE and GENEVE tunneling protocols. +For the overlay tests ViNePerf supports VXLAN, GRE and GENEVE tunneling protocols. Testing of these protocols is limited to unidirectional traffic and P2P (Physical to Physical scenarios). @@ -31,7 +31,7 @@ or GENEVE protocols. In that case options "Tunnel Operation" and Executing Integration Tests --------------------------- -To execute integration tests VSPERF is run with the integration parameter. To +To execute integration tests ViNePerf is run with the integration parameter. To view the current test list simply execute the following command: .. code-block:: console diff --git a/docs/testing/user/userguide/testlist.rst b/docs/testing/user/userguide/testlist.rst index fe8c840a..42786244 100644 --- a/docs/testing/user/userguide/testlist.rst +++ b/docs/testing/user/userguide/testlist.rst @@ -125,9 +125,9 @@ Example of execution of all OVS/DPDK regression tests: Testcases are defined in the file ``conf/integration/01b_dpdk_regression_tests.conf``. This file contains a set of configuration options with prefix ``OVSDPDK_``. These parameters can be used -for customization of regression tests and they will override some of standard VSPERF configuration +for customization of regression tests and they will override some of standard ViNePerf configuration options. It is recommended to check OVSDPDK configuration parameters and modify them in accordance -with VSPERF configuration. +with ViNePerf configuration. At least following parameters should be examined. Their values shall ensure, that DPDK and QEMU threads are pinned to cpu cores of the same NUMA slot, where tested NICs are connected. @@ -229,7 +229,7 @@ Multiqueue Support A set of functional testcases for validation of multiqueue support for both physical and vHost User DPDK ports. Testcases utilize P2P and PVP network deployments and -native support of multiqueue configuration available in VSPERF. +native support of multiqueue configuration available in ViNePerf. ======================================== ====================================================================================== Testcase Name Description @@ -293,7 +293,7 @@ Jumbo Frame Support A set of functional testcases for verification of jumbo frame support in OVS. Testcases utilize P2P and PVP network deployments and native support of jumbo -frames available in VSPERF. +frames available in ViNePerf. ============================================ ================================================================================== Testcase Name Description @@ -392,7 +392,7 @@ Custom Statistics +++++++++++++++++ A set of functional testcases for validation of Custom Statistics support by OVS. -This feature allows Custom Statistics to be accessed by VSPERF. +This feature allows Custom Statistics to be accessed by ViNePerf. These testcases require DPDK v17.11, the latest Open vSwitch(v2.9.90) and the IxNet traffic-generator. diff --git a/docs/testing/user/userguide/teststeps.rst b/docs/testing/user/userguide/teststeps.rst index cb627bc5..63bb33b1 100644 --- a/docs/testing/user/userguide/teststeps.rst +++ b/docs/testing/user/userguide/teststeps.rst @@ -10,10 +10,10 @@ Step driven tests In general, test scenarios are defined by a ``deployment`` used in the particular test case definition. The chosen deployment scenario will take care of the vSwitch configuration, deployment of VNFs and it can also affect configuration of a traffic -generator. In order to allow a more flexible way of testcase scripting, VSPERF supports +generator. In order to allow a more flexible way of testcase scripting, ViNePerf supports a detailed step driven testcase definition. It can be used to configure and program vSwitch, deploy and terminate VNFs, execute a traffic generator, -modify a VSPERF configuration, execute external commands, etc. +modify a ViNePerf configuration, execute external commands, etc. Execution of step driven tests is done on a step by step work flow starting with step 0 as defined inside the test case. Each step of the test increments @@ -121,7 +121,7 @@ parameters. List of supported functions: - * ``start`` - starts a VNF based on VSPERF configuration + * ``start`` - starts a VNF based on ViNePerf configuration * ``stop`` - gracefully terminates given VNF * ``execute command [delay]`` - executes command `cmd` inside VNF; Optional delay defines number of seconds to wait before next step is executed. Method @@ -183,7 +183,10 @@ parameters. .. _step-driven-tests-variable-usage: - * ``settings`` - reads or modifies VSPERF configuration +Step Driven Tests Variable Usage +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + + * ``settings`` - reads or modifies ViNePerf configuration List of supported functions: @@ -202,7 +205,7 @@ parameters. ['settings', 'resetValue', 'WHITELIST_NICS'], - It is possible and more convenient to access any VSPERF configuration option directly + It is possible and more convenient to access any ViNePerf configuration option directly via ``$NAME`` notation. Option evaluation is done during runtime and vsperf will automatically translate it to the appropriate call of ``settings.getValue``. If the referred parameter does not exist, then vsperf will keep ``$NAME`` diff --git a/docs/testing/user/userguide/testusage.rst b/docs/testing/user/userguide/testusage.rst index 3dd41846..a16fd326 100644 --- a/docs/testing/user/userguide/testusage.rst +++ b/docs/testing/user/userguide/testusage.rst @@ -2,14 +2,14 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, Spirent, AT&T and others. -vSwitchPerf test suites userguide +ViNePerf test suites userguide --------------------------------- General ^^^^^^^ -VSPERF requires a traffic generators to run tests, automated traffic gen -support in VSPERF includes: +ViNePerf requires a traffic generators to run tests, automated traffic gen +support in ViNePerf includes: - IXIA traffic generator (IxNetwork hardware) and a machine that runs the IXIA client software. @@ -26,8 +26,8 @@ support in VSPERF includes: If you want to use another traffic generator, please select the :ref:`trafficgen-dummy` generator. -VSPERF Installation -^^^^^^^^^^^^^^^^^^^ +ViNePerf Installation +^^^^^^^^^^^^^^^^^^^^^ To see the supported Operating Systems, vSwitches and system requirements, please follow the `installation instructions <vsperf-installation>`. @@ -41,10 +41,10 @@ install and configure a suitable traffic generator. Cloning and building src dependencies ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -In order to run VSPERF, you will need to download DPDK and OVS. You can +In order to run ViNePerf, you will need to download DPDK and OVS. You can do this manually and build them in a preferred location, OR you could -use vswitchperf/src. The vswitchperf/src directory contains makefiles -that will allow you to clone and build the libraries that VSPERF depends +use vineperf/src. The vineperf/src directory contains makefiles +that will allow you to clone and build the libraries that ViNePerf depends on, such as DPDK and OVS. To clone and build simply: .. code-block:: console @@ -52,7 +52,7 @@ on, such as DPDK and OVS. To clone and build simply: $ cd src $ make -VSPERF can be used with stock OVS (without DPDK support). When build +ViNePerf can be used with stock OVS (without DPDK support). When build is finished, the libraries are stored in src_vanilla directory. The 'make' builds all options in src: @@ -61,7 +61,7 @@ The 'make' builds all options in src: * OVS with vhost_user as the guest access method (with DPDK support) The vhost_user build will reside in src/ovs/ -The Vanilla OVS build will reside in vswitchperf/src_vanilla +The Vanilla OVS build will reside in vineperf/src_vanilla To delete a src subdirectory and its contents to allow you to re-clone simply use: @@ -193,7 +193,7 @@ Referencing parameter values It is possible to use a special macro ``#PARAM()`` to refer to the value of another configuration parameter. This reference is evaluated during access of the parameter value (by ``settings.getValue()`` call), so it -can refer to parameters created during VSPERF runtime, e.g. NICS dictionary. +can refer to parameters created during ViNePerf runtime, e.g. NICS dictionary. It can be used to reflect DUT HW details in the testcase definition. Example: @@ -216,7 +216,7 @@ Example: vloop_vnf ^^^^^^^^^ -VSPERF uses a VM image called vloop_vnf for looping traffic in the deployment +ViNePerf uses a VM image called vloop_vnf for looping traffic in the deployment scenarios involving VMs. The image can be downloaded from `<http://artifacts.opnfv.org/>`__. @@ -230,7 +230,7 @@ l2fwd Kernel Module A Kernel Module that provides OSI Layer 2 Ipv4 termination or forwarding with support for Destination Network Address Translation (DNAT) for both the MAC and -IP addresses. l2fwd can be found in <vswitchperf_dir>/src/l2fwd +IP addresses. l2fwd can be found in <vineperf_dir>/src/l2fwd Additional Tools Setup ^^^^^^^^^^^^^^^^^^^^^^ @@ -241,8 +241,8 @@ install and configure additional tools such as collectors and loadgens. Executing tests ^^^^^^^^^^^^^^^ -All examples inside these docs assume, that user is inside the VSPERF -directory. VSPERF can be executed from any directory. +All examples inside these docs assume, that user is inside the ViNePerf +directory. ViNePerf can be executed from any directory. Before running any tests make sure you have root permissions by adding the following line to /etc/sudoers: @@ -525,15 +525,15 @@ of NIC PCI slot definition: Where 'vf' is an indication of virtual function usage and following number defines a VF to be used. In case that VF usage is detected, -then vswitchperf will enable SRIOV support for given card and it will +then vineperf will enable SRIOV support for given card and it will detect PCI slot numbers of selected VFs. So in example above, one VF will be configured for NIC '0000:05:00.0' -and four VFs will be configured for NIC '0000:05:00.1'. Vswitchperf +and four VFs will be configured for NIC '0000:05:00.1'. ViNePerf will detect PCI addresses of selected VFs and it will use them during test execution. -At the end of vswitchperf execution, SRIOV support will be disabled. +At the end of vineperf execution, SRIOV support will be disabled. SRIOV support is generic and it can be used in different testing scenarios. For example: @@ -668,7 +668,7 @@ information on these drivers. Guest Core and Thread Binding ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -VSPERF provides options to achieve better performance by guest core binding and +ViNePerf provides options to achieve better performance by guest core binding and guest vCPU thread binding as well. Core binding is to bind all the qemu threads. Thread binding is to bind the house keeping threads to some CPU and vCPU thread to some other CPU, this helps to reduce the noise from qemu house keeping threads. @@ -787,7 +787,7 @@ assigned at least (nb_cores +1) total cores with the cpu mask. Jumbo Frame Testing ^^^^^^^^^^^^^^^^^^^ -VSPERF provides options to support jumbo frame testing with a jumbo frame supported +ViNePerf provides options to support jumbo frame testing with a jumbo frame supported NIC and traffic generator for the following vswitches: 1. OVSVanilla @@ -820,7 +820,7 @@ its mtu size changed manually using ifconfig or applicable tools: documents as it differs from distribution to distribution. To start a test for jumbo frames modify the conf file packet sizes or pass the option -through the VSPERF command line. +through the ViNePerf command line. .. code-block:: python @@ -945,10 +945,10 @@ Execution of TestPMD can be run with the following command line **NOTE:** To achieve the best 0% loss numbers with rfc2544 throughput testing, other tunings should be applied to host and guest such as tuned profiles and CPU tunings to prevent possible interrupts to worker threads. -VSPERF modes of operation -^^^^^^^^^^^^^^^^^^^^^^^^^ +ViNePerf modes of operation +^^^^^^^^^^^^^^^^^^^^^^^^^^^ -VSPERF can be run in different modes. By default it will configure vSwitch, +ViNePerf can be run in different modes. By default it will configure vSwitch, traffic generator and VNF. However it can be used just for configuration and execution of traffic generator. Another option is execution of all components except traffic generator itself. @@ -964,14 +964,14 @@ Mode of operation is driven by configuration parameter -m or --mode "trafficgen-off" - execute vSwitch and VNF "trafficgen-pause" - execute vSwitch and VNF but wait before traffic transmission -In case, that VSPERF is executed in "trafficgen" mode, then configuration +In case, that ViNePerf is executed in "trafficgen" mode, then configuration of traffic generator can be modified through ``TRAFFIC`` dictionary passed to the ``--test-params`` option. It is not needed to specify all values of ``TRAFFIC`` dictionary. It is sufficient to specify only values, which should be changed. Detailed description of ``TRAFFIC`` dictionary can be found at :ref:`configuration-of-traffic-dictionary`. -Example of execution of VSPERF in "trafficgen" mode: +Example of execution of ViNePerf in "trafficgen" mode: .. code-block:: console @@ -1014,7 +1014,7 @@ Example output: Code change verification by pylint ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Every developer participating in VSPERF project should run +Every developer participating in ViNePerf project should run pylint before his python code is submitted for review. Project specific configuration for pylint is available at 'pylint.rc'. diff --git a/docs/testing/user/userguide/trafficcapture.rst b/docs/testing/user/userguide/trafficcapture.rst index 8a224dcb..bc32f2ab 100644 --- a/docs/testing/user/userguide/trafficcapture.rst +++ b/docs/testing/user/userguide/trafficcapture.rst @@ -6,7 +6,7 @@ many of the functional tests. It allows the verification of functionality for both the vSwitch and the NICs using hardware acceleration for packet manipulation and modification. -There are three different methods of traffic capture supported by VSPERF. +There are three different methods of traffic capture supported by ViNePerf. Detailed descriptions of these methods as well as their pros and cons can be found in the following chapters. @@ -166,7 +166,7 @@ An example of Traffic Capture for testing NICs with HW offloading test: # The removal of VLAN headers is verified by inspection of captured frames. # # NOTE: This setup expects a DUT with two NICs with two ports each. First NIC is - # connected to the traffic generator (standard VSPERF setup). Ports of a second NIC + # connected to the traffic generator (standard ViNePerf setup). Ports of a second NIC # are interconnected by a patch cable. PCI addresses of all four ports have to be # properly configured in the WHITELIST_NICS parameter. { @@ -215,9 +215,9 @@ Traffic Capture on the Traffic Generator ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Using the functionality of the Traffic generator makes it possible to configure -Traffic Capture on both it's ports. With Traffic Capture enabled, VSPERF +Traffic Capture on both it's ports. With Traffic Capture enabled, ViNePerf instructs the Traffic Generator to automatically export captured data into -a pcap file. The captured packets are then sent to VSPERF for analysis and +a pcap file. The captured packets are then sent to ViNePerf for analysis and verification, monitoring any changes done by both vSwitch and the NICs. Vsperf currently only supports this functionality with the **T-Rex** generator. diff --git a/docs/testing/user/userguide/yardstick.rst b/docs/testing/user/userguide/yardstick.rst index b5e5c72d..35dfd1c9 100644 --- a/docs/testing/user/userguide/yardstick.rst +++ b/docs/testing/user/userguide/yardstick.rst @@ -2,7 +2,7 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Intel Corporation, AT&T and others. -Execution of vswitchperf testcases by Yardstick +Execution of ViNePerf testcases by Yardstick ----------------------------------------------- General @@ -10,12 +10,12 @@ General Yardstick is a generic framework for a test execution, which is used for validation of installation of OPNFV platform. In the future, Yardstick will -support two options of vswitchperf testcase execution: +support two options of ViNePerf testcase execution: -- plugin mode, which will execute native vswitchperf testcases; Tests will +- plugin mode, which will execute native ViNePerf testcases; Tests will be executed natively by vsperf, and test results will be processed and reported by yardstick. -- traffic generator mode, which will run vswitchperf in **trafficgen** +- traffic generator mode, which will run ViNePerf in **trafficgen** mode only; Yardstick framework will be used to launch VNFs and to configure flows to ensure, that traffic is properly routed. This mode will allow to test OVS performance in real world scenarios. @@ -32,19 +32,19 @@ to install the yardstick. Please note, that yardstick uses OpenStack for execution of testcases. OpenStack must be installed with Heat and Neutron services. Otherwise -vswitchperf testcases cannot be executed. +ViNePerf testcases cannot be executed. -VM image with vswitchperf +VM image with ViNePerf ^^^^^^^^^^^^^^^^^^^^^^^^^ -A special VM image is required for execution of vswitchperf specific testcases +A special VM image is required for execution of ViNePerf specific testcases by yardstick. It is possible to use a sample VM image available at OPNFV artifactory or to build customized image. -Sample VM image with vswitchperf +Sample VM image with ViNePerf ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Sample VM image is available at vswitchperf section of OPNFV artifactory +Sample VM image is available at ViNePerf section of OPNFV artifactory for free download: .. code-block:: console @@ -58,18 +58,18 @@ generator. This software is not included in the sample image and must be installed by user. **NOTE:** This image will be updated only in case, that new features related -to yardstick integration will be added to the vswitchperf. +to yardstick integration will be added to the ViNePerf. Preparation of custom VM image ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In general, any Linux distribution supported by vswitchperf can be used as -a base image for vswitchperf. One of the possibilities is to modify vloop-vnf +In general, any Linux distribution supported by ViNePerf can be used as +a base image for ViNePerf. One of the possibilities is to modify vloop-vnf image, which can be downloaded from `<http://artifacts.opnfv.org/vswitchperf.html/>`__ (see :ref:`vloop-vnf`). Please follow the :ref:`vsperf-installation` to -install vswitchperf inside vloop-vnf image. As vswitchperf will be run in +install ViNePerf inside vloop-vnf image. As ViNePerf will be run in trafficgen mode, it is possible to skip installation and compilation of OVS, QEMU and DPDK to keep image size smaller. @@ -80,8 +80,8 @@ of IXIA, you would need to install IxOS and IxNetowrk TCL API. VM image usage ~~~~~~~~~~~~~~ -Image with vswitchperf must be uploaded into the glance service and -vswitchperf specific flavor configured, e.g.: +Image with ViNePerf must be uploaded into the glance service and +ViNePerf specific flavor configured, e.g.: .. code-block:: console @@ -110,14 +110,14 @@ Next step is configuration of OpenStack environment, e.g. in case of devstack: source /opt/openstack/devstack/openrc export EXTERNAL_NETWORK=public -Vswitchperf testcases executable by yardstick are located at vswitchperf +ViNePerf testcases executable by yardstick are located at ViNePerf repository inside ``yardstick/tests`` directory. Example of their download and execution follows: .. code-block:: console - git clone https://gerrit.opnfv.org/gerrit/vswitchperf - cd vswitchperf + git clone https://gerrit.opnfv.org/gerrit/vineperf + cd vineperf yardstick -d task start yardstick/tests/rfc2544_throughput_dummy.yaml @@ -126,10 +126,10 @@ and execution follows: Testcase customization ^^^^^^^^^^^^^^^^^^^^^^ -Yardstick testcases are described by YAML files. vswitchperf specific testcases -are part of the vswitchperf repository and their yaml files can be found at +Yardstick testcases are described by YAML files. ViNePerf specific testcases +are part of the ViNePerf repository and their yaml files can be found at ``yardstick/tests`` directory. For detailed description of yaml file structure, -please see yardstick documentation and testcase samples. Only vswitchperf specific +please see yardstick documentation and testcase samples. Only ViNePerf specific parts will be discussed here. Example of yaml file: @@ -170,14 +170,14 @@ Example of yaml file: Section option ~~~~~~~~~~~~~~ -Section **option** defines details of vswitchperf test scenario. Lot of options -are identical to the vswitchperf parameters passed through ``--test-params`` +Section **option** defines details of ViNePerf test scenario. Lot of options +are identical to the ViNePerf parameters passed through ``--test-params`` argument. Following options are supported: - **frame_size** - a packet size for which test should be executed; Multiple packet sizes can be tested by modification of Sequence runner section inside YAML definition. Default: '64' -- **conf_file** - sets path to the vswitchperf configuration file, which will be +- **conf_file** - sets path to the ViNePerf configuration file, which will be uploaded to VM; Default: '~/vsperf-yardstick.conf' - **setup_script** - sets path to the setup script, which will be executed during setup and teardown phases @@ -192,7 +192,7 @@ argument. Following options are supported: Parameters should be stated in the form of ``param=value`` and separated by a semicolon. Configuration of traffic generator is driven by ``TRAFFIC`` dictionary, which can be also updated by values defined by ``test_params``. - Please check VSPERF documentation for details about available configuration + Please check ViNePerf documentation for details about available configuration parameters and their data types. In case that both **test_params** and **conf_file** are specified, then values from **test_params** will override values defined @@ -216,7 +216,7 @@ Section runner Yardstick supports several `runner types <http://artifacts.opnfv.org/yardstick/docs/userguide/architecture.html#runner-types>`__. -In case of vswitchperf specific TCs, **Sequence** runner type can be used to +In case of ViNePerf specific TCs, **Sequence** runner type can be used to execute the testcase for given list of frame sizes. @@ -226,7 +226,7 @@ Section sla In case that sla section is not defined, then testcase will be always considered as successful. On the other hand, it is possible to define a set of test metrics and their minimal values to evaluate test success. Any numeric -value, reported by vswitchperf inside CSV result file, can be used. +value, reported by ViNePerf inside CSV result file, can be used. Multiple metrics can be defined as a coma separated list of items. Minimal value must be set separately for each metric. diff --git a/docs/xtesting/index.rst b/docs/xtesting/index.rst index 9259a12a..20a291a1 100644 --- a/docs/xtesting/index.rst +++ b/docs/xtesting/index.rst @@ -2,21 +2,21 @@ .. http://creativecommons.org/licenses/by/4.0 .. (c) OPNFV, Spirent, AT&T, Ixia and others. -.. OPNFV VSPERF Documentation master file. +.. Anuket ViNePerf Documentation master file. -******************************** -OPNFV VSPERF with OPNFV Xtesting -******************************** +*********************************** +Anuket ViNePerf with OPNFV Xtesting +*********************************** ============ Introduction ============ -User can use VSPERF with Xtesting for two different usecases. +User can use ViNePerf with Xtesting for two different usecases. 1. Baremetal Dataplane Testing/Benchmarking. 2. Openstack Dataplane Testing/Benchmarking. -The Baremetal usecase is the legacy usecase of OPNFV VSPERF. +The Baremetal usecase is the legacy usecase of Anuket ViNePerf. The below figure summarizes both the usecases. @@ -52,15 +52,15 @@ These commands are described in OPNFV Xtesting Documentation. Please refere to O Accessing the Results? ====================== -VSPERF automatically publishes the results to any OPNFV Testapi deployment. -User has to configure following two parameters in VSPERF. +ViNePerf automatically publishes the results to any Anuket Testapi deployment. +User has to configure following two parameters in ViNePerf. 1. OPNFVPOD - The name of the pod. 2. OPNFV_URL - The endpoint serving testapi. As Xtesting runs its own testapi, user should point to this (testapi endpoint of Xtesting) using the above two configuration. -The above two configurations should be done wherever VSPERF is running (refer to the figure above) +The above two configurations should be done wherever ViNePerf is running (refer to the figure above) NOTE: Before running the test, it would help if user can prepre the testapi of Xtesting (if needed). The preparation include setting up the following: |