X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=docs%2Freport%2Fvpp_performance_tests%2Foverview.rst;h=ccf8063ec2379ea2ea49cde66f8d039ebe827d15;hb=refs%2Fchanges%2F19%2F6819%2F5;hp=96a9377511092511a10c99e443012f9f2d0dd713;hpb=36595cd3fcea206f6f9024cde0645d6f605a09c6;p=csit.git diff --git a/docs/report/vpp_performance_tests/overview.rst b/docs/report/vpp_performance_tests/overview.rst index 96a9377511..ccf8063ec2 100644 --- a/docs/report/vpp_performance_tests/overview.rst +++ b/docs/report/vpp_performance_tests/overview.rst @@ -194,7 +194,7 @@ Performance Tests Naming ------------------------ CSIT |release| follows a common structured naming convention for all -performance and system functional tests, introduced in CSIT rls1701. +performance and system functional tests, introduced in CSIT |release-1|. The naming should be intuitive for majority of the tests. Complete description of CSIT test naming convention is provided on `CSIT test naming wiki @@ -238,11 +238,6 @@ suites: switching to/from four vhost interfaces and two VMs, NDR throughput discovery. -Methodology: TRex Traffic Generator Usage ------------------------------------------ - -TODO Description to be added. - Methodology: Multi-Thread and Multi-Core ---------------------------------------- @@ -318,8 +313,8 @@ Methodology: KVM VM vhost ------------------------- CSIT |release| introduced environment configuration changes to KVM Qemu vhost- -user tests in order to more representatively measure VPP-17.04 performance in -configurations with vhost-user interfaces and VMs. +user tests in order to more representatively measure |vpp-release| performance +in configurations with vhost-user interfaces and VMs. Current setup of CSIT FD.io performance lab is using tuned settings for more optimal performance of KVM Qemu: @@ -338,5 +333,58 @@ guest dealing with data plan. Methodology: IPSec with Intel QAT HW cards ------------------------------------------ -TODO Description to be added. -Intel QAT 8950 50G (Walnut Hill) \ No newline at end of file +VPP IPSec performance tests are using DPDK cryptodev device driver in +combination with HW cryptodev devices - Intel QAT 8950 50G - present in +LF FD.io physical testbeds. DPDK cryptodev can be used for all IPSec +data plane functions supported by VPP. + +Currently CSIT |release| implements following IPSec test cases: + +- AES-GCM, CBC-SHA1 ciphers, in combination with IPv4 routed-forwarding + with Intel xl710 NIC. +- CBC-SHA1 ciphers, in combination with LISP-GPE overlay tunneling for + IPv4-over-IPv4 with Intel xl710 NIC. + +Methodology: TRex Traffic Generator Usage +----------------------------------------- + +The `TRex traffic generator `_ is used for all +CSIT performance tests. TRex stateless mode is used to measure NDR and PDR +throughputs using binary search (NDR and PDR discovery tests) and for quick +checks of DUT performance against the reference NDRs (NDR check tests) for +specific configuration. + +TRex is installed and run on the TG compute node. The typical procedure is: + + - If the TRex is not already installed on TG, it is installed in the + suite setup phase - see `TRex intallation`_. + - TRex configuration is set in its configuration file + :: + + /etc/trex_cfg.yaml + + - TRex is started in the background mode + :: + + sh -c 'cd /opt/trex-core-2.25/scripts/ && sudo nohup ./t-rex-64 -i -c 7 --iom 0 > /dev/null 2>&1 &' > /dev/null + + - There are traffic streams dynamically prepared for each test. The traffic + is sent and the statistics obtained using trex_stl_lib.api.STLClient. + +**Measuring packet loss** + + - Create an instance of STLClient + - Connect to the client + - Add all streams + - Clear statistics + - Send the traffic for defined time + - Get the statistics + +If there is a warm-up phase required, the traffic is sent also before test and +the statistics are ignored. + +**Measuring latency** + +If measurement of latency is requested, two more packet streams are created (one +for each direction) with TRex flow_stats parameter set to STLFlowLatencyStats. In +that case, returned statistics will also include min/avg/max latency values.