X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=tests%2Fvpp%2Fperf%2Fip4%2F10ge2p1x520-ethip4udp-ip4base-udpsrcscale15-nat44-ndrpdrdisc.robot;h=a3890f100befaff5ca42a8e41283521ae85db597;hp=62bea89f49d49061e325aadb519afebe9c8d73b8;hb=e6bbba641dfe38cf14155aa96576059ade64773c;hpb=2bdb1dc59ba736546a6663cbaf55b6edbcac6eab diff --git a/tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-udpsrcscale15-nat44-ndrpdrdisc.robot b/tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-udpsrcscale15-nat44-ndrpdrdisc.robot index 62bea89f49..a3890f100b 100644 --- a/tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-udpsrcscale15-nat44-ndrpdrdisc.robot +++ b/tests/vpp/perf/ip4/10ge2p1x520-ethip4udp-ip4base-udpsrcscale15-nat44-ndrpdrdisc.robot @@ -19,8 +19,10 @@ | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDRDISC | ... | NIC_Intel-X520-DA2 | ETH | IP4FWD | FEATURE | NAT44 | BASE | ... -| Suite Setup | Set up 3-node performance topology with DUT's NIC model -| ... | L3 | Intel-X520-DA2 +| Suite Setup | Run Keywords +| ... | Set up 3-node performance topology with DUT's NIC model | L3 +| ... | Intel-X520-DA2 +| ... | AND | Set up performance test suite with NAT | Suite Teardown | Tear down 3-node performance topology | ... | Test Setup | Set up performance test @@ -30,18 +32,6 @@ | ... | Documentation | *NAT44 performance test cases* | ... -| ... | *High level description* -| ... -| ... | - NDR and PDR tests -| ... | - 3-node topology, TG-DUT1-DUT2-TG, NAT44 is enabled between DUTs. -| ... | - Cores / threads: 1t1c and 2t2c -| ... | - Framesize: 64B, 1518B, IMIX -| ... | - Packet: ETH / IP(src, dst) / UDP(src_port, dst_port) / payload -| ... | - scale: src: 1 user, 10 users, 100 users, ..., 4000 up to the memory -| ... | limit; 15 ports per user -| ... -| ... | *Low level description* -| ... | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. @@ -68,32 +58,49 @@ # Traffic profile: | ${traffic_profile} | trex-sl-3n-ethip4udp-1u15p -*** Test Cases *** -| tc01-64B-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc -| | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config with 1 thread, 1 phy core,\ -| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ -| | ... | 1 user and 15 ports (sessions) per user. -| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\ -| | ... | linerate, step 100kpps. +*** Keywords *** +| Discover NDR or PDR for IPv4 routing with NAT44 | | ... -| | [Tags] | 64B | 1T1C | STHREAD | NDRDISC +| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type} | | ... -| | ${framesize}= | Set Variable | ${64} -| | ${min_rate}= | Set Variable | ${100000} +| | Set Test Variable | ${framesize} +| | Set Test Variable | ${min_rate} | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize} | | ${binary_min}= | Set Variable | ${min_rate} | | ${binary_max}= | Set Variable | ${max_rate} | | ${threshold}= | Set Variable | ${min_rate} -| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology +| | ${get_framesize}= | Get Frame Size | ${framesize} +| | ... +| | 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 no multi seg to all DUTs +| | And Run Keyword If | ${get_framesize} < ${1522} +| | ... | Add no multi seg to all DUTs | | And Add NAT to all DUTs | | And Apply startup configuration on all VPP DUTs | | When Initialize NAT44 in 3-node circular topology -| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} -| | ... | ${binary_max} | ${traffic_profile} +| | Then Run Keyword If | '${search_type}' == 'NDR' +| | ... | Find NDR using binary search and pps +| | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile} | | ... | ${min_rate} | ${max_rate} | ${threshold} +| | ... | ELSE IF | '${search_type}' == 'PDR' +| | ... | Find PDR using binary search and pps +| | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile} +| | ... | ${min_rate} | ${max_rate} | ${threshold} +| | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type} + +*** Test Cases *** +| tc01-64B-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 1 thread, 1 phy core,\ +| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | 64B | 1T1C | STHREAD | NDRDISC +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR | tc02-64B-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc | | [Documentation] @@ -101,26 +108,12 @@ | | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ | | ... | 1 user and 15 ports (sessions) per user. | | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\ -| | ... | linerate, step 100kpps. +| | ... | linerate, step 50kpps. | | ... | | [Tags] | 64B | 1T1C | STHREAD | PDRDISC | SKIP_PATCH | | ... -| | ${framesize}= | Set Variable | ${64} -| | ${min_rate}= | Set Variable | ${100000} -| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize} -| | ${binary_min}= | Set Variable | ${min_rate} -| | ${binary_max}= | Set Variable | ${max_rate} -| | ${threshold}= | Set Variable | ${min_rate} -| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology -| | And Add PCI devices to DUTs in 3-node single link topology -| | And Add no multi seg to all DUTs -| | And Add NAT to all DUTs -| | And Apply startup configuration on all VPP DUTs -| | When Initialize NAT44 in 3-node circular topology -| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} -| | ... | ${binary_max} | ${traffic_profile} -| | ... | ${min_rate} | ${max_rate} | ${threshold} | ${perf_pdr_loss_acceptance} -| | ... | ${perf_pdr_loss_acceptance_type} +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR | tc03-1518B-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc | | [Documentation] @@ -128,25 +121,12 @@ | | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ | | ... | 1 user and 15 ports (sessions) per user. | | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\ -| | ... | linerate, step 100kpps. +| | ... | linerate, step 50kpps. | | ... | | [Tags] | 1518B | 1T1C | STHREAD | NDRDISC | | ... -| | ${framesize}= | Set Variable | ${1518} -| | ${min_rate}= | Set Variable | ${100000} -| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize} -| | ${binary_min}= | Set Variable | ${min_rate} -| | ${binary_max}= | Set Variable | ${max_rate} -| | ${threshold}= | Set Variable | ${min_rate} -| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology -| | And Add PCI devices to DUTs in 3-node single link topology -| | And Add no multi seg to all DUTs -| | And Add NAT to all DUTs -| | And Apply startup configuration on all VPP DUTs -| | When Initialize NAT44 in 3-node circular topology -| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} -| | ... | ${binary_max} | ${traffic_profile} -| | ... | ${min_rate} | ${max_rate} | ${threshold} +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR | tc04-1518B-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc | | [Documentation] @@ -154,26 +134,12 @@ | | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ | | ... | 1 user and 15 ports (sessions) per user. | | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\ -| | ... | linerate, step 100kpps. +| | ... | linerate, step 50kpps. | | ... | | [Tags] | 1518B | 1T1C | STHREAD | PDRDISC | SKIP_PATCH | | ... -| | ${framesize}= | Set Variable | ${1518} -| | ${min_rate}= | Set Variable | ${100000} -| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize} -| | ${binary_min}= | Set Variable | ${min_rate} -| | ${binary_max}= | Set Variable | ${max_rate} -| | ${threshold}= | Set Variable | ${min_rate} -| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology -| | And Add PCI devices to DUTs in 3-node single link topology -| | And Add no multi seg to all DUTs -| | And Add NAT to all DUTs -| | And Apply startup configuration on all VPP DUTs -| | When Initialize NAT44 in 3-node circular topology -| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} -| | ... | ${binary_max} | ${traffic_profile} -| | ... | ${min_rate} | ${max_rate} | ${threshold} | ${perf_pdr_loss_acceptance} -| | ... | ${perf_pdr_loss_acceptance_type} +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR | tc05-IMIX-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc | | [Documentation] @@ -181,25 +147,12 @@ | | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ | | ... | 1 user and 15 ports (sessions) per user. | | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\ -| | ... | linerate, step 100kpps. +| | ... | linerate, step 50kpps. | | ... | | [Tags] | IMIX | 1T1C | STHREAD | NDRDISC | | ... -| | ${framesize}= | Set Variable | IMIX_v4_1 -| | ${min_rate}= | Set Variable | ${100000} -| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize} -| | ${binary_min}= | Set Variable | ${min_rate} -| | ${binary_max}= | Set Variable | ${max_rate} -| | ${threshold}= | Set Variable | ${min_rate} -| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology -| | And Add PCI devices to DUTs in 3-node single link topology -| | And Add no multi seg to all DUTs -| | And Add NAT to all DUTs -| | And Apply startup configuration on all VPP DUTs -| | When Initialize NAT44 in 3-node circular topology -| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} -| | ... | ${binary_max} | ${traffic_profile} -| | ... | ${min_rate} | ${max_rate} | ${threshold} +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR | tc06-IMIX-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc | | [Documentation] @@ -207,23 +160,165 @@ | | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ | | ... | 1 user and 15 ports (sessions) per user. | | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\ -| | ... | linerate, step 100kpps. +| | ... | linerate, step 50kpps. | | ... | | [Tags] | IMIX | 1T1C | STHREAD | PDRDISC | SKIP_PATCH | | ... -| | ${framesize}= | Set Variable | IMIX_v4_1 -| | ${min_rate}= | Set Variable | ${100000} -| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize} -| | ${binary_min}= | Set Variable | ${min_rate} -| | ${binary_max}= | Set Variable | ${max_rate} -| | ${threshold}= | Set Variable | ${min_rate} -| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology -| | And Add PCI devices to DUTs in 3-node single link topology -| | And Add no multi seg to all DUTs -| | And Add NAT to all DUTs -| | And Apply startup configuration on all VPP DUTs -| | When Initialize NAT44 in 3-node circular topology -| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} -| | ... | ${binary_max} | ${traffic_profile} -| | ... | ${min_rate} | ${max_rate} | ${threshold} | ${perf_pdr_loss_acceptance} -| | ... | ${perf_pdr_loss_acceptance_type} +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR + +| tc07-64B-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 2 threads, 2 phy cores,\ +| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | 64B | 2T2C | MTHREAD | NDRDISC +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR + +| tc08-64B-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 2 threads, 2 phy cores,\ +| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | 64B | 2T2C | MTHREAD | PDRDISC | SKIP_PATCH +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR + +| tc09-1518B-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 2 threads, 2 phy cores,\ +| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | 1518B | 2T2C | MTHREAD | NDRDISC +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR + +| tc10-1518B-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 2 threads, 2 phy cores,\ +| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | 1518B | 2T2C | MTHREAD | PDRDISC | SKIP_PATCH +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR + +| tc11-IMIX-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 2 threads, 2 phy cores,\ +| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | IMIX | 2T2C | MTHREAD | NDRDISC +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR + +| tc12-IMIX-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 2 threads, 2 phy cores,\ +| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | IMIX | 2T2C | MTHREAD | PDRDISC | SKIP_PATCH +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR + +| tc13-64B-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 4 threads, 4 phy cores,\ +| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | 64B | 4T4C | MTHREAD | NDRDISC +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR + +| tc14-64B-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 4 threads, 4 phy cores,\ +| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | 64B | 4T4C | MTHREAD | PDRDISC | SKIP_PATCH +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR + +| tc15-1518B-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 4 threads, 4 phy cores,\ +| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | 1518B | 4T4C | MTHREAD | NDRDISC +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR + +| tc16-1518B-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 4 threads, 4 phy cores,\ +| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | 1518B | 4T4C | MTHREAD | PDRDISC | SKIP_PATCH +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR + +| tc17-IMIX-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 4 threads, 4 phy cores,\ +| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | IMIX | 4T4C | MTHREAD | NDRDISC +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR + +| tc18-IMIX-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 routing config with 4 threads, 4 phy cores,\ +| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\ +| | ... | 1 user and 15 ports (sessions) per user. +| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\ +| | ... | linerate, step 50kpps. +| | ... +| | [Tags] | IMIX | 4T4C | MTHREAD | PDRDISC | SKIP_PATCH +| | ... +| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44 +| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR