X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=tests%2Fvpp%2Fperf%2Fcrypto%2F40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrpdrdisc.robot;h=7276e2e959ef5d6b9af27c621e02bc285154798d;hp=fff80be824317baaab17e6dbb8afab634efb0e32;hb=6a6126b2f26607263e4543a1e0b5012ab2f0601b;hpb=0ba508f0eac819c1985e825857f584b3d1537ffe diff --git a/tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrpdrdisc.robot b/tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrpdrdisc.robot index fff80be824..7276e2e959 100644 --- a/tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrpdrdisc.robot +++ b/tests/vpp/perf/crypto/40ge2p1xl710-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrpdrdisc.robot @@ -56,9 +56,9 @@ *** Variables *** # XL710-DA2 bandwidth limit ~49Gbps/2=24.5Gbps -| ${s_limit} | ${24500000000} +| ${s_limit}= | ${24500000000} # XL710-DA2 Mpps limit 37.5Mpps/2=18.75Mpps -| ${s_18.75Mpps} | ${18750000} +| ${s_18.75Mpps}= | ${18750000} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 | ${dut1_if2_ip4}= | 172.168.1.1 @@ -71,11 +71,19 @@ | ${ipsec_overhead_gcm}= | ${54} | ${n_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile} | trex-sl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels} *** Keywords *** | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev +| | [Documentation] +| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config with ${wt} thread(s),\ +| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port. +| | ... | [Ver] Measure NDR or PDR for ${framesize} by bisecting between\ +| | ... | ${min_rate} and computed max rate, using trial loss rate measurements. +| | ... | | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type} +| | ... +| | # Test Variables required for test teardown | | Set Test Variable | ${framesize} | | Set Test Variable | ${min_rate} | | ${get_framesize}= | Get Frame Size | ${framesize} @@ -88,23 +96,27 @@ | | ${threshold}= | Set Variable | ${min_rate} | | ${encr_alg}= | Crypto Alg AES GCM 128 | | ${auth_alg}= | Integ Alg AES GCM 128 +| | ... | | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology -| | And Add PCI devices to DUTs in 3-node single link topology +| | And Add PCI devices to all DUTs | | And Add no multi seg to all DUTs | | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology | | ... | aesni_gcm | ${${wt}} | | And Add DPDK dev default RXD to all DUTs | 2048 | | And Add DPDK dev default TXD to all DUTs | 2048 | | And Apply startup configuration on all VPP DUTs -| | And Generate keys for IPSec | ${encr_alg} | ${auth_alg} +| | When Generate keys for IPSec | ${encr_alg} | ${auth_alg} | | And Initialize IPSec in 3-node circular topology -| | Vpp Route Add | ${dut1} | ${raddr_ip4} | 8 | ${dut2_if1_ip4} | ${dut1_if2} -| | Vpp Route Add | ${dut2} | ${laddr_ip4} | 8 | ${dut1_if2_ip4} | ${dut2_if1} +| | And Vpp Route Add | ${dut1} | ${raddr_ip4} | 8 | ${dut2_if1_ip4} +| | ... | ${dut1_if2} +| | And Vpp Route Add | ${dut2} | ${laddr_ip4} | 8 | ${dut1_if2_ip4} +| | ... | ${dut2_if1} | | And VPP IPsec Add Multiple Tunnels | | ... | ${dut1} | ${dut2} | ${dut1_if2} | ${dut2_if1} | ${n_tunnels} | | ... | ${encr_alg} | ${encr_key} | ${auth_alg} | ${auth_key} | | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${laddr_ip4} | ${raddr_ip4} | | ... | ${addr_range} +| | And Set interfaces in path in 3-node circular topology up | | Then Run Keyword If | '${search_type}' == 'NDR' | | ... | Find NDR using binary search and pps | | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile} @@ -119,97 +131,97 @@ | tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrdisc | | [Documentation] | | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\ -| | ... | with 1 thread, 1 phy core, 1 receive queue per NIC port. +| | ... | with 1 phy core, 1 receive queue per NIC port. | | ... | [Ver] Find NDR for 64 Byte frames\ -| | ... | using binary search start at 40GE linerate, step 100kpps. +| | ... | using binary search start at 40GE linerate, step 50kpps. | | ... -| | [Tags] | 64B | 1T1C | STHREAD | NDRDISC +| | [Tags] | 64B | 1C | NDRDISC | | ... | | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev -| | wt=1 | rxq=1 | framesize=${64} | min_rate=${100000} | search_type=NDR +| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR | tc02-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-pdrdisc | | [Documentation] | | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\ -| | ... | with 1 thread, 1 phy core, 1 receive queue per NIC port. +| | ... | with 1 phy core, 1 receive queue per NIC port. | | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\ -| | ... | linerate, step 100kpps and loss tolerance of 0.5%. +| | ... | linerate, step 50kpps and loss tolerance of 0.5%. | | ... -| | [Tags] | 64B | 1T1C | STHREAD | PDRDISC | SKIP_PATCH +| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH | | ... | | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev -| | wt=1 | rxq=1 | framesize=${64} | min_rate=${100000} | search_type=PDR +| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR | tc03-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrdisc | | [Documentation] | | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\ -| | ... | with 1 thread, 1 phy core, 1 receive queue per NIC port. +| | ... | with 1 phy core, 1 receive queue per NIC port. | | ... | [Ver] Find NDR for 1518 Byte frames\ -| | ... | using binary search start at 40GE linerate, step 100kpps. +| | ... | using binary search start at 40GE linerate, step 50kpps. | | ... -| | [Tags] | 1518B | 1T1C | STHREAD | NDRDISC +| | [Tags] | 1518B | 1C | NDRDISC | | ... | | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev -| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${100000} | search_type=NDR +| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR | tc04-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-pdrdisc | | [Documentation] | | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\ -| | ... | with 1 thread, 1 phy core, 1 receive queue per NIC port. +| | ... | with 1 phy core, 1 receive queue per NIC port. | | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 40GE\ -| | ... | linerate, step 100kpps and loss tolerance of 0.5%. +| | ... | linerate, step 50kpps and loss tolerance of 0.5%. | | ... -| | [Tags] | 1518B | 1T1C | STHREAD | PDRDISC | SKIP_PATCH +| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH | | ... | | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev -| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${100000} | search_type=PDR +| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR | tc05-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrdisc | | [Documentation] | | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\ -| | ... | with 1 thread, 1 phy core, 1 receive queue per NIC port. +| | ... | with 1 phy core, 1 receive queue per NIC port. | | ... | [Ver] Find NDR for IMIX_v4_1 frames\ -| | ... | using binary search start at 40GE linerate, step 100kpps. +| | ... | using binary search start at 40GE linerate, step 50kpps. | | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B) | | ... -| | [Tags] | IMIX | 1T1C | STHREAD | NDRDISC +| | [Tags] | IMIX | 1C | NDRDISC | | ... | | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev -| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${100000} | search_type=NDR +| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR | tc06-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-pdrdisc | | [Documentation] | | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\ -| | ... | with 1 thread, 1 phy core, 1 receive queue per NIC port. +| | ... | with 1 phy core, 1 receive queue per NIC port. | | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 40GE\ -| | ... | linerate, step 100kpps and loss tolerance of 0.5%. +| | ... | linerate, step 50kpps and loss tolerance of 0.5%. | | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B) | | ... -| | [Tags] | IMIX | 1T1C | STHREAD | PDRDISC | SKIP_PATCH +| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH | | ... | | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev -| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${100000} | search_type=PDR +| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR | tc07-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrdisc | | [Documentation] | | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\ -| | ... | with 2 thread, 2 phy core, 1 receive queue per NIC port. +| | ... | with 2 phy core, 1 receive queue per NIC port. | | ... | [Ver] Find NDR for 64 Byte frames\ -| | ... | using binary search start at 40GE linerate, step 100kpps. +| | ... | using binary search start at 40GE linerate, step 50kpps. | | ... -| | [Tags] | 64B | 2T2C | MTHREAD | NDRDISC +| | [Tags] | 64B | 2C | NDRDISC | | ... | | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev -| | wt=2 | rxq=1 | framesize=${64} | min_rate=${100000} | search_type=NDR +| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR | tc08-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-pdrdisc | | [Documentation] | | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\ -| | ... | with 2 thread, 2 phy core, 1 receive queue per NIC port. +| | ... | with 2 phy core, 1 receive queue per NIC port. | | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\ -| | ... | linerate, step 100kpps and loss tolerance of 0.5%. +| | ... | linerate, step 50kpps and loss tolerance of 0.5%. | | ... -| | [Tags] | 64B | 2T2C | MTHREAD | PDRDISC | SKIP_PATCH +| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH | | ... | | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev -| | wt=2 | rxq=1 | framesize=${64} | min_rate=${100000} | search_type=PDR +| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR