X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=docs%2Freport%2Fvpp_performance_tests%2Fpacket_throughput_graphs%2Fipsec.rst;h=31420b6845df01182fb33b09c71c75dba64ceda5;hb=e0806c8358f38406432d1c6f09de7b90fadb8646;hp=6f56cae13494b05b37e9fa528d4dfe9ee53dd67d;hpb=55c99e66ca90a80f50e897b5b1c8db6063bb2448;p=csit.git
diff --git a/docs/report/vpp_performance_tests/packet_throughput_graphs/ipsec.rst b/docs/report/vpp_performance_tests/packet_throughput_graphs/ipsec.rst
index 6f56cae134..31420b6845 100644
--- a/docs/report/vpp_performance_tests/packet_throughput_graphs/ipsec.rst
+++ b/docs/report/vpp_performance_tests/packet_throughput_graphs/ipsec.rst
@@ -1,139 +1,377 @@
-Crypto in hardware: IP4FWD, IP6FWD
-==================================
-Following sections provide a summary of VPP Phy-to-Phy IPSEC HW
-performance illustrating NDR throughput (zero packet loss) and PDR throughput
-(<0.5% packet loss). Performance is reported for VPP running in multiple
-configurations of VPP worker thread(s), a.k.a. VPP data plane thread (s), and
-their physical CPU core(s) placement.
+.. raw:: latex
-*Title of each graph* is a regex (regular expression) matching all plotted
-throughput test cases, *X-axis labels* are indeces of csit-vpp-perf-1704 jobs
-that created result output files used as data sources for the graph,
-*Y-axis labels* are measured Packets Per Second [pps] values, and the *graph
-legend* identifes the plotted test suites.
+ \clearpage
-.. note::
+.. raw:: html
+
+
+
+IPSec IPv4 Routing
+==================
+
+Following sections include summary graphs of VPP Phy-to-Phy performance with
+IPSec encryption used in combination with IPv4 routed-forwarding,
+including NDR throughput (zero packet loss) and PDR throughput (<0.5%
+packet loss). VPP IPSec encryption is accelerated using DPDK cryptodev
+library driving Intel Quick Assist (QAT) crypto PCIe hardware cards.
+Performance is reported for VPP running in multiple configurations of
+VPP worker thread(s), a.k.a. VPP data plane thread(s), and their
+physical CPU core(s) placement.
+
+CSIT source code for the test cases used for plots can be found in
+`CSIT git repository `_.
+
+.. raw:: latex
+
+ \clearpage
+
+3n-hsw-xl710
+~~~~~~~~~~~~
+
+64b-1t1c-base
+-------------
+
+.. raw:: html
+
+
+
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-1t1c-base-ndr`
+
+.. raw:: html
+
+
+
+
+
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-1t1c-base-ndr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-1t1c-base-ndr}
+ \end{figure}
+
+.. raw:: html
+
+
+
+.. raw:: latex
+
+ \clearpage
+
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-1t1c-base-pdr`
+
+.. raw:: html
+
+
+
+
+
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-1t1c-base-pdr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-1t1c-base-pdr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-base
+-------------
+
+.. raw:: html
+
+
+
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-2t2c-base-ndr`
+
+.. raw:: html
+
+
+
+
+
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-2t2c-base-ndr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-2t2c-base-ndr}
+ \end{figure}
+
+.. raw:: html
+
+
+
+.. raw:: latex
+
+ \clearpage
+
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-2t2c-base-pdr`
+
+.. raw:: html
+
+
+
+
+
- Data sources for reported test results: i) FD.io test executor jobs
- `csit-vpp-perf-1704-all
- `_ ,
- ii) archived FD.io jobs test result `output files
- <../../_static/archive/>`_.
+.. raw:: latex
-NDR Throughput
-~~~~~~~~~~~~~~
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-2t2c-base-pdr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-2t2c-base-pdr}
+ \end{figure}
-VPP NDR Throughput - running in configuration of **one worker thread (1t) on
-one physical core (1c)** - is presented in the figure below.
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-scale
+--------------
.. raw:: html
-
+
+
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-1t1c-scale-ndr`
+
+.. raw:: html
+
+
+
+
+
+
+.. raw:: latex
-*Figure 1. VPP 1thread 1core - NDR Throughput for Phy-to-Phy IPSEC HW.*
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-1t1c-scale-ndr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-1t1c-scale-ndr}
+ \end{figure}
-CSIT test cases used to generate results presented above can be found in CSIT
-git repository by filtering with specified regex as follows:
+.. raw:: html
-.. code-block:: bash
+
- $ csit/tests/perf
- $ grep -E "64B-1t1c-.*ipsec*" *
+.. raw:: latex
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-ndrdisc
- 40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrdisc
+ \clearpage
-VPP NDR Throughput - running in configuration of **two worker threads (2t) on
-two physical cores (2c)** - is presented in the figure below.
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-1t1c-scale-pdr`
.. raw:: html
-
+
+
+
+
+
+.. raw:: latex
-*Figure 2. VPP 2threads 2cores - NDR Throughput for Phy-to-Phy IPSEC HW.*
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-1t1c-scale-pdr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-1t1c-scale-pdr}
+ \end{figure}
-CSIT test cases used to generate results presented above can be found in CSIT
-git repository by filtering with specified regex as follows:
+.. raw:: latex
-.. code-block:: bash
+ \clearpage
- $ csit/tests/perf
- $ grep -E "64B-2t2c-.*ipsec*" *
+64b-2t2c-scale
+--------------
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-ndrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-ndrdisc
- 40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrdisc
+.. raw:: html
-PDR Throughput
-~~~~~~~~~~~~~~
+
-VPP PDR Throughput - running in configuration of **one worker thread (1t) on one
-physical core (1c)** - is presented in the figure below. PDR at below 0.5%
-packet loss ratio.
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-2t2c-scale-ndr`
.. raw:: html
-
+
+
+
+
-*Figure 3. VPP 1thread 1core - PDR Throughput for Phy-to-Phy IPSEC HW.*
+.. raw:: latex
-CSIT test cases used to generate results presented above can be found in CSIT
-git repository by filtering with specified regex as follows:
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-2t2c-scale-ndr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-2t2c-scale-ndr}
+ \end{figure}
-.. code-block:: bash
+.. raw:: html
- $ csit/tests/perf
- $ grep -E "64B-1t1c-.*ipsec*" *
+
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-pdrdisc
- 40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-pdrdisc
+.. raw:: latex
+ \clearpage
-VPP PDR Throughput - running in configuration of **two worker threads (2t) on
-two physical cores (2c)** - is presented in the figure below.
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-2t2c-scale-pdr`
.. raw:: html
-
+
+
+
+
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-2t2c-scale-pdr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-2t2c-scale-pdr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-1t1c-sw
+-----------
+
+.. raw:: html
+
+
+
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-1t1c-sw-ndr`
+
+.. raw:: html
+
+
+
+
+
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-1t1c-sw-ndr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-1t1c-sw-ndr}
+ \end{figure}
+
+.. raw:: html
-*Figure 4. VPP 2thread 2core - PDR Throughput for Phy-to-Phy IPSEC HW.*
+
-CSIT test cases used to generate results presented above can be found in CSIT
-git repository by filtering with specified regex as follows:
+.. raw:: latex
-.. code-block:: bash
+ \clearpage
+
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-1t1c-sw-pdr`
+
+.. raw:: html
+
+
+
+
+
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-1t1c-sw-pdr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-1t1c-sw-pdr}
+ \end{figure}
+
+.. raw:: latex
+
+ \clearpage
+
+64b-2t2c-sw
+-----------
+
+.. raw:: html
+
+
+
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-2t2c-sw-ndr`
+
+.. raw:: html
+
+
+
+
+
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-2t2c-sw-ndr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-2t2c-sw-ndr}
+ \end{figure}
+
+.. raw:: html
+
+
+
+.. raw:: latex
+
+ \clearpage
+
+:index:`Packet Throughput: ipsec-3n-hsw-xl710-64b-2t2c-sw-pdr`
+
+.. raw:: html
- $ csit/tests/perf
- $ grep -E "64B-1t1c-.*ipsec*" *
+
+
+
+
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc04-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc04-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc04-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-pdrdisc
- 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc04-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-pdrdisc
- 40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-pdrdisc
+.. raw:: latex
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{ipsec-3n-hsw-xl710-64b-2t2c-sw-pdr}
+ \label{fig:ipsec-3n-hsw-xl710-64b-2t2c-sw-pdr}
+ \end{figure}