aboutsummaryrefslogtreecommitdiffstats
path: root/docs/report/introduction/methodology_hoststack_testing/methodology_http_tcp_with_wrk.rst
diff options
context:
space:
mode:
authorTibor Frank <tifrank@cisco.com>2020-02-25 10:11:10 +0100
committerTibor Frank <tifrank@cisco.com>2020-02-25 10:14:29 +0100
commit84ab8bd624aa016988fc9f56e5a07e9ec07128b5 (patch)
treee57cd81de1eac98568324bd43cfb83f6cc3680c5 /docs/report/introduction/methodology_hoststack_testing/methodology_http_tcp_with_wrk.rst
parent384c0d7196654cc32625024e75d616ae5175e1d5 (diff)
Report: Hoststack methodology
Change-Id: I105e1d4823df42522bff1af50d1bb173cd84d958 Signed-off-by: Tibor Frank <tifrank@cisco.com>
Diffstat (limited to 'docs/report/introduction/methodology_hoststack_testing/methodology_http_tcp_with_wrk.rst')
-rw-r--r--docs/report/introduction/methodology_hoststack_testing/methodology_http_tcp_with_wrk.rst39
1 files changed, 39 insertions, 0 deletions
diff --git a/docs/report/introduction/methodology_hoststack_testing/methodology_http_tcp_with_wrk.rst b/docs/report/introduction/methodology_hoststack_testing/methodology_http_tcp_with_wrk.rst
new file mode 100644
index 0000000000..f5da5339a0
--- /dev/null
+++ b/docs/report/introduction/methodology_hoststack_testing/methodology_http_tcp_with_wrk.rst
@@ -0,0 +1,39 @@
+HTTP/TCP with WRK
+^^^^^^^^^^^^^^^^^
+
+`WRK HTTP benchmarking tool <https://github.com/wg/wrk>`_ is used for
+TCP/IP and HTTP tests of VPP Host Stack and built-in static HTTP server.
+WRK has been chosen as it is capable of generating significant TCP/IP
+and HTTP loads by scaling number of threads across multi-core processors.
+
+This in turn enables high scale benchmarking of the VPP Host Stack TCP/IP
+and HTTP service including HTTP TCP/IP Connections-Per-Second (CPS) and
+HTTP Requests-Per-Second.
+
+The initial tests are designed as follows:
+
+- HTTP and TCP/IP Connections-Per-Second (CPS)
+
+ - WRK configured to use 8 threads across 8 cores, 1 thread per core.
+ - Maximum of 50 concurrent connections across all WRK threads.
+ - Timeout for server responses set to 5 seconds.
+ - Test duration is 30 seconds.
+ - Expected HTTP test sequence:
+
+ - Single HTTP GET Request sent per open connection.
+ - Connection close after valid HTTP reply.
+ - Resulting flow sequence - 8 packets: >Syn, <Syn-Ack, >Ack, >Req,
+ <Rep, >Fin, <Fin, >Ack.
+
+- HTTP Requests-Per-Second
+
+ - WRK configured to use 8 threads across 8 cores, 1 thread per core.
+ - Maximum of 50 concurrent connections across all WRK threads.
+ - Timeout for server responses set to 5 seconds.
+ - Test duration is 30 seconds.
+ - Expected HTTP test sequence:
+
+ - Multiple HTTP GET Requests sent in sequence per open connection.
+ - Connection close after set test duration time.
+ - Resulting flow sequence: >Syn, <Syn-Ack, >Ack, >Req[1], <Rep[1],
+ .., >Req[n], <Rep[n], >Fin, <Fin, >Ack.