feat(jobspec): Unify soak jobspecs
[csit.git] / tests / vpp / perf / ip4 / 2n1l-10ge2p1x710-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr.robot
index 873ac1a..64b916f 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
@@ -17,8 +17,8 @@
 | Resource | resources/libraries/robot/shared/traffic.robot
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
-| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | NAT44 | TCP_SYN
-| ... | NAT44_ENDPOINT_DEPENDENT | BASE | DRV_VFIO_PCI
+| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | NAT44 | TCP | TCP_CPS
+| ... | NAT44_ENDPOINT_DEPENDENT | SCALE | HOSTS_4096 | DRV_VFIO_PCI
 | ... | RXQ_SIZE_0 | TXQ_SIZE_0
 | ... | ethip4tcp-nat44ed-h4096-p63-s258048-cps
 |
 |
 | Test Template | Local Template
 |
-| Documentation | *Connections per second NAT44 endpoint-dependent mode
-| ... | performance test cases*
-|
-| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology
+| Documentation | **CPS on empty TCP transactions with NAT44ED**
+| ... |
+| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \
 | ... | with single links between nodes.
-| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing.
-| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and
-| ... | one static IPv4 /18 route entries.
-| ... | DUT1 is tested with ${nic_name}.\
-| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\
-| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\
-| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\
-| ... | of packets transmitted. NDR and PDR are discovered for different\
-| ... | Ethernet L2 frame sizes using MLRsearch library.\
-| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\
-| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\
-| ... | containing Ethernet header, IPv4 header with TCP header and static\
-| ... | payload. MAC addresses are matching MAC addresses of the TG node\
+| ... |
+| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing.
+| ... |
+| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \
+| ... | and one static IPv4 /18 route entries. \
+| ... | DUT1 is tested with ${nic_name}.
+| ... |
+| ... | - **[Ver] TG verification:** TG finds and reports throughput NDR (Non \
+| ... | Drop Rate) with zero packet loss tolerance and throughput PDR \
+| ... | (Partial Drop Rate) with non-zero packet loss tolerance (LT) \
+| ... | expressed in percentage of packets transmitted. NDR and PDR are \
+| ... | discovered for different Ethernet L2 frame sizes using MLRsearch \
+| ... | library.
+| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \
+| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \
+| ... | containing Ethernet header, IPv4 header with TCP header and static \
+| ... | payload. MAC addresses are matching MAC addresses of the TG node \
 | ... | interfaces.
-| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\
-| ... | for Network Security Device Performance\
+| ... |
+| ... | - **[Ref] Applicable standard specifications:** Benchmarking \
+| ... | Methodology for Network Security Device Performance \
 | ... | (draft-ietf-bmwg-ngfw-performance-03).
 
 *** Variables ***
-| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so
+| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so
 | ${crypto_type}= | ${None}
 | ${nic_name}= | Intel-X710
 | ${nic_driver}= | vfio-pci
 | ${n_hosts}= | ${4096}
 | ${n_ports}= | ${63}
 | ${n_sessions}= | ${${n_hosts} * ${n_ports}}
-# Traffic profile:
-| ${traffic_profile}= | trex-astf-ethip4tcp-4096h
-| ${cps}= | ${258048}
-# Trial data overwrite
-| ${trial_duration}= | ${1.1}
-| ${trial_multiplicity}= | ${1}
+| ${transaction_scale}= | ${n_sessions}
+| ${packets_per_transaction_and_direction}= | ${4}
+| ${packets_per_transaction_aggregated}= | ${7}
+# Traffic profile
+| ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h
+| ${transaction_type}= | tcp_cps
+| ${disable_latency}= | ${True}
 
 *** Keywords ***
 | Local Template
 | |
 | | [Documentation]
-| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.
+| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \
 | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
-| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\
+| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm.
 | |
 | | ... | *Arguments:*
 | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1).
 | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None}
 | |
 | | Set Test Variable | \${frame_size}
-| | Set Test Variable | \${max_rate} | ${cps}
 | | ${pre_stats}= | Create List
 | | ... | vpp-clear-stats | vpp-enable-packettrace | vpp-enable-elog
 | | ... | vpp-clear-runtime
 | | ... | vpp-show-runtime
 | | Set Test Variable | ${post_stats}
 | |
-| | Given Set Jumbo
+| | Given Set Max Rate And Jumbo
 | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
 | | And Pre-initialize layer driver | ${nic_driver}
-| | And Add NAT to all DUTs | nat_mode=${nat_mode}
-| | ${max_translations_per_thread}= | Compute Max Translations Per Thread
-| | ... | ${n_sessions} | ${thr_count_int}
-| | And Add NAT max translations per thread to all DUTs
-| | ... | ${max_translations_per_thread}
 | | And Apply startup configuration on all VPP DUTs
 | | When Initialize layer driver | ${nic_driver}
 | | And Initialize layer interface
 | | And Initialize IPv4 forwarding for NAT44 in circular topology
 | | And Initialize NAT44 endpoint-dependent mode in circular topology
-| | Then Find NDR and PDR intervals using optimized search | latency=${False}
+| | Then Find NDR and PDR intervals using optimized search
 
 *** Test Cases ***
 | 64B-1c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
 | 64B-4c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
 | | [Tags] | 64B | 4C
 | | frame_size=${64} | phy_cores=${4}
-
-| 1518B-1c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
-| | [Tags] | 1518B | 1C
-| | frame_size=${1518} | phy_cores=${1}
-
-| 1518B-2c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
-| | [Tags] | 1518B | 2C
-| | frame_size=${1518} | phy_cores=${2}
-
-| 1518B-4c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
-| | [Tags] | 1518B | 4C
-| | frame_size=${1518} | phy_cores=${4}
-
-| 9000B-1c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
-| | [Tags] | 9000B | 1C
-| | frame_size=${9000} | phy_cores=${1}
-
-| 9000B-2c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
-| | [Tags] | 9000B | 2C
-| | frame_size=${9000} | phy_cores=${2}
-
-| 9000B-4c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
-| | [Tags] | 9000B | 4C
-| | frame_size=${9000} | phy_cores=${4}
-
-| IMIX-1c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
-| | [Tags] | IMIX | 1C
-| | frame_size=IMIX_v4_1 | phy_cores=${1}
-
-| IMIX-2c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
-| | [Tags] | IMIX | 2C
-| | frame_size=IMIX_v4_1 | phy_cores=${2}
-
-| IMIX-4c-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr
-| | [Tags] | IMIX | 4C
-| | frame_size=IMIX_v4_1 | phy_cores=${4}