aboutsummaryrefslogtreecommitdiffstats
path: root/docs/report
diff options
context:
space:
mode:
authorTibor Frank <tifrank@cisco.com>2018-05-05 12:25:51 +0200
committerTibor Frank <tifrank@cisco.com>2018-05-05 12:25:51 +0200
commit23a620dd663d58e433e62dc417f4f053ae599e88 (patch)
tree442a594f326a56db6ed99978e50f4596c2888189 /docs/report
parent01b9a636f84ad3b03e2845abd4ebf1a258705b55 (diff)
Report: SRv6 to TSA
Change-Id: I23d7080db24ef579ad53420cbe1bacd10f2db873 Signed-off-by: Tibor Frank <tifrank@cisco.com>
Diffstat (limited to 'docs/report')
-rw-r--r--docs/report/vpp_performance_tests/throughput_speedup_multi_core/index.rst1
-rw-r--r--docs/report/vpp_performance_tests/throughput_speedup_multi_core/srv6.rst92
2 files changed, 93 insertions, 0 deletions
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 10b5f1644a..bc9ceeae31 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
@@ -18,6 +18,7 @@ threaded VPP configurations relative to 1-core configurations.
l2
ip4
ip6
+ srv6
ip4_tunnels
ip6_tunnels
vm_vhost
diff --git a/docs/report/vpp_performance_tests/throughput_speedup_multi_core/srv6.rst b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/srv6.rst
new file mode 100644
index 0000000000..9f96654891
--- /dev/null
+++ b/docs/report/vpp_performance_tests/throughput_speedup_multi_core/srv6.rst
@@ -0,0 +1,92 @@
+SRv6
+====
+
+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 78B performance tests with VPP
+SRv6, including NDR throughput (zero packet loss) and
+PDR throughput (<0.5% packet loss).
+
+NDR Throughput
+--------------
+
+VPP NDR 78B packet throughput speedup ratio is presented in the graphs
+below for 10ge2p1x520 network interface card.
+
+
+NIC 10ge2p1x520
+~~~~~~~~~~~~~~~
+
+.. raw:: html
+
+ <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/10ge2p1x520-78B-srv6-tsa-ndrdisc.html"></iframe>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 8cm 5cm 0cm, width=0.70\textwidth]{10ge2p1x520-78B-srv6-tsa-ndrdisc}
+ \label{fig:10ge2p1x520-78B-srv6-tsa-ndrdisc}
+ \end{figure}
+
+*Figure 1. Throughput Speedup Analysis - Multi-Core Speedup Ratio - Normalized
+NDR Throughput for Phy-to-Phy SRv6.*
+
+CSIT source code for the test cases used for above plots can be found in CSIT
+git repository:
+
+.. only:: html
+
+ .. program-output:: cd ../../../../../ && set +x && cd tests/vpp/perf/srv6 && grep -E '78B-(1t1c|2t2c|4t4c)-ethip6.*srv6.*ndrdisc' 10ge2p1x520*
+ :shell:
+
+.. only:: latex
+
+ .. code-block:: bash
+
+ $ cd tests/vpp/perf/srv6
+ $ grep -E '78B-(1t1c|2t2c|4t4c)-ethip6.*srv6.*ndrdisc' 10ge2p1x520*
+
+PDR Throughput
+--------------
+
+VPP PDR 78B packet throughput speedup ratio is presented in the graphs
+below for 10ge2p1x520 network interface card. PDR
+measured for 0.5% packet loss ratio.
+
+NIC 10ge2p1x520
+~~~~~~~~~~~~~~~
+
+.. raw:: html
+
+ <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/10ge2p1x520-78B-srv6-tsa-pdrdisc.html"></iframe>
+
+.. raw:: latex
+
+ \begin{figure}[H]
+ \centering
+ \graphicspath{{../_build/_static/vpp/}}
+ \includegraphics[clip, trim=0cm 8cm 5cm 0cm, width=0.70\textwidth]{10ge2p1x520-78B-srv6-tsa-pdrdisc}
+ \label{fig:10ge2p1x520-78B-srv6-tsa-pdrdisc}
+ \end{figure}
+
+*Figure 3. Throughput Speedup Analysis - Multi-Core Speedup Ratio - Normalized
+PDR Throughput for Phy-to-Phy SRv6.*
+
+CSIT source code for the test cases used for above plots can be found in CSIT
+git repository:
+
+.. only:: html
+
+ .. program-output:: cd ../../../../../ && set +x && cd tests/vpp/perf/srv6 && grep -E '78B-(1t1c|2t2c|4t4c)-ethip6.*srv6.*pdrdisc' 10ge2p1x520*
+ :shell:
+
+.. only:: latex
+
+ .. code-block:: bash
+
+ $ cd tests/vpp/perf/srv6
+ $ grep -E '78B-(1t1c|2t2c|4t4c)-ethip6.*srv6.*pdrdisc' 10ge2p1x520*
>), clib_net_to_host_u16 (udp->checksum)); /* Recurse into next protocol layer. */ if (max_header_bytes != 0 && header_bytes < max_header_bytes) { ip_main_t *im = &ip_main; tcp_udp_port_info_t *pi; pi = ip_get_tcp_udp_port_info (im, udp->dst_port); if (pi && pi->format_header) s = format (s, "\n%U%U", format_white_space, indent - 2, pi->format_header, /* next protocol header */ (udp + 1), max_header_bytes - sizeof (udp[0])); } return s; } uword unformat_udp_port (unformat_input_t * input, va_list * args) { u16 *result = va_arg (*args, u16 *); int port; /* Numeric type. */ if (unformat (input, "0x%x", &port) || unformat (input, "%d", &port)) { if (port <= 0 || port >= (1 << 16)) return 0; *result = port; return 1; } return 0; } /* * fd.io coding-style-patch-verification: ON * * Local Variables: * eval: (c-set-style "gnu") * End: */