From 3f066fb53b32b82403197291fc1260025be90592 Mon Sep 17 00:00:00 2001 From: Tibor Frank Date: Mon, 28 Sep 2020 16:02:01 +0200 Subject: Report: Add NAT44 Change-Id: I9bb8340e7921bce32b3bd51b8a54f33bc74f41ec Signed-off-by: Tibor Frank --- .../packet_throughput_graphs/index.rst | 1 + .../packet_throughput_graphs/ip4-2n-clx-xxv710.rst | 43 --- .../nat44-2n-clx-xxv710.rst | 287 +++++++++++++++++++++ .../packet_throughput_graphs/nat44.rst | 20 ++ .../throughput_speedup_multi_core/index.rst | 1 + .../ip4-2n-clx-xxv710.rst | 43 --- .../nat44-2n-clx-xxv710.rst | 287 +++++++++++++++++++++ .../throughput_speedup_multi_core/nat44.rst | 22 ++ 8 files changed, 618 insertions(+), 86 deletions(-) create mode 100644 docs/report/vpp_performance_tests/packet_throughput_graphs/nat44-2n-clx-xxv710.rst create mode 100644 docs/report/vpp_performance_tests/packet_throughput_graphs/nat44.rst create mode 100644 docs/report/vpp_performance_tests/throughput_speedup_multi_core/nat44-2n-clx-xxv710.rst create mode 100644 docs/report/vpp_performance_tests/throughput_speedup_multi_core/nat44.rst (limited to 'docs/report/vpp_performance_tests') diff --git a/docs/report/vpp_performance_tests/packet_throughput_graphs/index.rst b/docs/report/vpp_performance_tests/packet_throughput_graphs/index.rst index c6150e03ec..7b038cffde 100644 --- a/docs/report/vpp_performance_tests/packet_throughput_graphs/index.rst +++ b/docs/report/vpp_performance_tests/packet_throughput_graphs/index.rst @@ -150,6 +150,7 @@ Additional information about graph data: ip6 srv6 ip4_tunnels + nat44 vm_vhost container_memif ipsec diff --git a/docs/report/vpp_performance_tests/packet_throughput_graphs/ip4-2n-clx-xxv710.rst b/docs/report/vpp_performance_tests/packet_throughput_graphs/ip4-2n-clx-xxv710.rst index 13f4df554c..122180f29c 100644 --- a/docs/report/vpp_performance_tests/packet_throughput_graphs/ip4-2n-clx-xxv710.rst +++ b/docs/report/vpp_performance_tests/packet_throughput_graphs/ip4-2n-clx-xxv710.rst @@ -284,46 +284,3 @@ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-features-ip4routing-base-dpdk-pdr} \label{fig:2n-clx-xxv710-64b-2t1c-features-ip4routing-base-dpdk-pdr} \end{figure} - -.. raw:: latex - - \clearpage - -64b-2t1c-features-nat44det-scale-avf ------------------------------------- - -.. raw:: html - -
- -


-
- -.. raw:: latex - - \begin{figure}[H] - \centering - \graphicspath{{../_build/_static/vpp/}} - \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-features-nat44det-scale-avf-ndr} - \label{fig:2n-clx-xxv710-64b-2t1c-features-nat44det-scale-avf-ndr} - \end{figure} - -.. raw:: latex - - \clearpage - -.. raw:: html - -
- -


-
- -.. raw:: latex - - \begin{figure}[H] - \centering - \graphicspath{{../_build/_static/vpp/}} - \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-features-nat44det-scale-avf-pdr} - \label{fig:2n-clx-xxv710-64b-2t1c-features-nat44det-scale-avf-pdr} - \end{figure} diff --git a/docs/report/vpp_performance_tests/packet_throughput_graphs/nat44-2n-clx-xxv710.rst b/docs/report/vpp_performance_tests/packet_throughput_graphs/nat44-2n-clx-xxv710.rst new file mode 100644 index 0000000000..04c1898683 --- /dev/null +++ b/docs/report/vpp_performance_tests/packet_throughput_graphs/nat44-2n-clx-xxv710.rst @@ -0,0 +1,287 @@ + +.. raw:: latex + + \clearpage + +.. raw:: html + + + +2n-clx-xxv710 +~~~~~~~~~~~~~ + +64b-nat44det-ip4routing-stl-bidir-avf +------------------------------------- + +.. raw:: html + +
+ +


+
+ +.. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-stl-bidir-avf-ndr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-stl-bidir-avf-ndr} + \end{figure} + +.. raw:: latex + + \clearpage + +.. raw:: html + +
+ +


+
+ +.. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-stl-bidir-avf-pdr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-stl-bidir-avf-pdr} + \end{figure} + +.. raw:: latex + + \clearpage + +64b-nat44ed-ip4routing-stl-unidir-avf +------------------------------------- + +.. raw:: html + +
+ +


+
+ +.. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-stl-unidir-avf-ndr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-stl-unidir-avf-ndr} + \end{figure} + +.. raw:: latex + + \clearpage + +.. raw:: html + +
+ +


+
+ +.. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-stl-unidir-avf-pdr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-stl-unidir-avf-pdr} + \end{figure} + +.. + .. raw:: latex + + \clearpage + + 64b-nat44ed-ip4routing-udp-stf-cps-avf + -------------------------------------- + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-udp-stf-cps-avf-ndr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-udp-stf-cps-avf-ndr} + \end{figure} + + .. raw:: latex + + \clearpage + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-udp-stf-cps-avf-pdr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-udp-stf-cps-avf-pdr} + \end{figure} + + .. raw:: latex + + \clearpage + + 64b-nat44ed-ip4routing-tcp-stf-cps-avf + -------------------------------------- + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-tcp-stf-cps-avf-ndr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-tcp-stf-cps-avf-ndr} + \end{figure} + + .. raw:: latex + + \clearpage + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-tcp-stf-cps-avf-pdr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-tcp-stf-cps-avf-pdr} + \end{figure} + + .. raw:: latex + + \clearpage + + 64b-nat44ed-ip4routing-udp-stf-pps-avf + -------------------------------------- + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-udp-stf-pps-avf-ndr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-udp-stf-pps-avf-ndr} + \end{figure} + + .. raw:: latex + + \clearpage + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-udp-stf-pps-avf-pdr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-udp-stf-pps-avf-pdr} + \end{figure} + + .. raw:: latex + + \clearpage + + 64b-nat44ed-ip4routing-tcp-stf-pps-avf + -------------------------------------- + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-tcp-stf-pps-avf-ndr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-tcp-stf-pps-avf-ndr} + \end{figure} + + .. raw:: latex + + \clearpage + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-tcp-stf-pps-avf-pdr} + \label{fig:2n-clx-xxv710-64b-2t1c-nat44det-ip4routing-tcp-stf-pps-avf-pdr} + \end{figure} diff --git a/docs/report/vpp_performance_tests/packet_throughput_graphs/nat44.rst b/docs/report/vpp_performance_tests/packet_throughput_graphs/nat44.rst new file mode 100644 index 0000000000..420b6ff659 --- /dev/null +++ b/docs/report/vpp_performance_tests/packet_throughput_graphs/nat44.rst @@ -0,0 +1,20 @@ + +.. raw:: latex + + \clearpage + +NAT44 IPv4 Routing +================== + +Following sections include summary graphs of VPP Phy-to-Phy performance +with IPv4 Routed-Forwarding, including 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. + +CSIT source code for the test cases used for plots can be found in +`CSIT git repository `_. + +.. toctree:: + + nat44-2n-clx-xxv710 diff --git a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/index.rst b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/index.rst index db259d12b8..ebb270b9c8 100644 --- a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/index.rst +++ b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/index.rst @@ -57,6 +57,7 @@ Additional information about graph data: ip6 srv6 ip4_tunnels + nat44 vm_vhost container_memif ipsec diff --git a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip4-2n-clx-xxv710.rst b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip4-2n-clx-xxv710.rst index 9d74452bc4..69a09151e3 100644 --- a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip4-2n-clx-xxv710.rst +++ b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/ip4-2n-clx-xxv710.rst @@ -284,46 +284,3 @@ \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-features-ip4routing-base-dpdk-pdr-tsa} \label{fig:2n-clx-xxv710-64b-features-ip4routing-base-dpdk-pdr-tsa} \end{figure} - -.. raw:: latex - - \clearpage - -64b-features-nat44det-scale-avf -------------------------------- - -.. raw:: html - -
- -


-
- -.. raw:: latex - - \begin{figure}[H] - \centering - \graphicspath{{../_build/_static/vpp/}} - \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-features-nat44det-scale-avf-ndr-tsa} - \label{fig:2n-clx-xxv710-64b-features-nat44det-scale-avf-ndr-tsa} - \end{figure} - -.. raw:: latex - - \clearpage - -.. raw:: html - -
- -


-
- -.. raw:: latex - - \begin{figure}[H] - \centering - \graphicspath{{../_build/_static/vpp/}} - \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-features-nat44det-scale-avf-pdr-tsa} - \label{fig:2n-clx-xxv710-64b-features-nat44det-scale-avf-pdr-tsa} - \end{figure} diff --git a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/nat44-2n-clx-xxv710.rst b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/nat44-2n-clx-xxv710.rst new file mode 100644 index 0000000000..dbb51be0f0 --- /dev/null +++ b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/nat44-2n-clx-xxv710.rst @@ -0,0 +1,287 @@ + +.. raw:: latex + + \clearpage + +.. raw:: html + + + +2n-clx-xxv710 +~~~~~~~~~~~~~ + +64b-nat44det-ip4routing-stl-bidir-avf +------------------------------------- + +.. raw:: html + +
+ +


+
+ +.. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-stl-bidir-avf-ndr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-stl-bidir-avf-ndr-tsa} + \end{figure} + +.. raw:: latex + + \clearpage + +.. raw:: html + +
+ +


+
+ +.. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-stl-bidir-avf-pdr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-stl-bidir-avf-pdr-tsa} + \end{figure} + +.. raw:: latex + + \clearpage + +64b-nat44ed-ip4routing-stl-unidir-avf +------------------------------------- + +.. raw:: html + +
+ +


+
+ +.. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-stl-unidir-avf-ndr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-stl-unidir-avf-ndr-tsa} + \end{figure} + +.. raw:: latex + + \clearpage + +.. raw:: html + +
+ +


+
+ +.. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-stl-unidir-avf-pdr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-stl-unidir-avf-pdr-tsa} + \end{figure} + +.. + .. raw:: latex + + \clearpage + + 64b-nat44ed-ip4routing-udp-stf-cps-avf + -------------------------------------- + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-udp-stf-cps-avf-ndr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-udp-stf-cps-avf-ndr-tsa} + \end{figure} + + .. raw:: latex + + \clearpage + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-udp-stf-cps-avf-pdr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-udp-stf-cps-avf-pdr-tsa} + \end{figure} + + .. raw:: latex + + \clearpage + + 64b-nat44ed-ip4routing-tcp-stf-cps-avf + -------------------------------------- + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-tcp-stf-cps-avf-ndr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-tcp-stf-cps-avf-ndr-tsa} + \end{figure} + + .. raw:: latex + + \clearpage + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-tcp-stf-cps-avf-pdr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-tcp-stf-cps-avf-pdr-tsa} + \end{figure} + + .. raw:: latex + + \clearpage + + 64b-nat44ed-ip4routing-udp-stf-pps-avf + -------------------------------------- + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-udp-stf-pps-avf-ndr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-udp-stf-pps-avf-ndr-tsa} + \end{figure} + + .. raw:: latex + + \clearpage + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-udp-stf-pps-avf-pdr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-udp-stf-pps-avf-pdr-tsa} + \end{figure} + + .. raw:: latex + + \clearpage + + 64b-nat44ed-ip4routing-tcp-stf-pps-avf + -------------------------------------- + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-tcp-stf-pps-avf-ndr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-tcp-stf-pps-avf-ndr-tsa} + \end{figure} + + .. raw:: latex + + \clearpage + + .. raw:: html + +
+ +


+
+ + .. raw:: latex + + \begin{figure}[H] + \centering + \graphicspath{{../_build/_static/vpp/}} + \includegraphics[clip, trim=0cm 0cm 5cm 0cm, width=0.70\textwidth]{2n-clx-xxv710-64b-nat44det-ip4routing-tcp-stf-pps-avf-pdr-tsa} + \label{fig:2n-clx-xxv710-64b-nat44det-ip4routing-tcp-stf-pps-avf-pdr-tsa} + \end{figure} diff --git a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/nat44.rst b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/nat44.rst new file mode 100644 index 0000000000..e5c7dd0ad4 --- /dev/null +++ b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/nat44.rst @@ -0,0 +1,22 @@ + +.. raw:: latex + + \clearpage + +NAT44 IPv4 Routing +================== + +Following sections include Throughput Speedup Analysis for VPP multi- +core multi-thread configurations with no Hyper-Threading, specifically +for tested 2t2c (2threads, 2cores) and 4t4c scenarios. 1t1c throughput +results are used as a reference for reported speedup ratio. Input data +used for the graphs comes from Phy-to-Phy 64B performance tests with VPP +IPv4 Routed-Forwarding, including NDR throughput (zero packet loss) and +PDR throughput (<0.5% packet loss). + +CSIT source code for the test cases used for plots can be found in +`CSIT git repository `_. + +.. toctree:: + + nat44-2n-clx-xxv710 -- cgit 1.2.3-korg