diff options
author | Tibor Frank <tifrank@cisco.com> | 2023-05-03 13:53:27 +0000 |
---|---|---|
committer | Tibor Frank <tifrank@cisco.com> | 2023-05-09 05:56:22 +0000 |
commit | 374954b9d648f503f6783325a1266457953a998d (patch) | |
tree | 5514dee6af2a2e069189efe39d4e929dd25721f7 /docs/report/introduction/methodology_hoststack_testing | |
parent | 46eac7bb697e8261dba5b439a15f5a6125f31760 (diff) |
C-Docs: New structure
Change-Id: I73d107f94b28b138f3350a9e1eedb0555583a9ca
Signed-off-by: Tibor Frank <tifrank@cisco.com>
Diffstat (limited to 'docs/report/introduction/methodology_hoststack_testing')
5 files changed, 0 insertions, 184 deletions
diff --git a/docs/report/introduction/methodology_hoststack_testing/index.rst b/docs/report/introduction/methodology_hoststack_testing/index.rst deleted file mode 100644 index 7750097417..0000000000 --- a/docs/report/introduction/methodology_hoststack_testing/index.rst +++ /dev/null @@ -1,9 +0,0 @@ -Hoststack Testing ------------------ - -.. toctree:: - - methodology_tcp_with_iperf3 - methodology_udp_with_iperf3 - methodology_quic_with_vppecho - methodology_vsap_ab_with_nginx diff --git a/docs/report/introduction/methodology_hoststack_testing/methodology_quic_with_vppecho.rst b/docs/report/introduction/methodology_hoststack_testing/methodology_quic_with_vppecho.rst deleted file mode 100644 index 064f643f3b..0000000000 --- a/docs/report/introduction/methodology_hoststack_testing/methodology_quic_with_vppecho.rst +++ /dev/null @@ -1,46 +0,0 @@ -QUIC/UDP/IP with vpp_echo -^^^^^^^^^^^^^^^^^^^^^^^^^ - -`vpp_echo performance testing tool <https://wiki.fd.io/view/VPP/HostStack#External_Echo_Server.2FClient_.28vpp_echo.29>`_ -is a bespoke performance test application which utilizes the 'native -HostStack APIs' to verify performance and correct handling of -connection/stream events with uni-directional and bi-directional -streams of data. - -Because iperf3 does not support the QUIC transport protocol, vpp_echo -is used for measuring the maximum attainable goodput of the VPP Host -Stack connection utilizing the QUIC transport protocol across two -instances of VPP running on separate DUT nodes. The QUIC transport -protocol supports multiple streams per connection and test cases -utilize different combinations of QUIC connections and number of -streams per connection. - -The test configuration is as follows: - -:: - - DUT1 Network DUT2 - [ vpp_echo-client -> VPP1 ]=======[ VPP2 -> vpp_echo-server] - N-streams/connection - -where, - -1. vpp_echo server attaches to VPP2 and LISTENs on VPP2:TCP port 1234. -2. vpp_echo client creates one or more connections to VPP1 and opens - one or more stream per connection to VPP2:TCP port 1234. -3. vpp_echo client transmits a uni-directional stream as fast as the - VPP Host Stack allows to the vpp_echo server for the test duration. -4. At the end of the test the vpp_echo client emits the goodput - measurements for all streams and the sum of all streams. - -Test cases include - -1. 1 QUIC Connection with 1 Stream -2. 1 QUIC connection with 10 Streams -3. 10 QUIC connetions with 1 Stream -4. 10 QUIC connections with 10 Streams - -with stream sizes to provide reasonable test durations. The VPP Host -Stack QUIC transport is configured to utilize the picotls encryption -library. In the future, tests utilizing addtional encryption -algorithms will be added. diff --git a/docs/report/introduction/methodology_hoststack_testing/methodology_tcp_with_iperf3.rst b/docs/report/introduction/methodology_hoststack_testing/methodology_tcp_with_iperf3.rst deleted file mode 100644 index e3fb85d551..0000000000 --- a/docs/report/introduction/methodology_hoststack_testing/methodology_tcp_with_iperf3.rst +++ /dev/null @@ -1,50 +0,0 @@ -TCP/IP with iperf3 -^^^^^^^^^^^^^^^^^^ - -`iperf3 goodput measurement tool <https://github.com/esnet/iperf>`_ -is used for measuring the maximum attainable goodput of the VPP Host -Stack connection across two instances of VPP running on separate DUT -nodes. iperf3 is a popular open source tool for active measurements -of the maximum achievable goodput on IP networks. - -Because iperf3 utilizes the POSIX socket interface APIs, the current -test configuration utilizes the LD_PRELOAD mechanism in the linux -kernel to connect iperf3 to the VPP Host Stack using the VPP -Communications Library (VCL) LD_PRELOAD library (libvcl_ldpreload.so). - -In the future, a forked version of iperf3 which has been modified to -directly use the VCL application APIs may be added to determine the -difference in performance of 'VCL Native' applications versus utilizing -LD_PRELOAD which inherently has more overhead and other limitations. - -The test configuration is as follows: - -:: - - DUT1 Network DUT2 - [ iperf3-client -> VPP1 ]=======[ VPP2 -> iperf3-server] - -where, - -1. iperf3 server attaches to VPP2 and LISTENs on VPP2:TCP port 5201. -2. iperf3 client attaches to VPP1 and opens one or more stream - connections to VPP2:TCP port 5201. -3. iperf3 client transmits a uni-directional stream as fast as the - VPP Host Stack allows to the iperf3 server for the test duration. -4. At the end of the test the iperf3 client emits the goodput - measurements for all streams and the sum of all streams. - -Test cases include 1 and 10 Streams with a 20 second test duration -with the VPP Host Stack configured to utilize the Cubic TCP -congestion algorithm. - -Note: iperf3 is single threaded, so it is expected that the 10 stream -test shows little or no performance improvement due to -multi-thread/multi-core execution. - -There are also variations of these test cases which use the VPP Network -Simulator (NSIM) plugin to test the VPP Hoststack goodput with 1 percent -of the traffic being dropped at the output interface of VPP1 thereby -simulating a lossy network. The NSIM tests are experimental and the -test results are not currently representative of typical results in a -lossy network. diff --git a/docs/report/introduction/methodology_hoststack_testing/methodology_udp_with_iperf3.rst b/docs/report/introduction/methodology_hoststack_testing/methodology_udp_with_iperf3.rst deleted file mode 100644 index b0525f989f..0000000000 --- a/docs/report/introduction/methodology_hoststack_testing/methodology_udp_with_iperf3.rst +++ /dev/null @@ -1,42 +0,0 @@ -UDP/IP with iperf3 -^^^^^^^^^^^^^^^^^^ - -`iperf3 goodput measurement tool <https://github.com/esnet/iperf>`_ -is used for measuring the maximum attainable goodput of the VPP Host -Stack connection across two instances of VPP running on separate DUT -nodes. iperf3 is a popular open source tool for active measurements -of the maximum achievable goodput on IP networks. - -Because iperf3 utilizes the POSIX socket interface APIs, the current -test configuration utilizes the LD_PRELOAD mechanism in the linux -kernel to connect iperf3 to the VPP Host Stack using the VPP -Communications Library (VCL) LD_PRELOAD library (libvcl_ldpreload.so). - -In the future, a forked version of iperf3 which has been modified to -directly use the VCL application APIs may be added to determine the -difference in performance of 'VCL Native' applications versus utilizing -LD_PRELOAD which inherently has more overhead and other limitations. - -The test configuration is as follows: - -:: - - DUT1 Network DUT2 - [ iperf3-client -> VPP1 ]=======[ VPP2 -> iperf3-server] - -where, - -1. iperf3 server attaches to VPP2 and LISTENs on VPP2:UDP port 5201. -2. iperf3 client attaches to VPP1 and transmits one or more streams - of packets to VPP2:UDP port 5201. -3. iperf3 client transmits a uni-directional stream as fast as the - VPP Host Stack allows to the iperf3 server for the test duration. -4. At the end of the test the iperf3 client emits the goodput - measurements for all streams and the sum of all streams. - -Test cases include 1 and 10 Streams with a 20 second test duration -with the VPP Host Stack using the UDP transport layer.. - -Note: iperf3 is single threaded, so it is expected that the 10 stream -test shows little or no performance improvement due to -multi-thread/multi-core execution. diff --git a/docs/report/introduction/methodology_hoststack_testing/methodology_vsap_ab_with_nginx.rst b/docs/report/introduction/methodology_hoststack_testing/methodology_vsap_ab_with_nginx.rst deleted file mode 100644 index 6acfff1778..0000000000 --- a/docs/report/introduction/methodology_hoststack_testing/methodology_vsap_ab_with_nginx.rst +++ /dev/null @@ -1,37 +0,0 @@ -VSAP ab with nginx -^^^^^^^^^^^^^^^^^^ - -`VSAP (VPP Stack Acceleration Project) <https://wiki.fd.io/view/VSAP>`_ -aims to establish an industry user space application ecosystem based on -the VPP hoststack. As a pre-requisite to adapting open source applications -using VPP Communications Library to accelerate performance, the VSAP team -has introduced baseline tests utilizing the LD_PRELOAD mechanism to capture -baseline performance data. - -`AB (Apache HTTP server benchmarking tool) <https://httpd.apache.org/docs/2.4/programs/ab.html>`_ -is used for measuring the maximum connections-per-second and requests-per-second. - -`NGINX <https://www.nginx.com/>`_ is a popular open source HTTP server -application. Because NGINX utilizes the POSIX socket interface APIs, the test -configuration uses the LD_PRELOAD mechanism to connect NGINX to the VPP -Hoststack using the VPP Communications Library (VCL) LD_PRELOAD library -(libvcl_ldpreload.so). - -In the future, a version of NGINX which has been modified to -directly use the VCL application APIs will be added to determine the -difference in performance of 'VCL Native' applications versus utilizing -LD_PRELOAD which inherently has more overhead and other limitations. - -The test configuration is as follows: - -:: - - TG Network DUT - [ AB ]=============[ VPP -> nginx ] - -where, - -1. nginx attaches to VPP and listens on TCP port 80 -2. ab runs CPS and RPS tests with packets flowing from the Test Generator node, - across 100G NICs, through VPP hoststack to NGINX. -3. At the end of the tests, the results are reported by AB. |