diff options
Diffstat (limited to 'docs/configguide')
-rwxr-xr-x | docs/configguide/installation.rst | 71 | ||||
-rw-r--r-- | docs/configguide/trafficgen.rst | 114 |
2 files changed, 183 insertions, 2 deletions
diff --git a/docs/configguide/installation.rst b/docs/configguide/installation.rst index 354979b0..5072dee0 100755 --- a/docs/configguide/installation.rst +++ b/docs/configguide/installation.rst @@ -104,6 +104,29 @@ Fedora, RedHat and Ubuntu $ cd $HOME/vsperfenv $ source bin/activate +Gotcha +^^^^^^ +.. code:: bash + $ source bin/activate + Badly placed ()'s. + +Check what type of shell you are using + +.. code:: bash + echo $shell + /bin/tcsh + +See what scripts are available in $HOME/vsperfenv/bin + +.. code:: bash + $ ls bin/ + activate activate.csh activate.fish activate_this.py + +source the appropriate script + +.. code:: bash + $ source bin/activate.csh + Working Behind a Proxy ====================== @@ -119,3 +142,51 @@ running any of the above. For example: .. _virtualenv: https://virtualenv.readthedocs.org/en/latest/ .. _vloop-vnf-ubuntu-14.04_20160303: http://artifacts.opnfv.org/vswitchperf/vnf/vloop-vnf-ubuntu-14.04_20160303.qcow2 .. _vloop-vnf-ubuntu-14.04_20151216: http://artifacts.opnfv.org/vswitchperf/vnf/vloop-vnf-ubuntu-14.04_20151216.qcow2 + +Hugepage Configuration +---------------------- + +Systems running vsperf with either dpdk and/or tests with guests must configure +hugepage amounts to support running these configurations. It is recommended +to configure 1GB hugepages as the pagesize. + +The amount of hugepages needed depends on your configuration files in vsperf. +Each guest image requires 4096 by default according to the default settings in +the ``04_vnf.conf`` file. + +.. code:: bash + + GUEST_MEMORY = ['4096', '4096'] + +The dpdk startup parameters also require an amount of hugepages depending on +your configuration in the ``02_vswitch.conf`` file. + +.. code:: bash + + VSWITCHD_DPDK_ARGS = ['-c', '0x4', '-n', '4', '--socket-mem 1024,1024'] + VSWITCHD_DPDK_CONFIG = { + 'dpdk-init' : 'true', + 'dpdk-lcore-mask' : '0x4', + 'dpdk-socket-mem' : '1024,1024', + } + +Note: Option VSWITCHD_DPDK_ARGS is used for vswitchd, which supports --dpdk +parameter. In recent vswitchd versions, option VSWITCHD_DPDK_CONFIG will be +used to configure vswitchd via ovs-vsctl calls. + +With the --socket-mem argument set to use 1 hugepage on the specified sockets as +seen above, the configuration will need 9 hugepages total to run all tests +within vsperf if the pagesize is set correctly to 1GB. + +Depending on your OS selection configuration of hugepages may vary. Please refer +to your OS documentation to set hugepages correctly. It is recommended to set +the required amount of hugepages to be allocated by default on reboots. + +Information on hugepage requirements for dpdk can be found at +http://dpdk.org/doc/guides/linux_gsg/sys_reqs.html + +You can review your hugepage amounts by executing the following command + +.. code:: bash + + cat /proc/meminfo | grep Huge diff --git a/docs/configguide/trafficgen.rst b/docs/configguide/trafficgen.rst index 6e7626d8..63560b9c 100644 --- a/docs/configguide/trafficgen.rst +++ b/docs/configguide/trafficgen.rst @@ -14,6 +14,8 @@ VSPERF supports the following traffic generators: traffic generator. * IXIA (IxNet and IxOS) * Spirent TestCenter + * Xena Networks + * MoonGen To see the list of traffic gens from the cli: @@ -67,7 +69,7 @@ OR from the commandline: .. code-block:: console - $ ./vsperf --test-param "pkt_sizes=x,y" $TESTNAME + $ ./vsperf --test-params "pkt_sizes=x,y" $TESTNAME You can also modify the traffic transmission duration and the number of trials run by the traffic generator by extending the example @@ -75,7 +77,7 @@ commandline above to: .. code-block:: console - $ ./vsperf --test-param "pkt_sizes=x,y;duration=10;rfc2455_trials=3" $TESTNAME + $ ./vsperf --test-params "pkt_sizes=x,y;duration=10;rfc2455_trials=3" $TESTNAME Dummy Setup ------------ @@ -222,3 +224,111 @@ best practice results in deploying STCv, the following is suggested: To get the highest performance and accuracy, Spirent TestCenter hardware is recommended. vsperf can run with either stype test ports. + +Using STC REST Client +~~~~~~~~~~~~~~~~~~~~~ +The stcrestclient package provides the stchttp.py ReST API wrapper module. +This allows simple function calls, nearly identical to those provided by +StcPython.py, to be used to access TestCenter server sessions via the +STC ReST API. Basic ReST functionality is provided by the resthttp module, +and may be used for writing ReST clients independent of STC. + +- Project page: <https://github.com/Spirent/py-stcrestclient> +- Package download: <http://pypi.python.org/pypi/stcrestclient> + +To use REST interface, follow the instructions in the Project page to +install the package. Once installed, the scripts named with 'rest' keyword +can be used. For example: testcenter-rfc2544-rest.py can be used to run +RFC 2544 tests using the REST interface. + +Xena Networks +------------- + +Installation +~~~~~~~~~~~~ + +Xena Networks traffic generator requires certain files and packages to be +installed. It is assumed the user has access to the Xena2544.exe file which +must be placed in VSPerf installation location under the tools/pkt_gen/xena +folder. Contact Xena Networks for the latest version of this file. The user +can also visit www.xenanetworks/downloads to obtain the file with a valid +support contract. + +**Note** VSPerf has been fully tested with version v2.43 of Xena2544.exe + +To execute the Xena2544.exe file under Linux distributions the mono-complete +package must be installed. To install this package follow the instructions +below. Further information can be obtained from +http://www.mono-project.com/docs/getting-started/install/linux/ + +.. code-block:: console + + rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF" + yum-config-manager --add-repo http://download.mono-project.com/repo/centos/ + yum -y install mono-complete + +To prevent gpg errors on future yum installation of packages the mono-project +repo should be disabled once installed. + +.. code-block:: console + + yum-config-manager --disable download.mono-project.com_repo_centos_ + +Configuration +~~~~~~~~~~~~~ + +Connection information for your Xena Chassis must be supplied inside the +``10_custom.conf`` or ``03_custom.conf`` file. The following parameters must be +set to allow for proper connections to the chassis. + +.. code-block:: console + + TRAFFICGEN_XENA_IP = '' + TRAFFICGEN_XENA_PORT1 = '' + TRAFFICGEN_XENA_PORT2 = '' + TRAFFICGEN_XENA_USER = '' + TRAFFICGEN_XENA_PASSWORD = '' + TRAFFICGEN_XENA_MODULE1 = '' + TRAFFICGEN_XENA_MODULE2 = '' + + +MoonGen +------- + +Installation +~~~~~~~~~~~~ + +MoonGen architecture overview and general installation instructions +can be found here: + +https://github.com/emmericp/MoonGen + +For VSPerf use, MoonGen should be cloned from here (as opposed to the afore +mentioned GitHub): + +git clone https://github.com/atheurer/MoonGen + +and use the opnfv-stable branch: + +git checkout opnfv-stable + +VSPerf uses a particular example script under the examples directory within +the MoonGen project: + +MoonGen/examples/opnfv-vsperf.lua + +Follow MoonGen set up instructions here: + +https://github.com/atheurer/MoonGen/blob/opnfv-stable/MoonGenSetUp.html + +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 +configure and run MoonGen upon the other server. + +One can set up this ssh access by doing the following on both servers: + +.. code-block:: console + + ssh-keygen -b 2048 -t rsa + ssh-copy-id <other server> |